Ansariel 2024-03-08 19:12:09 +01:00
commit dec97544fc
50 changed files with 439 additions and 104 deletions

View File

@ -112,9 +112,11 @@
<key>archive</key>
<map>
<key>hash</key>
<string>80d157facdba399b3a59c400e29cb625</string>
<string>1e74b8cc3694150a7751aeb12f3456d414412c0e</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/glib-2.64.6.230870115-linux64-230870115.tar.bz2</string>
<string>https://3p.firestormviewer.org/glib-2.64.6.240620740-linux64-240620740.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -544,9 +546,11 @@
<key>archive</key>
<map>
<key>hash</key>
<string>8d96a9d1a9a208b1f48ac677edb7ca4d</string>
<string>5d1952e270a873d4587f7b943ed6e3f87d5023da</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/boost-1.72-linux64-222121224.tar.bz2</string>
<string>https://3p.firestormviewer.org/boost-1.81-linux64-240621158.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -648,9 +652,11 @@
<key>archive</key>
<map>
<key>hash</key>
<string>8b79711b4fa914c16f1284939d55dcc1</string>
<string>83f9c9aff5a7b96711c04bd33cb453c108dee3a5</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/colladadom-2.3.230940029-linux64-230940029.tar.bz2</string>
<string>https://3p.firestormviewer.org/colladadom-2.3.240621210-linux64-240621210.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -762,9 +768,11 @@
<key>archive</key>
<map>
<key>hash</key>
<string>8e92fc9ec2b3be6d2a5387fc283f954f</string>
<string>7bb9bbadb44dd7490c3e6804395df01ab800bc18</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/curl-8.3.0.232750741-linux64-232750741.tar.bz2</string>
<string>https://github.com/secondlife/3p-curl/releases/download/v7.54.1-513145c/curl-7.54.1-513145c-linux64-513145c.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -913,6 +921,20 @@
<key>name</key>
<string>darwin64</string>
</map>
<key>linux64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>c036cc042523fb6a3dafb7134f83e52c566c0765</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/emoji_shortcodes-6.1.0.240620448-linux64-240620448.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
</map>
<key>windows64</key>
<map>
<key>archive</key>
@ -1110,11 +1132,11 @@
<key>archive</key>
<map>
<key>hash</key>
<string>4a999279562e8f3e4ba02d3e78a844ddf6fe18f1</string>
<string>bf2d2e4350caaea2b2fb6116d05548c80f402f81</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://github.com/secondlife/3p-freetype/releases/download/v.2.12.1.557becd/freetype-2.12.1.557becd-linux64-557becd.tar.zst</string>
<string>https://3p.firestormviewer.org/freetype-2.12.1.240620850-linux64-240620850.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -1379,6 +1401,20 @@
<key>name</key>
<string>darwin64</string>
</map>
<key>linux64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>f5e5be3af96f1eb0842219a94765c04aa9c561c5</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/icu4c-4.8.1-linux64-240621048.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
</map>
<key>windows64</key>
<map>
<key>archive</key>
@ -1750,9 +1786,11 @@
<key>archive</key>
<map>
<key>hash</key>
<string>134089ec8c1eead9436b69c326790fc0</string>
<string>e646a9da0ddfe1dfbffc6600d7d35f78ac48c75e</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/libpng-1.6.38.222890126-linux64-222890126.tar.bz2</string>
<string>https://3p.firestormviewer.org/libpng-1.6.38-240620624-linux64-240620624.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -1838,9 +1876,11 @@
<key>archive</key>
<map>
<key>hash</key>
<string>d72c6d8db827ce3d83c5703f519a2ac9</string>
<string>fda5d399c21c3ad29a78f29599523ca4ecf76bd2</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/libxml2-2.10.3.230940019-linux64-230940019.tar.bz2</string>
<string>https://github.com/secondlife/3p-libxml2/releases/download/v2.9.4-2db4418/libxml2-2.9.4.2db4418-linux64-2db4418.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -2261,9 +2301,11 @@
<key>archive</key>
<map>
<key>hash</key>
<string>ee4e3a02ad4669a4d84e9c32e509530e</string>
<string>d4f35ebcea53ab6e9f2e6cbc0d680b10d10b9c53</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/minizip_ng-3.0.2.222121607-linux64-222121607.tar.bz2</string>
<string>https://github.com/secondlife/3p-minizip-ng/releases/download/v3.0.2.3e9876e/minizip_ng-3.0.2.3e9876e-linux64-3e9876e.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -2377,9 +2419,11 @@
<key>archive</key>
<map>
<key>hash</key>
<string>57670eaa6333d9127b8ba88f120e56dd</string>
<string>5798b5f6c8579ad44f211a873c072ee8d3fd8c93</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/nghttp2-1.56.0.232750738-linux64-232750738.tar.bz2</string>
<string>https://github.com/secondlife/3p-nghttp2/releases/download/v1.40.0.b1526c6/nghttp2-1.40.0.b1526c6-linux64-b1526c6.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -2678,9 +2722,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>archive</key>
<map>
<key>hash</key>
<string>a3b2dbffa28a2b2a63c5d3ce2c12bc85</string>
<string>5f6953db991ef6badb0525ecc98daf28d368e9e7</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/openssl-1.1.1w.232750656-linux64-232750656.tar.bz2</string>
<string>https://github.com/secondlife/3p-openssl/releases/download/v1.1.1q.de53f55/openssl-1.1.1q.de53f55-linux64-de53f55.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -2736,9 +2782,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>archive</key>
<map>
<key>hash</key>
<string>742a145c1518b9dc195ae0862828e6ae</string>
<string>3a722c508a9278a49317e3f749f3256768f1c50b</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/pcre-8.35.202021522-linux64-202021522.tar.bz2</string>
<string>https://github.com/secondlife/3p-pcre/releases/download/v8.35-3c0eb51/pcre-8.35.3c0eb51-linux64-3c0eb51.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
@ -3087,6 +3135,20 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>name</key>
<string>darwin64</string>
</map>
<key>linux64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>0f648faa1aee4e233330b87ce7a31727a28dffc3</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/viewer_fonts-1.240620521-linux64-240620521.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
</map>
<key>windows64</key>
<map>
<key>archive</key>
@ -3360,9 +3422,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>archive</key>
<map>
<key>hash</key>
<string>5ee7cda65cede06190c811e59b3880b0</string>
<string>fba88375e12454ae19f4528e11ffc7ddf7d879ec</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://3p.firestormviewer.org/zlib_ng-2.0.5.222121000-linux64-222121000.tar.bz2</string>
<string>https://github.com/secondlife/3p-zlib-ng/releases/download/v1.2.11.zlib-ng.32fd361/zlib_ng-1.2.11.zlib-ng.32fd361-linux64-32fd361.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>

