Ansariel 2025-05-28 19:39:10 +02:00
commit 524cb336dc
30 changed files with 269 additions and 79 deletions

View File

@ -2314,6 +2314,9 @@ void LLLineEditor::clear()
{
mText.clear();
setCursor(0);
mFontBufferPreSelection.reset();
mFontBufferSelection.reset();
mFontBufferPostSelection.reset();
}
//virtual

View File

@ -1651,19 +1651,7 @@ void LLTextBase::draw()
bg_rect.intersectWith( text_rect );
gl_rect_2d( text_rect, bg_color, true );
// <FS> Additionally set the font color of highlighted text instead of using LabelTextColor
const LLColor4& font_color = ll::ui::SearchableControl::getHighlightFontColor();
setColor(font_color);
// </FS>
}
// <FS> Set the font color back to LabelTextColor if not highlighted
else
{
const LLColor4& font_color = LLUIColorTable::instance().getColor("LabelTextColor");
setColor(font_color);
}
// </FS>
bool should_clip = mClip || mScroller != NULL;
// <FS:Zi> Fix text bleeding at top edge of scrolling text editors

View File

@ -737,7 +737,6 @@ void FSPanelFace::onMatTabChange()
if(objectp)
{
last_mat = curr_mat;
gSavedSettings.setBOOL("FSShowSelectedInBlinnPhong", (curr_mat == MATMEDIA_MATERIAL));
// Iterate through the linkset and mark each object for update
for (LLObjectSelection::iterator iter = LLSelectMgr::getInstance()->getSelection()->begin();
iter != LLSelectMgr::getInstance()->getSelection()->end(); ++iter)
@ -760,6 +759,7 @@ void FSPanelFace::onMatTabChange()
// Since we allow both PBR and BP textures to be applied at the same time,
// we need to hide or show the GLTF material only locally based on the current tab.
gSavedSettings.setBOOL("FSShowSelectedInBlinnPhong", (curr_mat == MATMEDIA_MATERIAL));
if (curr_mat != MATMEDIA_PBR)
LLSelectMgr::getInstance()->hideGLTFMaterial();
else

View File

@ -234,17 +234,25 @@ LLSLURL::LLSLURL(const std::string& slurl)
}
else
{
LL_DEBUGS("SLURL") << "secondlife://<region>" << LL_ENDL;
// it wasn't a /secondlife/<region> or /app/<params>, so it must be secondlife://<region>
// therefore the hostname will be the region name, and it's a location type
mType = LOCATION;
if (slurl_uri.hostName() == LLSLURL::SLURL_APP_PATH)
{
LL_DEBUGS("SLURL") << "hostname is an app path" << LL_ENDL;
mType = APP;
}
else
{
LL_DEBUGS("SLURL") << "secondlife://<region>" << LL_ENDL;
// it wasn't a /secondlife/<region> or /app/<params>, so it must be secondlife://<region>
// therefore the hostname will be the region name, and it's a location type
mType = LOCATION;
//AW: use current grid for compatibility
//with viewer 1 slurls.
mGrid = LLGridManager::getInstance()->getGrid();
// AW: use current grid for compatibility
// with viewer 1 slurls.
mGrid = LLGridManager::getInstance()->getGrid();
// 'normalize' it so the region name is in fact the head of the path_array
path_array.insert(0, slurl_uri.hostNameAndPort());
// 'normalize' it so the region name is in fact the head of the path_array
path_array.insert(0, slurl_uri.hostNameAndPort());
}
}
}
else if((slurl_uri.scheme() == LLSLURL::SLURL_HTTP_SCHEME)

View File

@ -8014,7 +8014,7 @@ bool LLSelectMgr::canSelectObject(LLViewerObject* object, bool ignore_select_own
{
return false;
}
// </FS:Ansariel>// Can't select objects that are not owned by you or group
// </FS:Ansariel>
}
// Can't select orphans

View File

@ -7762,6 +7762,16 @@ void LLViewerObject::setRenderMaterialID(S32 te_in, const LLUUID& id, bool updat
start_idx = llmax(start_idx, 0);
end_idx = llmin(end_idx, (S32) getNumTEs());
// <FS> [FIRE-35138] If we are hiding the GLTF material, call the function again but with a null material id
static LLCachedControl<bool> showSelectedinBP(gSavedSettings, "FSShowSelectedInBlinnPhong");
bool hiding_gltf_material = showSelectedinBP && isSelected();
if (hiding_gltf_material && id.notNull())
{
setRenderMaterialID(te_in, LLUUID::null, update_server, local_origin);
return;
}
// </FS>
LLRenderMaterialParams* param_block = (LLRenderMaterialParams*)getParameterEntry(LLNetworkData::PARAMS_RENDER_MATERIAL);
if (!param_block && id.notNull())
{ // block doesn't exist, but it will need to
@ -7798,43 +7808,53 @@ void LLViewerObject::setRenderMaterialID(S32 te_in, const LLUUID& id, bool updat
}
}
if (update_server || material_changed)
{
tep->setGLTFRenderMaterial(nullptr);
}
if (new_material != tep->getGLTFMaterial())
{
tep->setGLTFMaterial(new_material, !update_server);
}
if (material_changed && new_material)
{
// Sometimes, the material may change out from underneath the overrides.
// This is usually due to the server sending a new material ID, but
// the overrides have not changed due to being only texture
// transforms. Re-apply the overrides to the render material here,
// if present.
const LLGLTFMaterial* override_material = tep->getGLTFMaterialOverride();
if (override_material)
// <FS> [FIRE-35138] Only set GLTF material if not hiding it
if (!hiding_gltf_material)
{ // </FS>
if (update_server || material_changed)
{
new_material->onMaterialComplete([obj_id = getID(), te]()
{
LLViewerObject* obj = gObjectList.findObject(obj_id);
if (!obj) { return; }
LLTextureEntry* tep = obj->getTE(te);
if (!tep) { return; }
const LLGLTFMaterial* new_material = tep->getGLTFMaterial();
if (!new_material) { return; }
const LLGLTFMaterial* override_material = tep->getGLTFMaterialOverride();
if (!override_material) { return; }
LLGLTFMaterial* render_material = new LLFetchedGLTFMaterial();
*render_material = *new_material;
render_material->applyOverride(*override_material);
tep->setGLTFRenderMaterial(render_material);
});
tep->setGLTFRenderMaterial(nullptr);
}
}
if (new_material != tep->getGLTFMaterial())
{
tep->setGLTFMaterial(new_material, !update_server);
}
if (material_changed && new_material)
{
// Sometimes, the material may change out from underneath the overrides.
// This is usually due to the server sending a new material ID, but
// the overrides have not changed due to being only texture
// transforms. Re-apply the overrides to the render material here,
// if present.
const LLGLTFMaterial* override_material = tep->getGLTFMaterialOverride();
if (override_material)
{
new_material->onMaterialComplete([obj_id = getID(), te]()
{
LLViewerObject* obj = gObjectList.findObject(obj_id);
if (!obj) { return; }
LLTextureEntry* tep = obj->getTE(te);
if (!tep) { return; }
const LLGLTFMaterial* new_material = tep->getGLTFMaterial();
if (!new_material) { return; }
const LLGLTFMaterial* override_material = tep->getGLTFMaterialOverride();
if (!override_material) { return; }
LLGLTFMaterial* render_material = new LLFetchedGLTFMaterial();
*render_material = *new_material;
render_material->applyOverride(*override_material);
tep->setGLTFRenderMaterial(render_material);
});
}
}
// <FS> [FIRE-35138] Update the saved GLTF material since we got an update
if (material_changed)
{
updateSavedGLTFMaterial(te);
}
} // </FS>
}
// signal to render pipe that render batches must be rebuilt for this object
@ -7913,6 +7933,28 @@ void LLViewerObject::saveGLTFMaterials()
}
}
void LLViewerObject::updateSavedGLTFMaterial(S32 te)
{
if (te >= mSavedGLTFMaterialIds.size())
{
// Nothing is saved, so don't need to update anything
return;
}
mSavedGLTFMaterialIds[te] = getRenderMaterialID(te);
LLPointer<LLGLTFMaterial> old_override = getTE(te)->getGLTFMaterialOverride();
if (old_override.notNull())
{
LLGLTFMaterial* copy = new LLGLTFMaterial(*old_override);
mSavedGLTFOverrideMaterials[te] = copy;
}
else
{
mSavedGLTFOverrideMaterials[te] = nullptr;
}
}
void LLViewerObject::clearSavedGLTFMaterials()
{
mSavedGLTFMaterialIds.clear();

View File

@ -214,6 +214,7 @@ public:
const uuid_vec_t& getSavedGLTFMaterialIds() const { return mSavedGLTFMaterialIds; };
const gltf_materials_vec_t& getSavedGLTFOverrideMaterials() const { return mSavedGLTFOverrideMaterials; };
void saveGLTFMaterials();
void updateSavedGLTFMaterial(S32 te);
void clearSavedGLTFMaterials();
// </FS>

View File

@ -42,6 +42,7 @@
<check_box name="filter_perm_copy" label="Copiables"/>
<check_box name="filter_perm_modify" label="Modifiables"/>
<check_box name="filter_perm_transfer" label="Transférables"/>
<check_box name="filter_reflection_probe" label="Sondes de réflexion" tool_tip="Inclut uniquement les sondes manuelles, pas les sondes automatiques. Inclut les sondes à miroir uniquement si les miroirs sont activés dans les préférences graphiques. Si la couverture des reflets est définie sur « aucune » ou si la sonde n'est pas appliquée, il se peut que les objets ne soient pas identifiés."/>
<check_box name="filter_for_sale" label="Prix de vente entre" width="130"/>
<text name="and">et</text>
<text name="mouse_text" width="120">Action du clic :</text>
@ -63,6 +64,7 @@
<check_box name="exclude_attachment" label="Portés"/>
<check_box name="exclude_physical" label="Physiques"/>
<check_box name="exclude_temporary" label="Temporaires"/>
<check_box name="exclude_reflection_probes" label="Sondes de réflexion"/>
<check_box name="exclude_childprim" label="Prims enfant"/>
<check_box name="exclude_neighbor_region" label="Régions voisines"/>
<button name="apply" label="Appliquer"/>

View File

@ -25,6 +25,7 @@
</combo_box>
<slider name="manual_environment_change_transition_period" label="Durée de transition de l'environnement :" tool_tip="Intervalle de transition en secondes entre des environnements. Zéro veut dire instantané."/>
<check_box name="EnvironmentPersistAcrossLogin" label="Persistance des réglages d'environnement entre deux sessions" tool_tip="Reprend les réglages actuels d'environnement lors de la prochaine connexion."/>
<check_box name="FSRepeatedEnvTogglesShared" label="La répétition des raccourcis clavier de l'environnement rétablit l'environnement partagé" tool_tip="Permet à des combinaisons de touches répétées (par exemple ctrl+shift+y) d'alterner entre le préréglage demandé &amp; l'environnement partagé"/>
</panel>
<panel label="Protection" name="ProtectionTab">
<check_box label="Empêcher de s'asseoir sur les objets par clic simple" name="FSBlockClickSit"/>

View File

@ -62,6 +62,7 @@
<check_box name="filter_perm_copy" label="コピー"/>
<check_box name="filter_perm_modify" label="修正"/>
<check_box name="filter_perm_transfer" label="再販・譲渡"/>
<check_box name="filter_reflection_probe" label="反射プローブ" tool_tip="自動プローブは含まれず、手動プローブのみが含まれます。グラフィック設定でミラーが有効になっている場合のみ、ミラープローブが含まれます。反射範囲が「なし」に設定されている場合、またはプローブがベイクされていない場合は、オブジェクトが識別されない可能性があります。"/>
<check_box name="filter_for_sale" label="次の価格帯で販売"/>
<text name="and">
@ -92,6 +93,7 @@
<check_box name="exclude_attachment" label="装着物"/>
<check_box name="exclude_physical" label="物理"/>
<check_box name="exclude_temporary" label="一時的"/>
<check_box name="exclude_reflection_probes" label="反射プローブ"/>
<check_box name="exclude_childprim" label="子プリム"/>
<check_box name="exclude_neighbor_region" label="隣接するリージョン"/>
<button name="apply" label="適用"/>

View File

@ -132,7 +132,9 @@
強度:
</text>
<button label="適用" label_selected="適用" name="button apply to selection" tool_tip="選択した土地を修正します。"/>
<text name="link_num_obj_count" tool_tip="このリンク数は正確でない可能性があります。" />
<text name="link_num_obj_count" tool_tip="このリンク数は正確でない可能性があります。">
[DESC] [NUM]
</text>
<text name="selection_empty">
選択されていません。
</text>

View File

@ -98,6 +98,7 @@
<menu_item_check label="会話" name="Conversations"/>
<menu_item_check label="ジェスチャー" name="Gestures"/>
<menu_item_call label="Flickr…" name="Flickr"/>
<menu_item_call label="Primfeed…" name="Primfeed"/>
<menu_item_call label="Discord…" name="Discord"/>
<menu_item_check label="会話ログ…" name="Conversation Log..."/>
<menu_item_check label="近くのボイス" name="Nearby Voice"/>

View File

@ -26,9 +26,9 @@
<check_box label="デフォルトのBentoアニメーション" name="play_default_bento_idle_animation_toggle" tool_tip="ここにチェックを入れると、デフォルトのプライオリティ0の Bento アニメーションを再生し、他の Bento アニメーションが動作していない時に、手、羽根、口、尻尾などの動きを停止、自然な状態にします。"/>
<check_box label="ログイン画面を表示しない" name="login_screen_toggle" tool_tip="ログイン進行中に表示される黒いログイン画面を表示しないようにします。"/>
<check_box label="ログアウト画面を表示しない" name="logout_screen_toggle" tool_tip="ログアウト進行中に表示される黒いログアウト画面を表示しないようにします。"/>
<!--
<!--
<check_box label="表示名が表示されている場合でも、ユーザ名でコンタクトリストを並べ替える" name="sortcontactsbyun" tool_tip="ここにチェックを入れると、コンタクトリストは全てユーザ名で並べ替わるようになります。"/>
-->
-->
<check_box label="プログレッシブ距離別段階描画を有効にする" name="FSRenderFarClipStepping" tool_tip="チェックを入れると、テレポートしたあとに描画距離に応じて段階的に描画することができます。"/>
<slider name="progressive_draw_distance_interval" tool_tip="次の描画距離のものを描画するまでの秒数です。"/>
<check_box name="UseLSLBridge" label="LSLクライアントブリッジを使用" tool_tip="スクリプトの入った装着物(ブリッジ)を利用して、ビューアの機能を拡張できるようにします。"/>
@ -41,6 +41,7 @@
</combo_box>
<slider name="manual_environment_change_transition_period" label="環境遷移時間:" tool_tip="手動で環境を変更した場合に、現在の設定から変化していく時間を秒単位で設定します。0にすると瞬時に切り替わるようになります。"/>
<check_box name="EnvironmentPersistAcrossLogin" label="セッションを越えて環境設定を保持" tool_tip="次回ログイン時にも現在の環境設定を保持するようにします。"/>
<check_box name="FSRepeatedEnvTogglesShared" label="環境キーバインドを繰り返し使用したときに共有環境に戻す" tool_tip="キーバインドCtrlShiftyを繰り返して要求されたプリセットと共有環境を交互に切り替えます。"/>
</panel>
<!-- Protection -->
<panel label="保護" name="ProtectionTab">

View File

@ -28,8 +28,8 @@
説明:
</text>
<check_box label="場所を含める" name="add_location_cb"/>
<check_box label="パブリックギャラリーに追加しますか?" name="primfeed_add_to_public_gallery"/>
<check_box label="商用コンテンツですか?" name="primfeed_commercial_content"/>
<check_box label="パブリックギャラリーに追加" name="primfeed_add_to_public_gallery"/>
<check_box label="商用コンテンツ" name="primfeed_commercial_content"/>
<combo_box name="rating_combobox" tool_tip="Primfeedのコンテンツレーティングを指定します。"/>
<check_box label="投稿後にブラウザを開きますか?" tool_tip="投稿後、Primfeedの投稿がWebブラウザで自動的に開きます。" name="primfeed_open_url_on_post"/>
<button label="シェア" name="post_photo_btn"/>

View File

@ -62,7 +62,7 @@
<check_box name="filter_perm_copy" label="Kopiowalne"/>
<check_box name="filter_perm_modify" label="Modyfikowalne"/>
<check_box name="filter_perm_transfer" label="Transferowalne"/>
<check_box name="filter_reflection_probe" label="Sondy refleksyjne" tool_tip="Obejmuje tylko sondy ręczne, nie sondy automatyczne. Obejmuje tylko sondy lustrzane, jeśli lustra są włączone w preferencjach graficznych. Jeśli zasięg odbić jest ustawiony na 'brak' lub sonda nie jest załadowana, to obiekty mogą nie zostać zidentyfikowane." />
<check_box name="filter_reflection_probe" label="Sondami refleks." tool_tip="Obejmuje tylko sondy ręczne, nie sondy automatyczne. Obejmuje tylko sondy lustrzane, jeśli lustra są włączone w preferencjach graficznych. Jeśli zasięg odbić jest ustawiony na 'brak' lub sonda nie jest załadowana, to obiekty mogą nie zostać zidentyfikowane." />
<check_box name="filter_for_sale" label="Do kupienia między" width="135"/>
<text name="and" width="30">
oraz
@ -92,7 +92,7 @@
<check_box name="exclude_attachment" label="Dodatkami"/>
<check_box name="exclude_physical" label="Fizyczne"/>
<check_box name="exclude_temporary" label="Tymczasowe"/>
<check_box name="exclude_reflection_probes" label="Sondy refleksyjne" />
<check_box name="exclude_reflection_probes" label="Sondami refleks." />
<check_box name="exclude_childprim" label="Primami podrzędnymi / potomkami primy głównej"/>
<check_box name="exclude_neighbor_region" label="W sąsiadujących regionach"/>
<button name="apply" label="Zastosuj"/>

View File

@ -36,6 +36,7 @@
</combo_box>
<slider name="manual_environment_change_transition_period" label="Czas przejścia otoczenia:" tool_tip="Interwał w sekundach, w czasie którego ręczne zmiany środowiska będą zachodzić. Zero oznacza natychmiast." />
<check_box name="EnvironmentPersistAcrossLogin" label="Trzymaj ustawienia otoczenia pomiędzy sesjami" tool_tip="Przywraca aktualne ustawienia otoczenia po następnym zalogowaniu." />
<check_box name="FSRepeatedEnvTogglesShared" label="Skróty klawiszowe zmiany otoczenia przy powtarzaniu przełączają na otoczenie współdzielone" tool_tip="Sprawia, że powielone używanie skrótów klawiszowych (np. ctrl+shift+y) przełącza między wybranym wstępnie zapisanym otoczeniem, a otoczeniem współdzielonym." />
</panel>
<panel label="Ochrona" name="ProtectionTab">
<check_box label="Blokuj siadanie na obiektach przez kliknięcie lewym przyciskiem myszy" name="FSBlockClickSit" />

View File

@ -46,6 +46,7 @@
<check_box name="filter_perm_copy" label="Копируются" width="120"/>
<check_box name="filter_perm_modify" label="Изменяются" width="125"/>
<check_box name="filter_perm_transfer" label="Передаются" width="125"/>
<check_box name="filter_reflection_probe" label="Датчики отражения" tool_tip="Включает только ручные датчики, но не автоматические. Включает только датчики отражений, если в графических настройках включены зеркала. Если для параметра 'покрытие отражением' установлено значение 'нет' или датчик не обработан, объекты могут быть не идентифицированы."/>
<check_box name="filter_for_sale" label="Продаются" width="120"/>
<text name="and"> и</text>
<text name="mouse_text">Кликабельные</text>
@ -68,6 +69,7 @@
<check_box name="exclude_attachment" label="Присоединенные"/>
<check_box name="exclude_physical" label="Физические"/>
<check_box name="exclude_temporary" label="Временные"/>
<check_box name="exclude_reflection_probes" label="Датчики отражения"/>
<check_box name="exclude_childprim" label="Соединенные"/>
<check_box name="exclude_neighbor_region" label="Соседний Регион"/>
<button name="apply" label="Принять"/>
@ -88,6 +90,7 @@
<panel label="Расширенное" name="area_search_advanced_panel">
<check_box name="double_click_touch" label="Двойной клик Коснуться объект"/>
<check_box name="double_click_buy" label="Двойной клик Купить объект"/>
<check_box name="double_click_sit" label="Двойной клик Сесть на объект"/>
</panel>
</tab_container>
</floater>

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<floater name="floater_primfeed" title="Поделиться на Primfeed">
<panel name="background">
<tab_container name="tabs">
<panel label="Фото" name="panel_primfeed_photo"/>
<panel label="Аккаунт" name="panel_primfeed_account"/>
</tab_container>
<panel name="connection_status_panel">
<text name="connection_error_text">Ошибка</text>
<text name="connection_loading_text">Загрузка...</text>
</panel>
</panel>
</floater>

View File

@ -706,6 +706,8 @@
<menu_item_check label="HTTP Текстуры" name="HTTP Textures"/>
<menu_item_call label="Сжатие изображений" name="Compress Images"/>
<menu_item_call label="Проверка сжатия файла" name="Compress File Test"/>
<menu_item_call label="Primfeed тест авторизации" name="primfeed_auth_test"/>
<menu_item_call label="Primfeed сброс авторизации" name="primfeed_auth_clear"/>
<menu_item_call label="Включить Visual Leak Detector" name="Enable Visual Leak Detector"/>
<menu_item_check label="Вывод минидампа при отладке" name="Output Debug Minidump"/>
<menu_item_check label="Окно консоли при следующем запуске" name="Console Window"/>

View File

@ -5331,6 +5331,12 @@ https://wiki.firestormviewer.org/fs_voice
<notification name="ExodusFlickrUploadComplete">
Ваш снимок теперь может быть просмотрен [https://www.flickr.com/photos/me/[ID] тут].
</notification>
<notification name="ExodusFlickrUploadComplete">
Ваш снимок теперь можно просмотреть [https://www.flickr.com/photos/me/[ID] здесь].
</notification>
<notification name="FSPrimfeedUploadComplete">
Ваш пост Primfeed теперь можно просмотреть [[PF_POSTURL] здесь].
</notification>
<notification name="RegionTrackerAdd">
Какую бы метку вы хотели использовать
для региона &quot;[REGION]&quot;?
@ -5635,4 +5641,26 @@ https://wiki.firestormviewer.org/antivirus_whitelisting
<usetemplate name="okcancelbuttons" notext="Отмена" yestext="Да"/>
</notification>
<notification name="PrimfeedLoginRequestFailed">
Запрос на вход отклонен Primfeed.
</notification>
<notification name="PrimfeedAuthorizationFailed">
Primfeed авторизация не удалась. Последовательность авторизации не была завершена.
</notification>
<notification name="PrimfeedAuthorizationAlreadyInProgress">
Авторизация Primfeed уже выполняется. Пожалуйста, завершите авторизацию Primfeed в вашем веб-браузере, прежде чем повторить попытку.
</notification>
<notification name="PrimfeedAuthorizationSuccessful">
Авторизация Primfeed завершена. Теперь вы можете публиковать изображения в Primfeed.
</notification>
<notification name="PrimfeedValidateFailed">
Проверка пользователя Primfeed не удалась. Primfeed не распознал эту учетную запись, или вход не удался.
</notification>
<notification name="PrimfeedAlreadyAuthorized">
Вы уже связали эту учетную запись с Primfeed. Используйте кнопку сброса, если хотите начать заново.
</notification>
<notification name="PrimfeedUserStatusFailed">
Вход пользователя Primfeed успешен, но проверки статуса не пройдены. Проверьте, работает ли Primfeed.
</notification>
</notifications>

View File

@ -37,6 +37,7 @@
<slider name="manual_environment_change_transition_period" label="Время изменения окружающей среды:"
tool_tip="Интервал в секундах, в течение которого будет изменяться окружающая среда при ручной настройке. Ноль - мгновенно."/>
<check_box name="EnvironmentPersistAcrossLogin" label="Сохранять настройки среды во время сеансов" tool_tip="Восстанавливает текущие настройки среды после следующего входа в систему."/>
<check_box name="FSRepeatedEnvTogglesShared" label="Повторяющиеся сочетания клавиш среды возвращают к общей среде" tool_tip="Приводит к чередованию повторяющихся сочетаний клавиш (например, ctrl+shift+y) между запрошенной предустановкой и общей средой"/>
</panel>
<panel label="Защита" name="ProtectionTab">
<check_box label="Блокировка нажатия левой кнопкой мыши, чтобы сесть на объекты" name="FSBlockClickSit" />

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<panel name="panel_primfeed_account">
<string name="primfeed_connected" value="Вы подключены к Primfeed как:"/>
<string name="primfeed_disconnected" value="Не подключен к Primfeed"/>
<string name="primfeed_plan_unknown" value="Неизвестный" />
<text name="connected_as_label">Не подключен к Primfeed.</text>
<text name="primfeed_account_plan_label">Тип аккаунта:</text>
<panel name="panel_buttons">
<button label="Подключить..." name="connect_btn"/>
<button label="Отключить" name="disconnect_btn"/>
</panel>
</panel>

View File

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<panel name="panel_primfeed_photo">
<combo_box name="resolution_combobox" tool_tip="Разрешение изображения">
<combo_box.item label="Текущее окно" name="CurrentWindow"/>
<combo_box.item label="Произвольный" name="Custom"/>
</combo_box>
<combo_box name="filters_combobox" tool_tip="Фильтры изображений">
<combo_box.item label="Без фильтра" name="NoFilter"/>
</combo_box>
<check_box label="Сохранять соотношение сторон" name="keep_aspect_ratio"/>
<text name="working_lbl">Обновляется...</text>
<check_box label="Показать кадр захвата" tool_tip="Показать на экране рамку, которая окружает области снимка. Части сцены, находящиеся за пределами снимка, будут лишены насыщенности и слегка размыты." name="show_frame"/>
<check_box label="Направляющие кадрирования" tool_tip="Показать направляющую кадрирования (правило третей) внутри рамки снимка." name="show_guides" />
<button label="Обновить" name="new_snapshot_btn" tool_tip="Нажмите, чтобы обновить"/>
<button label="Просмотр" name="big_preview_btn" tool_tip="Нажмите, чтобы переключить предварительный просмотр"/>
<text name="description_label">Описание:</text>
<check_box label="Включить местоположение" name="add_location_cb"/>
<check_box label="Добавить в публичную галерею" name="primfeed_add_to_public_gallery"/>
<check_box label="Коммерческий контент" name="primfeed_commercial_content"/>
<combo_box name="rating_combobox" tool_tip="Primfeed content rating">
<combo_box.item label="Общий" name="GeneralRating"/>
<combo_box.item label="Умереный" name="ModerateRating"/>
<combo_box.item label="Взрослый" name="AdultRating"/>
<combo_box.item label="Взрослый+" name="AdultPlusRating"/>
</combo_box>
<check_box label="Открыть в браузере после публикации" tool_tip="Автоматически открывать публикацию Primfeed в вашем веб-браузере после публикации." name="primfeed_open_url_on_post"/>
<button label="Поделиться" name="post_photo_btn"/>
<button label="Отмена" name="cancel_photo_btn"/>
</panel>

View File

@ -19,6 +19,9 @@
<layout_panel name="lp_flickr">
<button label="Загрузить на Flickr" name="send_to_flickr_btn"/>
</layout_panel>
<layout_panel name="lp_primfeed">
<button label="Поделиться на Primfeed" name="send_to_primfeed_btn"/>
</layout_panel>
<layout_panel name="lp_email">
<button label="Отправить по E-mail" name="save_to_email_btn"/>
</layout_panel>
@ -26,4 +29,4 @@
<text name="fee_hint_lbl" width="200">
Плата зависит от вашего уровня подписки. На более высоких уровнях взимаются более низкие сборы.
</text>
</panel>
</panel>

View File

@ -399,9 +399,8 @@ support@secondlife.com.
<string name="TestingDisconnect">
Тестирование отключения клиента
</string>
<string name="SocialFlickrConnecting">
Соединение с Flickr...
Подключение к Flickr...
</string>
<string name="SocialFlickrPosting">
Публикация...
@ -410,15 +409,26 @@ support@secondlife.com.
Отключение от Flickr...
</string>
<string name="SocialFlickrErrorConnecting">
Невозможно соедениться с Flickr
Проблема с подключением к Flickr
</string>
<string name="SocialFlickrErrorPosting">
Невозможно опубликовать в Flickr
Проблема с публикацией на Flickr
</string>
<string name="SocialFlickrErrorDisconnecting">
Невозможно отключиться от Flickr
Проблема с отключением от Flickr
</string>
<string name="SocialPrimfeedConnecting">
Подключение к Primfeed...
</string>
<string name="SocialPrimfeedNotAuthorized">
Не разрешено...
</string>
<string name="SocialPrimfeedPosting">
Публикация...
</string>
<string name="SocialPrimfeedErrorPosting">
Проблема с публикацией на Primfeed
</string>
<string name="BlackAndWhite">
Черное и Белое
</string>
@ -5752,6 +5762,9 @@ https://www.firestormviewer.org/support за помощь в решении эт
<string name="Command_Poser_Tooltip">
Позы вашего аватара или анимированного объекта
</string>
<string name="Command_Primfeed_Tooltip">
Публикуйте сообщения прямо в своей учетной записи Primfeed.
</string>
<string name="Command_360_Capture_Tooltip">
Создание равнопрямоугольного изображения в формате 360°
</string>

View File

@ -62,6 +62,7 @@
<check_box name="filter_perm_copy" label="可複製" />
<check_box name="filter_perm_modify" label="可修改" />
<check_box name="filter_perm_transfer" label="可轉讓" />
<check_box name="filter_reflection_probe" label="反射探針" tool_tip="僅包含手動探針,不包括自動探針。僅在顯示設置中啟用鏡面時才包含鏡面探針。如果反射範圍設置為“無”或者探針未烘焙,則可能無法識別物件。"/>
<check_box name="filter_for_sale" label="出售價格介於" />
<text name="and">
@ -92,6 +93,7 @@
<check_box name="exclude_attachment" label="附件" />
<check_box name="exclude_physical" label="物理" />
<check_box name="exclude_temporary" label="臨時" />
<check_box name="exclude_reflection_probes" label="反射探針"/>
<check_box name="exclude_childprim" label="子元素" />
<check_box name="exclude_neighbor_region" label="鄰近地塊" />
<button name="apply" label="應用" />

View File

@ -49,7 +49,7 @@
<check_box label="启用透明水面" name="TransparentWater" tool_tip="将水面彩現为透明。禁用后,水面将以不透明的简单纹理彩現。"/>
<check_box label="启用屏幕空间反射" name="ScreenSpaceReflections" tool_tip="启用基于屏幕当前视图的反射。为相机视野内的物体提供逼真的反射效果,但可能会遗漏屏幕外的细节。根据场景复杂性,可能影响性能。"/>
<check_box label="启用镜面反射" name="Mirrors" tool_tip="启用实时镜面反射。准确反射环境,包括物件和化身,但由于额外的彩現负载,可能显著影响性能。"/>
<check_box label="启用反射探选择" name="checkbox select probes" tool_tip="启用后可在场景中选择并检查反射探。"/>
<check_box label="启用反射探选择" name="checkbox select probes" tool_tip="启用后可在场景中选择并检查反射探。"/>
</panel>
<panel name="P_R_Res_2">
<text name="ReflectionDetailText" tool_tip="决定反射细节级别。“仅静态”仅反射静止物件,更高设置包含动态物件和实时反射。">
@ -81,8 +81,8 @@
<combo_box.item label="高" name="1"/>
<combo_box.item label="极致" name="0"/>
</combo_box>
<text name="Probe_Resolution" tool_tip="定义反射探的解析度。高解析度提供更详细反射但需重启生效。高于128的设置会显著增加显存占用。">
解析度(需重启)
<text name="Probe_Resolution" tool_tip="定义反射探的解析度。高解析度提供更详细反射但需重启生效。高于128的设置会显著增加显存占用。">
解析度(需重启)
</text>
</panel>
<panel name="P_R_Res_3">

View File

@ -25,7 +25,8 @@
<combo_box.item label="飛行輔助:極端增壓" name="flight_extreme" />
</combo_box>
<slider name="manual_environment_change_transition_period" label="環境過渡時長:" tool_tip="在環境之間的轉換間隔時間以秒為單位。0 表示瞬時。" />
<check_box name="EnvironmentPersistAcrossLogin" label="在對談之間保持環境設定" tool_tip="在下次登入時保留當前的環境設定。" />
<check_box name="EnvironmentPersistAcrossLogin" label="在每次登入時保持環境設定" tool_tip="在下次登入時保留當前的環境設定。" />
<check_box name="FSRepeatedEnvTogglesShared" label="環境設定快捷鍵為開關式" tool_tip="重複按下快捷鍵可在想要的環境設定和共享環境之間切換。"/>
</panel>
<panel label="保護" name="ProtectionTab">
<check_box label="阻止通過簡單點擊坐在物件上" name="FSBlockClickSit" />

View File

@ -95,13 +95,28 @@
follows="left|right|top"
layout="topleft" />
<!-- [AS:chanayane] Preview button -->
<button
name="btn_preview"
tool_tip="Toggle preview of your pick description"
top_pad="-42"
left="290"
height="20"
width="20"
follows="top|right"
layout="topleft"
image_overlay="Profile_Group_Visibility_On"
is_toggle="true"
enabled="false"
visible="false"/>
<text_editor
name="pick_desc"
trusted_content="false"
always_show_icons="true"
enabled="false"
left_delta="2"
top_pad="5"
left_delta="-288"
top_pad="27"
height="100"
right="-2"
follows="all"
@ -112,6 +127,7 @@
max_length="1023"
v_pad="3"
word_wrap="true" />
<!-- [/AS:chanayane] -->
<line_editor
name="pick_location"

View File

@ -595,8 +595,22 @@
layout="topleft"
halign="right" />
<!-- [AS:chanayane] Preview button -->
<button
name="btn_preview"
tool_tip="Toggle preview of your profile 'about' section"
top_delta="20"
left="35"
height="20"
width="20"
follows="left|top"
layout="topleft"
image_overlay="Profile_Group_Visibility_On"
is_toggle="true"
enabled="false"
visible="false"/>
<view_border
top_delta="-4"
top_delta="-24"
left="59"
right="-5"
height="103"
@ -604,6 +618,7 @@
follows="all"
name="info_border_sl_description_edit"
bevel_style="in" />
<!-- [/AS:chanayane] -->
<text_editor
name="sl_description_edit"