Merge Firestorm LGPL

meow-7.2.2
Ansariel 2019-06-20 09:48:19 +02:00
commit 9337241cc7
19 changed files with 263 additions and 63 deletions

View File

@ -1027,6 +1027,17 @@
<key>Value</key>
<integer>0</integer>
</map>
<key>FSSupportGroupChatPrefixTesting</key>
<map>
<key>Comment</key>
<string>Adds (W 56789f* os) to testing group chat</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>
<string>Boolean</string>
<key>Value</key>
<integer>0</integer>
</map>
<key>AutoCloseOOC</key>
<map>
<key>Comment</key>
@ -15275,7 +15286,7 @@ Change of this parameter will affect the layout of buttons in notification toast
<integer>0</integer>
</array>
<key>SanityComment</key>
<string>This might cause textures to look blurry and sculpties might fail to load properly.</string>
<string>This might cause textures to look blurry and sculpties might fail to load properly. Please see &quot;Prefrences -&gt; Graphics -&gt; Rendering -&gt; Max Texture Quality Level&quot; to change.</string>
<key>Backup</key>
<integer>0</integer>
</map>
@ -23787,17 +23798,6 @@ Change of this parameter will affect the layout of buttons in notification toast
<key>Value</key>
<integer>1</integer>
</map>
<key>FSPurgeInventoryCacheOnStartup</key>
<map>
<key>Comment</key>
<string>Clear the inventory cache of the specific agent (ID) at next startup</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>
<string>String</string>
<key>Value</key>
<string/>
</map>
<key>FSSoundCacheLocation</key>
<map>
<key>Comment</key>

View File