View File

@ -1,5 +0,0 @@
For full release notes, see:
http://wiki.secondlife.com/wiki/Release_Notes
For a log of viewer changes, see:
doc/viewer-changes.txt

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.4 KiB

View File

@ -4,12 +4,7 @@ include(Prebuilt)
include_guard()
add_library( ll::freetype INTERFACE IMPORTED )
if (LINUX)
find_package(Freetype REQUIRED) # <FS:PC> linux fontconfig and freetype should come from the user's system Linux links this via llwindow/CMakeLists
target_link_libraries( ll::freetype INTERFACE Freetype::Freetype )
else ()
use_system_binary(freetype)
use_prebuilt_binary(freetype)
target_include_directories( ll::freetype SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/freetype2/)
target_link_libraries( ll::freetype INTERFACE freetype )
endif()

View File

@ -12,8 +12,13 @@ if (WINDOWS)
target_link_libraries( ll::icu4c INTERFACE icuuc)
elseif(DARWIN)
target_link_libraries( ll::icu4c INTERFACE icuuc)
#elseif(LINUX)
## target_link_libraries( ll::icu4c INTERFACE )
elseif(LINUX)
#<FS:PC>
#The icu4c 3p puts the libraries in "lib" rather than the normal "release/lib".
#Add this to the link search path (otherwise link to the library fails)
target_link_directories( ll::icu4c INTERFACE ${LIBS_PREBUILT_DIR}/lib)
target_link_libraries( ll::icu4c INTERFACE icuuc)
else()
message(FATAL_ERROR "Invalid platform")
endif()

View File

@ -68,6 +68,11 @@ int main(int argc, char **argv)
curl_global_init(CURL_GLOBAL_ALL);
auto curl = curl_easy_init();
//Not compatible with LL's crusty old curl - support for the curl_mime functions
//was introduced in curl 7.57.0, LL is still using 7.54 :(
/*
if( curl)
{
auto form = curl_mime_init(curl);
@ -95,6 +100,47 @@ int main(int argc, char **argv)
curl_easy_cleanup(curl);
curl_mime_free(form);
}
}*/
if (auto curl_handle = curl_easy_init()) {
struct curl_httppost* formpost = NULL;
struct curl_httppost* lastptr = NULL;
// Add the file part
curl_formadd(&formpost, &lastptr,
CURLFORM_COPYNAME, "upload_file_minidump",
CURLFORM_FILE, dmpFile.c_str(),
CURLFORM_END);
// Add the 'product' part
curl_formadd(&formpost, &lastptr,
CURLFORM_COPYNAME, "product",
CURLFORM_COPYCONTENTS, "Firestorm-Releasex64",
CURLFORM_END);
// Add the 'version' part
curl_formadd(&formpost, &lastptr,
CURLFORM_COPYNAME, "version",
CURLFORM_COPYCONTENTS, version.c_str(),
CURLFORM_END);
// Set the URL
curl_easy_setopt(curl_handle, CURLOPT_URL, url.c_str());
// Set the form post data
curl_easy_setopt(curl_handle, CURLOPT_HTTPPOST, formpost);
// Perform the request
auto res = curl_easy_perform(curl_handle);
// Cleanup
curl_easy_cleanup(curl_handle);
curl_formfree(formpost);
// Check for errors
if (res != CURLE_OK)
std::cerr << "curl_easy_perform() failed: " << curl_easy_strerror(res) << std::endl;
}
return 0;
}

View File

@ -276,15 +276,10 @@ void HttpOpRequest::visitNotifier(HttpRequest * request)
HttpResponse::TransferStats::ptr_t stats = HttpResponse::TransferStats::ptr_t(new HttpResponse::TransferStats);
#if LL_LINUX
curl_easy_getinfo(mCurlHandle, CURLINFO_SIZE_DOWNLOAD_T, &stats->mSizeDownload);
curl_easy_getinfo(mCurlHandle, CURLINFO_TOTAL_TIME, &stats->mTotalTime);
curl_easy_getinfo(mCurlHandle, CURLINFO_SPEED_DOWNLOAD_T, &stats->mSpeedDownload);
#else
curl_easy_getinfo(mCurlHandle, CURLINFO_SIZE_DOWNLOAD, &stats->mSizeDownload);
curl_easy_getinfo(mCurlHandle, CURLINFO_TOTAL_TIME, &stats->mTotalTime);
curl_easy_getinfo(mCurlHandle, CURLINFO_SPEED_DOWNLOAD, &stats->mSpeedDownload);
#endif
response->setTransferStats(stats);
mUserHandler->onCompleted(this->getHandle(), response);

View File

@ -75,16 +75,9 @@ public:
typedef boost::shared_ptr<TransferStats> ptr_t;
TransferStats() : mSizeDownload(0.0), mTotalTime(0.0), mSpeedDownload(0.0) {}
#if LL_LINUX
curl_off_t mSizeDownload;
curl_off_t mSpeedDownload;
F64 mTotalTime;
#else
F64 mSizeDownload;
F64 mTotalTime;
F64 mSpeedDownload;
#endif
};

View File

@ -57,6 +57,14 @@ bool LLEmojiHelper::isActive(const LLUICtrl* ctrl_p) const
// static
bool LLEmojiHelper::isCursorInEmojiCode(const LLWString& wtext, S32 cursorPos, S32* pShortCodePos)
{
// <FS:PP> FIRE-33735: Option to suppress emoji chooser window from automatically popping up while typing in chat bars
static LLUICachedControl<bool> FSEnableEmojiWindowPopupWhileTyping("FSEnableEmojiWindowPopupWhileTyping");
if (!FSEnableEmojiWindowPopupWhileTyping)
{
return false;
}
// </FS:PP>
// If the cursor is currently on a colon start the check one character further back
S32 shortCodePos = (cursorPos == 0 || L':' != wtext[cursorPos - 1]) ? cursorPos : cursorPos - 1;

View File

@ -26880,5 +26880,16 @@ Change of this parameter will affect the layout of buttons in notification toast
<key>Value</key>
<integer>1</integer>
</map>
<key>FSEnableEmojiWindowPopupWhileTyping</key>
<map>
<key>Comment</key>
<string>Enables automatic opening of emoji chooser window while typing in chat bars.</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>
<string>Boolean</string>
<key>Value</key>
<integer>1</integer>
</map>
</map>
</llsd>

View File

@ -66,7 +66,7 @@ LLAssetType::EType S32toAssetType(S32 assetindex)
return type;
}
void FSAssetBlacklist::initSingleton()
void FSAssetBlacklist::init()
{
mBlacklistFileName = gDirUtilp->getExpandedFilename(LL_PATH_PER_SL_ACCOUNT, "asset_blacklist.xml");
loadBlacklist();

View File

@ -44,7 +44,7 @@ class FSAssetBlacklist : public LLSingleton<FSAssetBlacklist>
LLSINGLETON_EMPTY_CTOR(FSAssetBlacklist);
public:
void initSingleton() override;
void init();
bool isBlacklisted(const LLUUID& id, LLAssetType::EType type);
void addNewItemToBlacklist(const LLUUID& id, const std::string& name, const std::string& region, LLAssetType::EType type, bool permanent = true, bool save = true);
void addNewItemToBlacklistData(const LLUUID& id, const LLSD& data, bool save = true);

View File

@ -973,7 +973,6 @@ BOOL FSFloaterIM::postBuild()
mEmojiRecentIconsCtrl->setVisible(false);
mEmojiPickerToggleBtn = getChild<LLButton>("emoji_picker_toggle_btn");
mEmojiPickerToggleBtn->setLabel(LLUIString(LLWString(1, 128512)));
mEmojiPickerToggleBtn->setClickedCallback([this](LLUICtrl*, const LLSD&) { onEmojiPickerToggleBtnClicked(); });
mRecentEmojisUpdatedCallbackConnection = LLFloaterEmojiPicker::setRecentEmojisUpdatedCallback([this](const std::list<llwchar>& recent_emojis_list) { initEmojiRecentPanel(); });

View File

@ -162,7 +162,6 @@ BOOL FSFloaterNearbyChat::postBuild()
mEmojiRecentIconsCtrl->setVisible(false);
mEmojiPickerToggleBtn = getChild<LLButton>("emoji_picker_toggle_btn");
mEmojiPickerToggleBtn->setLabel(LLUIString(LLWString(1, 128512)));
mEmojiPickerToggleBtn->setClickedCallback([this](LLUICtrl*, const LLSD&) { onEmojiPickerToggleBtnClicked(); });
mRecentEmojisUpdatedCallbackConnection = LLFloaterEmojiPicker::setRecentEmojisUpdatedCallback([this](const std::list<llwchar>& recent_emojis_list) { initEmojiRecentPanel(); });

View File

@ -128,7 +128,7 @@ public:
void initCmdLineGrids();
void resetGrids();
// grid list management
bool isReadyToLogin(){return mReadyToLogin;}
bool isReadyToLogin() const {return mReadyToLogin;}
// add a grid to the list of grids
void addGrid(const std::string& loginuri);

View File

@ -77,19 +77,19 @@ public:
void processAttach(LLViewerObject* object, const LLViewerJointAttachment* attachment);
void processDetach(LLViewerObject* object, const LLViewerJointAttachment* attachment);
bool getBridgeCreating() { return mBridgeCreating; };
bool getBridgeCreating() const { return mBridgeCreating; };
void setBridgeCreating(bool status) { mBridgeCreating = status; };
void setBridge(LLViewerInventoryItem* item) { mpBridge = item; };
LLViewerInventoryItem* getBridge() { return mpBridge; };
LLViewerInventoryItem* getBridge() const { return mpBridge; };
bool canUseBridge();
bool isBridgeValid() const { return nullptr != mpBridge; }
void checkBridgeScriptName();
std::string currentFullName() { return mCurrentFullName; }
std::string currentFullName() const { return mCurrentFullName; }
LLUUID getBridgeFolder() { return mBridgeFolderID; }
LLUUID getAttachedID() { return mBridgeUUID; }
LLUUID getBridgeFolder() const { return mBridgeFolderID; }
LLUUID getAttachedID() const { return mBridgeUUID; }
bool canDetach(const LLUUID& item_id);
@ -97,10 +97,10 @@ public:
void setTimerResult(TimerResult result);
// from LLVOInventoryListener
virtual void inventoryChanged(LLViewerObject* object,
LLInventoryObject::object_list_t* inventory,
S32 serial_num,
void* user_data);
void inventoryChanged(LLViewerObject* object,
LLInventoryObject::object_list_t* inventory,
S32 serial_num,
void* user_data) override;
private:
std::string mCurrentURL;

View File

@ -39,8 +39,6 @@ class FSNearbyChat : public LLSingleton<FSNearbyChat>
LLSINGLETON(FSNearbyChat);
~FSNearbyChat();
void sendMsg();
static S32 sLastSpecialChatChannel;
FSNearbyChatControl* mDefaultChatBar;

View File

@ -216,10 +216,6 @@ public:
void sendAvatarGroupsRequest(const LLUUID& avatar_id);
void sendAvatarTexturesRequest(const LLUUID& avatar_id);
void sendAvatarClassifiedsRequest(const LLUUID& avatar_id);
// <FS:Beq> enable legacy profile access for OpenSim to work with new profile
void sendGenericRequestLegacy(const LLUUID& avatar_id, EAvatarProcessorType type, const std::string method);
void sendAvatarPropertiesRequestLegacy(const LLUUID& avatar_id);
// </FS:Beq>
// Duplicate pick info requests are not suppressed.
void sendPickInfoRequest(const LLUUID& creator_id, const LLUUID& pick_id);

View File

@ -49,11 +49,11 @@ public:
~LLChicletBar();
// LLIMSessionObserver observe triggers
/*virtual*/ void sessionAdded(const LLUUID& session_id, const std::string& name, const LLUUID& other_participant_id, BOOL has_offline_msg);
/*virtual*/ void sessionActivated(const LLUUID& session_id, const std::string& name, const LLUUID& other_participant_id) {}
/*virtual*/ void sessionVoiceOrIMStarted(const LLUUID& session_id) {};
/*virtual*/ void sessionRemoved(const LLUUID& session_id);
/*virtual*/ void sessionIDUpdated(const LLUUID& old_session_id, const LLUUID& new_session_id);
/*virtual*/ void sessionAdded(const LLUUID& session_id, const std::string& name, const LLUUID& other_participant_id, BOOL has_offline_msg) override;
/*virtual*/ void sessionActivated(const LLUUID& session_id, const std::string& name, const LLUUID& other_participant_id) override {}
/*virtual*/ void sessionVoiceOrIMStarted(const LLUUID& session_id) override {};
/*virtual*/ void sessionRemoved(const LLUUID& session_id) override;
/*virtual*/ void sessionIDUpdated(const LLUUID& old_session_id, const LLUUID& new_session_id) override;
S32 getTotalUnreadIMCount();

View File

@ -1532,7 +1532,7 @@ bool idle_startup()
LLFile::mkdir(user_fonts_path_name.c_str());
// <FS:WS> Initalize Account based asset_blacklist
FSAssetBlacklist::instance();
FSAssetBlacklist::getInstance()->init();
// <FS:Techwolf Lupindo> load per grid data
FSData::instance().downloadAgents();

View File

@ -168,8 +168,8 @@ public:
static void pickCallback(const LLPickInfo& pick_info);
// <FS:Zi> Add middle mouse control for switching uniform scaling on the fly
virtual BOOL handleMiddleMouseDown(S32 x, S32 y, MASK mask);
virtual BOOL handleMiddleMouseUp(S32 x, S32 y, MASK mask);
virtual BOOL handleMiddleMouseDown(S32 x, S32 y, MASK mask) override;
virtual BOOL handleMiddleMouseUp(S32 x, S32 y, MASK mask) override;
// </FS:Zi>
};