@ -263,7 +263,7 @@ void downloadCompleteScript(LLSD const &aData, std::string const &aURL, std::str
LL_WARNS("fsdata") << "Could not read the script library data from "<< aURL << LL_ENDL;
return;
}
LLAPRFile outfile ;
outfile.open(aFilename, LL_APR_WB);
if (!outfile.getFileHandle())
@ -366,7 +366,7 @@ void FSData::downloadAgents()
// TODO: Let the opensim devs and opensim group figure out the best way
// to add "agents.xml" URL to the gridinfo protocol.
//getAgentsURL();
// there is no need for assets.xml URL for opensim grids as the grid owner can just delete
// the bad asset itself.
}
@ -376,7 +376,7 @@ void FSData::downloadAgents()
mAgentsURL = mBaseURL + "/" + "agents.xml";
mAssetsURL = mBaseURL + "/" + "assets.xml";
}
if (!mAgentsURL.empty())
{
mAgentsFilename = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, filename_prefix + "_agents.xml");
@ -424,7 +424,7 @@ void FSData::processData(const LLSD& fs_data)
LLSD::array_const_iterator iter = mRandomMOTDs.beginArray();
gAgent.mMOTD.assign((iter + (ll_rand((S32)mRandomMOTDs.size())))->asString());
}
// If the event falls withen the current date, use that for MOTD instead.
if (fs_data.has("EventsMOTD"))
{
@ -521,7 +521,7 @@ void FSData::processAgents(const LLSD& data)
if (data.has("Agents"))
{
const LLSD& agents = data["Agents"];
for(LLSD::map_const_iterator iter = agents.beginMap(); iter != agents.endMap(); ++iter)
for (LLSD::map_const_iterator iter = agents.beginMap(); iter != agents.endMap(); ++iter)
{
LLUUID key = LLUUID(iter->first);
mSupportAgents[key] = iter->second.asInteger();
@ -556,13 +556,23 @@ void FSData::processAgents(const LLSD& data)
if (data.has("SupportGroups"))
{
const LLSD& support_groups = data["SupportGroups"];
for(LLSD::map_const_iterator itr = support_groups.beginMap(); itr != support_groups.endMap(); ++itr)
for (LLSD::map_const_iterator itr = support_groups.beginMap(); itr != support_groups.endMap(); ++itr)
{
mSupportGroup.insert(LLUUID(itr->first));
LL_DEBUGS("fsdata") << "Added " << itr->first << " to mSupportGroup" << LL_ENDL;
}
}
if (data.has("TestingGroups"))
{
const LLSD& testing_groups = data["TestingGroups"];
for (LLSD::map_const_iterator itr = testing_groups.beginMap(); itr != testing_groups.endMap(); ++itr)
{
mTestingGroup.insert(LLUUID(itr->first));
LL_DEBUGS("fsdata") << "Added " << itr->first << " to mTestingGroup" << LL_ENDL;
}
}
// The presence of just the key is enough to determine that legacy search needs to be disabled on this grid.
if (data.has("DisableLegacySearch"))
{
@ -663,8 +673,7 @@ LLSD FSData::resolveClientTag(const LLUUID& id, bool new_system, const LLColor4&
if (curtag.has("name")) curtag["tpvd"] = true;
}
}
// Filtering starts here:
//WS: If we have a tag using the new system, check if we want to display it's name and/or color
if (new_system)
@ -676,6 +685,7 @@ LLSD FSData::resolveClientTag(const LLUUID& id, bool new_system, const LLColor4&
LLStringFn::replace_ascii_controlchars(clienttagname, LL_UNKNOWN_CHAR);
curtag["name"] = clienttagname;
}
if (color_client_tags >= 3 || curtag["tpvd"].asBoolean())
{
if (curtag["tpvd"].asBoolean() && color_client_tags < 3)
@ -821,9 +831,19 @@ LLSD FSData::allowedLogin()
}
}
bool FSData::isFirestormGroup(const LLUUID& id)
{
return isSupportGroup(id) || isTestingGroup(id);
}
bool FSData::isSupportGroup(const LLUUID& id)
{
return (mSupportGroup.count(id));
return mSupportGroup.count(id);
}
bool FSData::isTestingGroup(const LLUUID& id)
{
return mTestingGroup.count(id);
}
bool FSData::isAgentFlag(const LLUUID& agent_id, flags_t flag)

View File

@ -46,7 +46,7 @@ public:
void addAgents();
LLSD resolveClientTag(const LLUUID& id, bool new_system, const LLColor4& new_system_color);
enum flags_t
{
SUPPORT = (1 << 0), //0x01 1
@ -60,23 +60,26 @@ public:
};
std::set<LLUUID> mSupportGroup;
std::set<LLUUID> mTestingGroup;
bool isDeveloper(const LLUUID& avatar_id);
bool isSupport(const LLUUID& avatar_id);
bool isQA(const LLUUID& avatar_id);
bool isFirestormGroup(const LLUUID& id);
bool isSupportGroup(const LLUUID& id);
bool isTestingGroup(const LLUUID& id);
// returns -1 if agent is not found.
S32 getAgentFlags(const LLUUID& avatar_id);
LLSD allowedLogin();
bool enableLegacySearch() {return mLegacySearch;}
std::string processRequestForInfo(const LLUUID& requester, const std::string& message, const std::string& name, const LLUUID& sessionid);
static LLSD getSystemInfo();
static void callbackReqInfo(const LLSD &notification, const LLSD &response);
std::string getOpenSimMOTD() { return mOpenSimMOTD; }
void selectNextMOTD();

View File

@ -386,8 +386,9 @@ void FSFloaterIM::sendMsgFromInputEditor(EChatType type)
utf8_text = FSCommon::applyMuPose(utf8_text);
// <FS:Techwolf Lupindo> Support group chat prefix
static LLCachedControl<bool> chat_prefix(gSavedSettings, "FSSupportGroupChatPrefix2");
if (chat_prefix && FSData::getInstance()->isSupportGroup(mSessionID))
static LLCachedControl<bool> chat_prefix_support(gSavedSettings, "FSSupportGroupChatPrefix2");
static LLCachedControl<bool> chat_prefix_testing(gSavedSettings, "FSSupportGroupChatPrefixTesting");
if ((chat_prefix_support || chat_prefix_testing) && FSData::getInstance()->isFirestormGroup(mSessionID))
{
// <FS:PP> FIRE-7075: Skin indicator
static LLCachedControl<std::string> FSInternalSkinCurrent(gSavedSettings, "FSInternalSkinCurrent");
@ -402,18 +403,46 @@ void FSFloaterIM::sendMsgFromInputEditor(EChatType type)
skin_indicator = skin_indicator.substr(0, 1); // "FS 4.4.1f os", "FS 4.4.1v", "FS 4.4.1a", "FS 4.4.1s os", "FS 4.4.1m os" etc.
}
// </FS:PP>
//Address size check
#if ADDRESS_SIZE == 32
std::string str_fs_tag = "FS ";
std::string str_address_size_tag = "32";
#else
std::string str_fs_tag = "FS64 ";
std::string str_address_size_tag = "";
#endif
std::string str_os_tag;
//OpenSim check
std::string str_opensim_tag;
#ifdef OPENSIM
str_os_tag = " os";
str_opensim_tag = " os";
#endif
//Operating System check
#if LL_WINDOWS
std::string str_operating_system_tag = "W";
#elif LL_LINUX
std::string str_operating_system_tag = "L";
#elif LL_DARWIN
std::string str_operating_system_tag = "M";
#endif
//RLV check
static LLCachedControl<bool> chat_prefix_rlv(gSavedSettings, "RestrainedLove");
std::string str_rlv_enabled = "";
if(chat_prefix_rlv)
str_rlv_enabled = "*";
//Build it up
size_t insert_pos = is_irc_me_prefix(utf8_text) ? 4 : 0;
utf8_text.insert(insert_pos, ("(" + str_fs_tag + LLVersionInfo::getShortVersion() + skin_indicator + str_os_tag + ") "));
//For testing/beta groups, we display the build version since it doesn't speed by and this might change often
if(chat_prefix_testing && FSData::getInstance()->isTestingGroup(mSessionID))
utf8_text.insert(insert_pos, ("(" + str_address_size_tag + str_operating_system_tag + " " + LLVersionInfo::getBuildVersion() + skin_indicator + str_rlv_enabled + str_opensim_tag + ") "));
//For release support groups, only display the short version(Major.Minor.Patch) since chat can speed by. This makes it easier on Support's eyes.
else if(chat_prefix_support && FSData::getInstance()->isSupportGroup(mSessionID))
utf8_text.insert(insert_pos, ("(" + str_address_size_tag + str_operating_system_tag + " " + LLVersionInfo::getShortVersion() + skin_indicator + str_rlv_enabled + str_opensim_tag + ") "));
}
// <FS:Techwolf Lupindo> Allow user to send system info.
@ -887,8 +916,10 @@ BOOL FSFloaterIM::postBuild()
getChild<LLButton>("send_chat")->setCommitCallback(boost::bind(&FSFloaterIM::sendMsgFromInputEditor, this, CHAT_TYPE_NORMAL));
bool isFSSupportGroup = FSData::getInstance()->isSupportGroup(mSessionID);
childSetVisible("support_panel", isFSSupportGroup);
bool isFSSupportGroup = FSData::getInstance()->isFirestormGroup(mSessionID);
childSetVisible("testing_panel", FSData::getInstance()->isTestingGroup(mSessionID));
childSetVisible("support_panel", FSData::getInstance()->isSupportGroup(mSessionID));
// <FS:Zi> Viewer version popup
if (isFSSupportGroup)

View File

@ -4937,16 +4937,7 @@ bool LLAppViewer::initCache()
if(!read_only)
{
// <FS:Ansariel> Clear inventory cache button
std::string clear_inventory_agent_id = gSavedSettings.getString("FSPurgeInventoryCacheOnStartup");
if (clear_inventory_agent_id != std::string())
{
gSavedSettings.setString("FSPurgeInventoryCacheOnStartup", std::string());
std::string inv_cache_file = gDirUtilp->getExpandedFilename(LL_PATH_CACHE, clear_inventory_agent_id + ".inv.gz");
LL_INFOS("LLAppViewer") << "Purging inventory cache file: " << inv_cache_file << LL_ENDL;
LLFile::remove(inv_cache_file);
}
// </FS:Ansariel>
// <FS:Zi> Purge inventory cache is done in LLInventoryModel::loadSkeleton()
// Purge cache if user requested it
if (gSavedSettings.getBOOL("PurgeCacheOnStartup") ||

View File

@ -311,7 +311,12 @@ bool callback_clear_inventory_cache(const LLSD& notification, const LLSD& respon
if ( option == 0 ) // YES
{
// flag client texture cache for clearing next time the client runs
gSavedSettings.setString("FSPurgeInventoryCacheOnStartup", gAgentID.asString());
// use a marker file instead of a settings variable to prevent logout crashes and
// dual log ins from messing with the flag. -Zi
std::string delete_cache_marker = gDirUtilp->getExpandedFilename(LL_PATH_CACHE, gAgentID.asString() + "_DELETE_INV_GZ");
FILE* fd = LLFile::fopen(delete_cache_marker, "w");
LLFile::close(fd);
LLNotificationsUtil::add("CacheWillClear");
}
@ -5189,8 +5194,25 @@ void FSPanelPreferenceBackup::changeBackupSettingsPath(const std::vector<std::st
}
void FSPanelPreferenceBackup::onClickBackupSettings()
{
LLSD args;
args["DIRECTORY"] = gSavedSettings.getString("SettingsBackupPath");
LLNotificationsUtil::add("SettingsConfirmBackup", args, LLSD(),
boost::bind(&FSPanelPreferenceBackup::doBackupSettings, this, _1, _2));
}
void FSPanelPreferenceBackup::doBackupSettings(const LLSD& notification, const LLSD& response)
{
LL_INFOS("SettingsBackup") << "entered" << LL_ENDL;
S32 option = LLNotificationsUtil::getSelectedOption(notification, response);
if ( option == 1 ) // CANCEL
{
LL_INFOS("SettingsBackup") << "backup cancelled" << LL_ENDL;
return;
}
// Get settings backup path
std::string dir_name = gSavedSettings.getString("SettingsBackupPath");

View File

@ -495,6 +495,7 @@ protected:
void doSelect(BOOL all); // calls applySelection for each list
void applySelection(LLScrollListCtrl* control, BOOL all); // selects or deselects all items in a scroll list
void doBackupSettings(const LLSD& notification, const LLSD& response); // callback for backup dialog
void doRestoreSettings(const LLSD& notification, const LLSD& response); // callback for restore dialog
void onQuitConfirmed(const LLSD& notification, const LLSD& response); // callback for finished restore dialog
// </FS:Zi>

View File

@ -2141,6 +2141,34 @@ bool LLInventoryModel::loadSkeleton(
const LLSD& options,
const LLUUID& owner_id)
{
// <FS:Zi> Purge inventory cache files marked by DELETE_INV_GZ marker files
std::string delete_cache_marker = gDirUtilp->getExpandedFilename(LL_PATH_CACHE, owner_id.asString() + "_DELETE_INV_GZ");
LL_DEBUGS("LLInventoryModel") << "Checking for clear inventory cache marker: " << delete_cache_marker << LL_ENDL;
// if this marker exists, go ahead and delete the respective .inv and/or .inv.gz files
if (LLFile::isfile(delete_cache_marker))
{
LL_INFOS("LLInventoryModel") << "Clear inventory cache marker found: " << delete_cache_marker << LL_ENDL;
std::string inventory_filename = getInvCacheAddres(owner_id);
if (LLFile::isfile(inventory_filename))
{
LL_INFOS("LLInventoryModel") << "Purging inventory cache file: " << inventory_filename << LL_ENDL;
LLFile::remove(inventory_filename);
}
inventory_filename.append(".gz");
if (LLFile::isfile(inventory_filename))
{
LL_INFOS("LLInventoryModel") << "Purging inventory cache file: " << inventory_filename << LL_ENDL;
LLFile::remove(inventory_filename);
}
LL_INFOS("LLInventoryModel") << "Clear inventory cache marker removed: " << delete_cache_marker << LL_ENDL;
LLFile::remove(delete_cache_marker);
}
// </FS:Zi>
LL_DEBUGS(LOG_INV) << "importing inventory skeleton for " << owner_id << LL_ENDL;
typedef std::set<LLPointer<LLViewerInventoryCategory>, InventoryIDPtrLess> cat_set_t;

View File

@ -85,6 +85,22 @@ const std::string &LLVersionInfo::getVersion()
return version;
}
//<FS:CZ>
//static
const std::string &LLVersionInfo::getBuildVersion()
{
static std::string build_version("");
if (build_version.empty())
{
std::ostringstream stream;
stream << LLVersionInfo::getBuild();
// cache the version string
build_version = stream.str();
}
return build_version;
}
//</FS:CZ>
//static
const std::string &LLVersionInfo::getShortVersion()
{

View File

@ -56,6 +56,11 @@ public:
/// return the full viewer version as a string like "2.0.0.200030"
static const std::string &getVersion();
//<FS:CZ>
/// return the full viewer version as a string like "200030"
static const std::string &getBuildVersion();
//</FS:CZ>
/// return the viewer version as a string like "2.0.0"
static const std::string &getShortVersion();

View File

@ -48,6 +48,9 @@
<layout_panel name="support_panel">
<check_box label="Version senden" name="FSSupportGroupChatPrefix_toggle" tool_tip="Fügt die aktuelle Viewer-Version und Oberfläche am Anfang jeder Nachricht hinzu, die an diese Gruppe gesendet werden, um die Support-Mitarbeiter dabei zu unterstützen, ein mögliches Problem besser zu diagnostizieren und die Genauigkeit der Antworten auf deine Fragen zu verbessern."/>
</layout_panel>
<layout_panel name="testing_panel">
<check_box label="Build senden" name="FSSupportGroupChatPrefixTesting_toggle" tool_tip="Fügt den aktuellen Viewer-Build und die aktuelle Oberfläche am Anfang jeder Nachricht hinzu, die an diese Gruppe gesendet werden, um die Support-Mitarbeiter dabei zu unterstützen, ein mögliches Problem besser zu diagnostizieren und die Genauigkeit der Antworten auf deine Fragen zu verbessern. (Diese Einstellung ist unabhängig von den Support-Gruppen.)"/>
</layout_panel>
</layout_stack>
<layout_stack name="chat_stack">
<layout_panel name="panel_im_control_lp">

View File

@ -5074,6 +5074,13 @@ Der Sicherungspfad konnte nicht gefunden oder erstellt werden.
Der Sicherungspfad konnte nicht gefunden werden.
</notification>
<notification name="SettingsConfirmBackup">
Möchten Sie wirklich eine Sicherung in diesem Verzeichnis erstellen?
[DIRECTORY]
Bestehende Sicherungen in diesem Verzeichnis werden überschrieben!
<usetemplate name="okcancelbuttons" notext="Abbrechen" yestext="Sicherung erstellen"/>
</notification>
<notification name="SettingsRestoreNeedsLogout">
Das Wiederherstellen von Einstellungen erfordert einen Neustart des Viewers. Sollen die Einstellungen jetzt wiederhergestellt und der Viewer beendet werden?
<usetemplate name="okcancelbuttons" notext="Abbrechen" yestext="Wiederherstellen und beenden"/>

View File

@ -146,14 +146,14 @@
<check_box label="HTTP für Laden von Texturen verwenden" tool_tip="Aktiviert das Laden von Texturen über das HTTP-Protokoll - deaktivieren wenn es Probleme mit schlecht oder nicht korrekt ladenden Texturen gibt und das veraltete UDP-Protokoll verwendet werden soll." name="TexturesHTTP"/>
<check_box label="Maximale Auflösung für Texturen auf 512px beschränken (nur 64bit; erfordert Neustart)" tool_tip="Beschränkt die maximale Auflösung für Inworld-Texturen auf 512px. Dies erlaubt die Darstellung von mehreren Texturen bevor der vorhandene Texturspeicher aufgebraucht ist und unscharfe Texturen dargestellt werden." name="FSRestrictMaxTextureSize"/>
<slider label="Max. Anzahl gleichzeitiger HTTP-GET-Anfragen" name="HTTPFetchMaxRequests"/>
<text name="TextureDetailLabel" width="215">
<text name="TextureDetailLabel" width="215" tool_tip="Qualitätslevel, auf das Texturen geladen werden. Beeinflusst die Einstellung TextureDiscardLevel">
Maximales Qualitätslevel für Texturen:
</text>
<combo_box name="TextureDetail">
<combo_box.item label="Normale Qualität" name="0"/>
<combo_box.item label="Mittlere Qualität" name="3"/>
<combo_box.item label="Geringe Qualität" name="4"/>
<combo_box.item label="Keine Texturen" name="5"/>
<combo_box.item label="Normale (0) Qualität" name="0"/>
<combo_box.item label="Mittlere (3) Qualität" name="3"/>
<combo_box.item label="Geringe (4) Qualität" name="4"/>
<combo_box.item label="Keine (5) Texturen" name="5"/>
</combo_box>
<text name="Alpha Mask Rendering">
Darstellung von Alpha-Masken:

View File

@ -452,8 +452,37 @@
name="FSSupportGroupChatPrefix_toggle"
tool_tip="Adds your current viewer version and skin information to the front of messages sent by you to this group which will assist support staff in correctly diagnosing your issues and improve accuracy in answering your questions"
width="110" />
<!-- END: FS Prefix -->
</layout_panel>
<layout_panel
name="testing_panel"
auto_resize="false"
user_resize="false"
top="0"
layout="topleft"
height="20"
width="105"
follows="left|top">
<icon
follows="left|right"
image_name="Toolbar_Middle_Off"
left="2"
name="dummy_icon_support_group_testing"
top="0"
height="20"
width="103"/>
<check_box
control_name="FSSupportGroupChatPrefixTesting"
follows="left|top"
height="19"
label="Specify build"
layout="topleft"
top="0"
left_delta="5"
name="FSSupportGroupChatPrefixTesting_toggle"
tool_tip="Adds your current viewer build and skin information to the front of messages sent by you to this group which will assist support staff in correctly diagnosing your issues and improve accuracy in answering your questions. (This is seperate from the support groups)"
width="100" />
</layout_panel>
<!-- END: FS Prefix -->
<layout_panel
name="lp_bar"
auto_resize="true"

View File

@ -12580,6 +12580,19 @@ The backup path could not be found or created.
The backup path could not be found.
</notification>
<notification
icon="alertmodal.tga"
name="SettingsConfirmBackup"
type="alertmodal">
Are you sure you want to save a backup to this directory?
[DIRECTORY]
Any existing backups in that location will be overwritten!
<usetemplate
name="okcancelbuttons"
notext="Cancel"
yestext="Save backup"/>
</notification>
<notification
icon="alertmodal.tga"
name="SettingsRestoreNeedsLogout"

View File

@ -1130,21 +1130,22 @@
left_pad="5"
top_pad="-23"
name="TextureDetail"
width="150">
width="150"
tool_tip="Quality to load textures to, affects the setting TextureDiscardLevel"> <!-- To translators, do not try to translate the word TextureDiscardLevel -->
<combo_box.item
label="Normal quality"
label="Normal (0) quality"
name="0"
value="0"/>
<combo_box.item
label="Mid quality"
label="Mid (3) quality"
name="3"
value="3"/>
<combo_box.item
label="Low quality"
label="Low (4) quality"
name="4"
value="4"/>
<combo_box.item
label="No textures"
label="No (5) textures"
name="5"
value="5"/>
</combo_box>

View File

@ -4710,6 +4710,12 @@ Poprzedni symulator: [OLDVERSION]
<notification name="BackupPathEmpty">
Ścieżka miejsca zapisu jest pusta. Proszę najpierw podać lokalizację, w jakiej będą zapisywanie i której będą przywracane kopie zapasowe.
</notification>
<notification name="SettingsConfirmBackup">
Czy na pewno chcesz zapisać kopię zapasową w tym katalogu?
[DIRECTORY]
Wszelkie istniejące kopie zapasowe w tej lokalizacji zostaną nadpisane!
<usetemplate name="okcancelbuttons" notext="Anuluj" yestext="Zapisz kopię" />
</notification>
<notification name="SettingsRestoreNeedsLogout">
Przywrócenie ustawień wymaga ponownego uruchomienia przeglądarki. Czy chcesz teraz przywrócić ustawienia i wyłączyć ją?
<usetemplate name="okcancelbuttons" notext="Anuluj" yestext="Przywróć i wyłącz"/>
@ -4882,6 +4888,9 @@ Mnożnik LOD >8: Brak widocznych efektów. Może powodować błędy.
Należy pamiętać, że zakupy w walucie dokonywane za pośrednictwem Firestorm Viewer są transakcjami między Tobą (użytkownikiem) a dostawcą (-ami) lub sprzedawcą (-ami) waluty.
Ani Firestorm Viewer, ani Phoenix Firestorm Viewer Project Inc., ani jego zespół nie ponoszą odpowiedzialności za jakiekolwiek koszty lub szkody wynikające bezpośrednio lub pośrednio z takich transakcji.
Jeśli nie zgadzasz się z niniejszymi warunkami użytkowania, nie należy przeprowadzać transakcji finansowych za pomocą tej przeglądarki.
<usetemplate ignoretext="Kiedy region ustawia nowego pomocnika walutowego." name="okignore" />
<usetemplate ignoretext="Kiedy region ustawia nowego pomocnika walutowego." name="okignore" />
</notification>
<notification name="EnableHiDPI">
Włączenie obsługi HiDPI może mieć niekorzystne skutki i pogorszyć wydajność.
</notification>
</notifications>

View File

@ -132,11 +132,11 @@
<text name="TextureDetailLabel">
Maksymalny poziom jakości tekstur:
</text>
<combo_box name="TextureDetail">
<combo_box.item label="Normalna jakość" name="0"/>
<combo_box.item label="Średnia jakość" name="3"/>
<combo_box.item label="Niska jakość" name="4"/>
<combo_box.item label="Bez tekstur" name="5"/>
<combo_box name="TextureDetail" tool_tip="Jakość ładowanych tekstur, wpływa na ustawienie TextureDiscardLevel">
<combo_box.item label="Normalna jakość (0)" name="0"/>
<combo_box.item label="Średnia jakość (3)" name="3"/>
<combo_box.item label="Niska jakość (4)" name="4"/>
<combo_box.item label="Bez tekstur (5)" name="5"/>
</combo_box>
<text name="Alpha Mask Rendering">
Maski przezroczystości (alpha):

View File

@ -429,8 +429,29 @@
name="FSSupportGroupChatPrefix_toggle"
tool_tip="Adds your current viewer version and skin information to the front of messages sent by you to this group which will assist support staff in correctly diagnosing your issues and improve accuracy in answering your questions"
width="110" />
<!-- END: FS Prefix -->
</layout_panel>
<layout_panel
name="testing_panel"
auto_resize="false"
user_resize="false"
top="0"
layout="topleft"
height="20"
width="115"
follows="left|top">
<check_box
control_name="FSSupportGroupChatPrefixTesting"
follows="left|top"
height="19"
label="Specify build"
layout="topleft"
top="0"
left_delta="5"
name="FSSupportGroupChatPrefixTesting_toggle"
tool_tip="Adds your current viewer build and skin information to the front of messages sent by you to this group which will assist support staff in correctly diagnosing your issues and improve accuracy in answering your questions. (This is seperate from the support groups)"
width="110" />
</layout_panel>
<!-- END: FS Prefix -->
</layout_stack>
<layout_stack