View File

@ -48,8 +48,8 @@ public:
static void pickCallback(const LLPickInfo& pick_info);
// <FS:Zi> Add control to drag texture faces around
virtual BOOL handleMouseUp(S32 x, S32 y, MASK mask);
virtual void stopGrabbing();
virtual BOOL handleMouseUp(S32 x, S32 y, MASK mask) override;
void stopGrabbing();
static BOOL mTextureGrabbed;
static LLViewerObject* mTextureObject;

View File

@ -10949,7 +10949,6 @@ void handle_report_bug(const LLSD& param)
// <FS:Ansariel> Keep linking to out JIRA
//std::string url = gSavedSettings.getString("ReportBugURL");
//LLWeb::loadURLExternal(url);
LLUIString url(param.asString());
LLSD sysinfo = FSData::getSystemInfo();
LLStringUtil::format_map_t replace;
replace["[ENVIRONMENT]"] = LLURI::escape(sysinfo["Part1"].asString().substr(1) + sysinfo["Part2"].asString().substr(1));

View File

@ -209,7 +209,7 @@ public:
virtual void removeObserver(LLVoiceClientParticipantObserver* observer) override;
// <FS:Ansariel> Add callback for user volume change
boost::signals2::connection setUserVolumeUpdateCallback(const user_voice_volume_change_callback_t::slot_type& cb)
boost::signals2::connection setUserVolumeUpdateCallback(const user_voice_volume_change_callback_t::slot_type& cb) override
{
return mUserVolumeUpdateSignal.connect(cb);
}

View File

@ -19,12 +19,12 @@ class QToolAlign : public LLTool, public LLSingleton<QToolAlign>
virtual ~QToolAlign();
public:
virtual void handleSelect();
virtual void handleDeselect();
virtual BOOL handleMouseDown(S32 x, S32 y, MASK mask);
virtual BOOL handleHover(S32 x, S32 y, MASK mask);
virtual void render();
virtual BOOL canAffectSelection();
virtual void handleSelect() override;
virtual void handleDeselect() override;
virtual BOOL handleMouseDown(S32 x, S32 y, MASK mask) override;
virtual BOOL handleHover(S32 x, S32 y, MASK mask) override;
virtual void render() override;
BOOL canAffectSelection();
static void pickCallback(const LLPickInfo& pick_info);

View File

@ -41,7 +41,7 @@ class RlvInventory : public LLSingleton<RlvInventory>, public LLInventoryObserve
public:
// LLInventoryObserver override
/*virtual*/ void changed(U32 mask);
/*virtual*/ void changed(U32 mask) override;
/*
* #RLV Shared inventory

View File

@ -147,6 +147,8 @@
<check_box label="Automatische Namensvorhersage in „Chat in der Nähe“-Eingabezeile aktivieren" name="FSChatbarNamePrediction"/>
<check_box name="AllowMUpose" label="„:“ als Synonym für &quot;/me&quot; verwenden"/>
<check_box name="AutoCloseOOC" label="((OOC))-Klammern automatisch schließen"/>
<check_box name="FSEnableEmojiWindowPopupWhileTyping" label="Automatisches Emoji-Auswahlfenster beim Chateingabe aktivieren"/>
<check_box name="FSShowEmojiButton" label="Emoji-Button in Eingabezeile für Lokaler Chat IM-Sitzungen anzeigen"/>
<check_box name="FSShowIMSendButton" label="Senden-Button in Eingabezeile für IM-Sitzungen anzeigen"/>
<check_box name="FSNearbyChatbar" label="Eingabezeile zum Fenster Lokaler Chat hinzufügen"/>
<check_box name="FSShowChatChannel" label="Kanalauswahl in Eingabezeile anzeigen"/>

View File

@ -905,6 +905,22 @@
top_pad="1"
height="16"
width="400" />
<check_box
layout="topleft"
top_pad="1"
height="16"
width="400"
control_name="FSEnableEmojiWindowPopupWhileTyping"
name="FSEnableEmojiWindowPopupWhileTyping"
label="Enable automatic emoji picker window while typing in chat bars"/>
<check_box
layout="topleft"
top_pad="1"
height="16"
width="400"
control_name="FSShowEmojiButton"
name="FSShowEmojiButton"
label="Show emoji button in chat bar for IM sessions and Nearby Chat"/>
<check_box
layout="topleft"
top_pad="1"

View File

@ -2,6 +2,7 @@
<chat_editor
name="chat_editor"
enable_tab_remove="false"
show_context_menu="true"
show_emoji_helper="true"
use_color="true"
/>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<floater name="emojipicker" title="Scegli Emoji">
<floater.string name="title_for_recently_used" value="Usate di recente"/>
<floater.string name="title_for_frequently_used" value="Usate di frequente"/>
<text name="Dummy">
Nessuna emoji selezionata
</text>
</floater>

View File

@ -62,9 +62,18 @@
</layout_panel>
<layout_panel name="chat_layout_panel">
<layout_stack name="input_panels">
<layout_panel name="emoji_button_layout_panel">
<button name="emoji_picker_toggle_btn" tool_tip="Mostra pannello emoji" />
<button name="emoji_recent_panel_toggle_btn" tool_tip="Mostra/nascondi emoji recenti" />
</layout_panel>
<layout_panel name="input_button_layout_panel">
<button name="send_chat" label="Invia" tool_tip="Invia un messaggio IM" />
</layout_panel>
<layout_panel name="emoji_recent_layout_panel">
<text name="emoji_recent_empty_text">
Le emoji usate di recente verranno visualizzate qui
</text>
</layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>

View File

@ -27,6 +27,10 @@
</layout_panel>
<layout_panel name="chat_layout_panel">
<layout_stack name="input_panels">
<layout_panel name="emoji_button_layout_panel">
<button name="emoji_picker_toggle_btn" tool_tip="Mostra pannello emoji" />
<button name="emoji_recent_panel_toggle_btn" tool_tip="Mostra/nascondi emoji recenti" />
</layout_panel>
<layout_panel name="input_button_layout_panel">
<spinner name="ChatChannel" tool_tip="Canale a cui inviare i messaggi. Abilitare in Preferenze -> Chat -> Scrittura -> Selezione canale nella barra chat"/>
</layout_panel>
@ -40,6 +44,11 @@
</layout_panel>
</layout_stack>
</layout_panel>
<layout_panel name="emoji_recent_layout_panel">
<text name="emoji_recent_empty_text">
Le emoji usate di recente verranno visualizzate qui
</text>
</layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>

View File

@ -21,11 +21,19 @@
</layout_panel>
<layout_panel name="chat_layout_panel">
<layout_stack name="input_panels">
<layout_panel name="input_editor_layout_panel">
<button name="emoji_recent_panel_toggle_btn" tool_tip="Mostra/nascondi emoji recenti" />
</layout_panel>
<layout_panel name="input_button_layout_panel">
<button name="minz_btn" tool_tip="Mostra/nascondi pannello messaggi"/>
</layout_panel>
</layout_stack>
</layout_panel>
<layout_panel name="emoji_recent_layout_panel">
<text name="emoji_recent_empty_text">
Le emoji usate di recente verranno visualizzate qui
</text>
</layout_panel>
</layout_stack>
</view>
</floater>

View File

@ -15,6 +15,7 @@
<menu_item_check label="Mostra notifiche per i nuovi messaggi" name="new_message_notification" />
<menu_item_check label="Mostra la barra della chat" name="show_chat_bar" />
<menu_item_check label="Mostra Seleziona Canale" name="show_channel_selection" />
<menu_item_check label="Mostra il pulsante Emoji" name="show_emoji_button" />
<menu_item_check label="Mostra tipo di Chat / pulsante Invio" name="show_send_button" />
<menu_item_check label="Mostra il pulsante Invio nelle sessioni IM" name="show_im_send_button" />
</toggleable_menu>

View File

@ -25,6 +25,11 @@
<menu label="Debug" name="Debug">
<menu_item_call label="Impostazioni di debug" name="Debug Settings"/>
<menu_item_call label="Strumento anteprima XUI" name="UI Preview Tool"/>
<menu label="Caratteri" name="Fonts">
<menu_item_call label="Mostra test carattere" name="Show Font Test" />
<menu_item_call label="Scarica caratteri" name="Dump Fonts" />
<menu_item_call label="Scarica texture dei caratteri" name="Dump Font Textures" />
</menu>
<menu label="Test interfaccia utente" name="UI Tests"/>
<menu_item_call label="Imposta dimensioni della finestra..." name="Set Window Size..."/>
<menu_item_call label="Mostra i Termini del servizio (TOS)" name="TOS"/>

View File

@ -542,25 +542,28 @@
<menu_item_call label="Scarica Simulator Features to Nearby Chat" name="DumpSimFeaturesToChat"/>
</menu>
<menu label="UI" name="UI">
<menu_item_call label="Test Media browser" name="Web Browser Test"/>
<menu_item_check label="Test riavvio regione..." name="Region Restart Test"/>
<menu_item_call label="Web Content Browser" name="Web Content Browser"/>
<menu_item_call label="Test browser multimediale" name="Web Browser Test"/>
<menu_item_check label="Test riavvio regione" name="Region Restart Test"/>
<menu_item_call label="Browser contenuti web" name="Web Content Browser"/>
<menu_item_call label="Scarica caratteri" name="Dump Fonts" />
<menu_item_call label="Scarica texture dei caratteri" name="Dump Font Textures" />
<menu_item_call label="Test connessione FB" name="FB Connect Test"/>
<menu_item_call label="Scarica SelectMgr" name="Dump SelectMgr"/>
<menu_item_call label="Scarica Inventario" name="Dump Inventory"/>
<menu_item_call label="Scarica Timers" name="Dump Timers"/>
<menu_item_call label="Scarica Focus Holder" name="Dump Focus Holder"/>
<menu_item_call label="Scarica inventario" name="Dump Inventory"/>
<menu_item_call label="Scarica timers" name="Dump Timers"/>
<menu_item_call label="Scarica punto focale" name="Dump Focus Holder"/>
<menu_item_call label="Stampa info oggetto selezionato" name="Print Selected Object Info"/>
<menu_item_call label="Stampa info agente" name="Print Agent Info"/>
<menu_item_check label="Doppio clic Auto-Pilota" name="Double-ClickAuto-Pilot"/>
<menu_item_check label="Doppio clic Teleport" name="DoubleClick Teleport"/>
<menu_item_check label="Debug SelectMgr" name="Debug SelectMgr"/>
<menu_item_check label="Debug clic" name="Debug Clicks"/>
<menu_item_check label="Debug viste" name="Debug Views"/>
<menu_item_check label="Debug Name Tooltips" name="Debug Name Tooltips"/>
<menu_item_check label="Debug visualizzazione" name="Debug Views"/>
<menu_item_check label="Debug Unicode" name="Debug Unicode" />
<menu_item_check label="Debug suggerimenti sul nome" name="Debug Name Tooltips"/>
<menu_item_check label="Debug eventi mouse" name="Debug Mouse Events"/>
<menu_item_check label="Debug tasti" name="Debug Keys"/>
<menu_item_check label="Debug Window Process" name="Debug WindowProc"/>
<menu_item_check label="Debug processi finestra" name="Debug WindowProc"/>
</menu>
<menu label="XUI" name="XUI">
<menu_item_call label="Ricarica impostazioni colori" name="Reload Color Settings"/>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<floater name="emojipicker" title="Wybierz emoji">
<floater.string name="title_for_recently_used" value="Ostatnio używane"/>
<floater.string name="title_for_frequently_used" value="Często używane"/>
<text name="Dummy">
Nie wybrano emoji
</text>
</floater>

View File

@ -62,9 +62,18 @@
</layout_panel>
<layout_panel name="chat_layout_panel">
<layout_stack name="input_panels">
<layout_panel name="emoji_button_layout_panel">
<button name="emoji_picker_toggle_btn" tool_tip="Pokaż panel emoji" />
<button name="emoji_recent_panel_toggle_btn" tool_tip="Pokaż/ukryj ostatnie emoji" />
</layout_panel>
<layout_panel name="input_button_layout_panel">
<button name="send_chat" label="Wyślij" tool_tip="Wyślij wiadomość IM" />
</layout_panel>
<layout_panel name="emoji_recent_layout_panel">
<text name="emoji_recent_empty_text">
Tutaj pojawią się ostatnio używane emoji
</text>
</layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>

View File

@ -27,6 +27,10 @@
</layout_panel>
<layout_panel name="chat_layout_panel">
<layout_stack name="input_panels">
<layout_panel name="emoji_button_layout_panel">
<button name="emoji_picker_toggle_btn" tool_tip="Pokaż panel emoji" />
<button name="emoji_recent_panel_toggle_btn" tool_tip="Pokaż/ukryj ostatnie emoji" />
</layout_panel>
<layout_panel name="input_button_layout_panel">
<spinner name="ChatChannel" tool_tip="Kanał, na jaki wiadomość na zostać wysłana. Włączone w Ustawienia -> Czat -> Firestorm -> Oferuj ręczny wybór kanału w pasku czatu."/>
</layout_panel>
@ -40,6 +44,11 @@
</layout_panel>
</layout_stack>
</layout_panel>
<layout_panel name="emoji_recent_layout_panel">
<text name="emoji_recent_empty_text">
Tutaj pojawią się ostatnio używane emoji
</text>
</layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>

View File

@ -21,11 +21,19 @@
</layout_panel>
<layout_panel name="chat_layout_panel">
<layout_stack name="input_panels">
<layout_panel name="input_editor_layout_panel">
<button name="emoji_recent_panel_toggle_btn" tool_tip="Pokaż/ukryj ostatnie emoji" />
</layout_panel>
<layout_panel name="input_button_layout_panel">
<button name="minz_btn" tool_tip="Pokaż/ukryj panel wiadomości" />
</layout_panel>
</layout_stack>
</layout_panel>
<layout_panel name="emoji_recent_layout_panel">
<text name="emoji_recent_empty_text">
Tutaj pojawią się ostatnio używane emoji
</text>
</layout_panel>
</layout_stack>
</view>
</floater>

View File

@ -15,6 +15,7 @@
<menu_item_check label="Informuj o nowych wiadomościach" name="new_message_notification" />
<menu_item_check label="Pokaż pasek czatu" name="show_chat_bar" />
<menu_item_check label="Pokaż wybrany kanał" name="show_channel_selection" />
<menu_item_check label="Pokaż przycisk emoji" name="show_emoji_button" />
<menu_item_check label="Pokaż typ czatu / przycisk wysyłania" name="show_send_button" />
<menu_item_check label="Pokaż przycisk wysyłania w sesjach IM" name="show_im_send_button" />
</toggleable_menu>

View File

@ -25,6 +25,11 @@
<menu label="Debugowanie" name="Debug">
<menu_item_call label="Pokaż ustawienia debugowania" name="Debug Settings"/>
<menu_item_call label="Narzędzie podglądu XUI" name="UI Preview Tool"/>
<menu label="Czcionki" name="Fonts">
<menu_item_call label="Pokaż test czcionek" name="Show Font Test" />
<menu_item_call label="Zrzuć czcionki" name="Dump Fonts" />
<menu_item_call label="Zrzuć tekstury czcionek" name="Dump Font Textures" />
</menu>
<menu label="Testy interfejsu" name="UI Tests"/>
<menu_item_call label="Ustaw rozmiar okna..." name="Set Window Size..."/>
<menu_item_call label="Pokaż warunki użytkowania" name="TOS"/>

View File

@ -554,6 +554,8 @@
<menu_item_call label="Test przeglądarki mediów" name="Web Browser Test"/>
<menu_item_check label="Test restartu regionu" name="Region Restart Test"/>
<menu_item_call label="Przeglądarka treści internetowych" name="Web Content Browser"/>
<menu_item_call label="Zrzuć czcionki" name="Dump Fonts" />
<menu_item_call label="Zrzuć tekstury czcionek" name="Dump Font Textures" />
<menu_item_call label="Zrzut SelectMgr" name="Dump SelectMgr"/>
<menu_item_call label="Zrzut Szafy" name="Dump Inventory"/>
<menu_item_call label="Zrzut liczników" name="Dump Timers"/>
@ -565,6 +567,7 @@
<menu_item_check label="Debuguj SelectMgr" name="Debug SelectMgr"/>
<menu_item_check label="Debuguj kliknięcia" name="Debug Clicks"/>
<menu_item_check label="Debuguj widoki" name="Debug Views"/>
<menu_item_check label="Debuguj Unicode" name="Debug Unicode" />
<menu_item_check label="Debuguj chmurki dla podpowiedzi nazw" name="Debug Name Tooltips"/>
<menu_item_check label="Debuguj zdarzenia myszy" name="Debug Mouse Events"/>
<menu_item_check label="Debuguj klawisze" name="Debug Keys"/>

View File

@ -141,6 +141,8 @@
<check_box label="Włącz automatyczne odgadywanie imion w pasku czatu w pobliżu" name="FSChatbarNamePrediction"/>
<check_box name="AllowMUpose" label="&quot;:&quot; synonimem dla &quot;/me&quot;"/>
<check_box name="AutoCloseOOC" label="Domykaj ((nawiasy)) dla czatu OOC"/>
<check_box name="FSEnableEmojiWindowPopupWhileTyping" label="Włącz automatyczne wyświetlanie okna wyboru emoji podczas pisania w paskach czatu"/>
<check_box name="FSShowEmojiButton" label="Pokaż przycisk emoji w pasku czatu dla sesji IM i czatu w pobliżu"/>
<check_box name="FSShowIMSendButton" label="Pokaż przycisk wysyłania wiadomości w pasku czatu dla sesji IM"/>
<check_box name="FSNearbyChatbar" label="Dodaj pasek czatu do okna czatu w pobliżu"/>
<check_box name="FSShowChatChannel" label="Oferuj ręczny wybór kanału w pasku czatu"/>

View File

@ -449,7 +449,7 @@
top="0"
left_delta="5"
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"
tool_tip="Adds current viewer version, viewer skin, operating system and RLVa status 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" />
</layout_panel>
<layout_panel
@ -470,7 +470,7 @@
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)"
tool_tip="Adds current viewer version, viewer skin, operating system and RLVa status 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 -->
@ -603,6 +603,44 @@
right="-2"
wrap="true" />
</layout_panel>
<layout_panel
visibility_control="FSShowEmojiButton"
auto_resize="false"
user_resize="false"
name="emoji_button_layout_panel"
width="35"
top="0"
bottom="-1">
<button
follows="right|bottom"
bottom="23"
height="22"
use_font_color="true"
font="EmojiLarge"
image_hover_unselected="Toolbar_Middle_Over"
image_selected="Toolbar_Middle_Selected"
image_unselected="Toolbar_Middle_Off"
image_overlay="Emoji_Picker_Icon"
right="-11"
name="emoji_picker_toggle_btn"
tool_tip="Show emoji panel"
width="24"/>
<button
follows="right|bottom"
bottom="23"
height="22"
use_font_color="true"
font="EmojiLarge"
image_hover_unselected="Toolbar_Middle_Over"
image_selected="Toolbar_Middle_Selected"
image_unselected="Toolbar_Middle_Off"
image_overlay="Arrow_Down"
right="-1"
name="emoji_recent_panel_toggle_btn"
tool_tip="Shows/hides recent emojis"
left_pad="0"
width="10"/>
</layout_panel>
<layout_panel
visibility_control="FSShowIMSendButton"
auto_resize="false"
@ -624,6 +662,31 @@
</layout_panel>
</layout_stack>
</layout_panel>
<layout_panel
name="emoji_recent_layout_panel"
height="28"
auto_resize="false">
<text
name="emoji_recent_empty_text"
follows="top|left|right"
layout="topleft"
h_pad="20"
v_pad="5"
top="0"
left="5"
right="-1"
height="25"
>Recently used emojis will appear here</text>
<emoji_complete
name="emoji_recent_icons_ctrl"
follows="top|left|right"
layout="topleft"
max_visible="20"
top="0"
left="5"
right="-1"
height="25"/>
</layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>

View File

@ -252,6 +252,41 @@
right="-4"
wrap="true" />
</layout_panel>
<layout_panel
visibility_control="FSShowEmojiButton"
auto_resize="false"
user_resize="false"
name="emoji_button_layout_panel"
width="35">
<button
follows="right|bottom"
bottom="-1"
height="22"
font="EmojiLarge"
image_hover_unselected="Toolbar_Middle_Over"
image_selected="Toolbar_Middle_Selected"
image_unselected="Toolbar_Middle_Off"
image_overlay="Emoji_Picker_Icon"
right="-11"
name="emoji_picker_toggle_btn"
tool_tip="Show emoji panel"
width="24"/>
<button
follows="right|bottom"
bottom="-1"
height="22"
use_font_color="true"
font="EmojiLarge"
image_hover_unselected="Toolbar_Middle_Over"
image_selected="Toolbar_Middle_Selected"
image_unselected="Toolbar_Middle_Off"
image_overlay="Arrow_Down"
right="-1"
name="emoji_recent_panel_toggle_btn"
tool_tip="Shows/hides recent emojis"
left_pad="0"
width="10"/>
</layout_panel>
<layout_panel
visibility_control="FSShowChatChannel"
auto_resize="false"
@ -346,6 +381,31 @@
</layout_panel>
</layout_stack>
</layout_panel>
<layout_panel
name="emoji_recent_layout_panel"
height="28"
auto_resize="false">
<text
name="emoji_recent_empty_text"
follows="top|left|right"
layout="topleft"
h_pad="20"
v_pad="5"
top="0"
left="5"
right="-1"
height="25"
>Recently used emojis will appear here</text>
<emoji_complete
name="emoji_recent_icons_ctrl"
follows="top|left|right"
layout="topleft"
max_visible="20"
top="0"
left="5"
right="-1"
height="25"/>
</layout_panel>
</layout_stack>
</layout_panel>
</layout_stack>

View File

@ -39,7 +39,7 @@ class UtilityBar
public:
void init();
virtual BOOL tick();
virtual BOOL tick() override;
void setAOInterfaceButtonExpanded(bool expanded);
void setVolumeControlsButtonExpanded(bool expanded);

View File

@ -2085,6 +2085,7 @@ class LinuxManifest(ViewerManifest):
self.path("ca-bundle.crt")
with self.prefix(src=os.path.join(pkgdir, 'lib', 'release'), dst="lib"):
self.path("libfreetype.so*")
self.path("libapr-1.so*")
self.path("libaprutil-1.so*")
#self.path("libboost_context-mt.so*")
@ -2263,7 +2264,7 @@ class Linux_i686_Manifest(LinuxManifest):
# self.path("libfontconfig.so.*.*") # <FS:PC> fontconfig and freetype should be taken from the user's system
# Include libfreetype.so. but have it work as libfontconfig does.
# self.path("libfreetype.so.*.*") # <FS:PC> fontconfig and freetype should be taken from the user's system
self.path("libfreetype.so.*.*")
try:
self.path("libtcmalloc.so*") #formerly called google perf tools

View File

@ -468,8 +468,9 @@ LLLocalMeshFile::LLLocalMeshFile(const std::string& filename, bool try_lods)
mFilenames[LOCAL_LOD_HIGH] = filename;
// check if we have a valid extension, can't switch with string can we?
if( std::string exten_str = boost::filesystem::extension(filename);
boost::iequals(exten_str, ".dae") )
auto path = boost::filesystem::path(filename);
if (std::string exten_str = path.extension().string();
boost::iequals(exten_str, ".dae") )
{
mExtension = LLLocalMeshFileExtension::EXTEN_DAE;
pushLog("LLLocalMeshFile", "Extension found: COLLADA");