Merge branch 'DRTVWR-527-maint' of https://bitbucket.org/lindenlab/viewer
commit
35398057a4
|
|
@ -814,9 +814,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>6b5210f0f529b294e13e1a5ea4271363</string>
|
||||
<string>f4050fe2a7cb994926b16fde91cc5bea</string>
|
||||
<key>url</key>
|
||||
<string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/88757/812363/dullahan-1.12.3.202110051826_91.1.21_g9dd45fe_chromium-91.0.4472.114-darwin64-564501.tar.bz2</string>
|
||||
<string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/89471/816466/dullahan-1.12.3.202110221204_91.1.21_g9dd45fe_chromium-91.0.4472.114-darwin64-564956.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>darwin64</string>
|
||||
|
|
@ -826,9 +826,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>eb9b46761122a1746aff98de1115cc39</string>
|
||||
<string>8046edcc16fb65fa118d002537231c5c</string>
|
||||
<key>url</key>
|
||||
<string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/88756/812368/dullahan-1.12.3.202110051827_91.1.21_g9dd45fe_chromium-91.0.4472.114-windows-564501.tar.bz2</string>
|
||||
<string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/89473/816475/dullahan-1.12.3.202110221216_91.1.21_g9dd45fe_chromium-91.0.4472.114-windows-564956.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>windows</string>
|
||||
|
|
@ -838,9 +838,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>0c8102b5375402704ea8302827e8182b</string>
|
||||
<string>71069de5f6ca6057ce1a7c90fbf9df41</string>
|
||||
<key>url</key>
|
||||
<string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/88754/812351/dullahan-1.12.3.202110051815_91.1.21_g9dd45fe_chromium-91.0.4472.114-windows64-564501.tar.bz2</string>
|
||||
<string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/89472/816480/dullahan-1.12.3.202110221216_91.1.21_g9dd45fe_chromium-91.0.4472.114-windows64-564956.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>windows64</string>
|
||||
|
|
@ -859,7 +859,7 @@
|
|||
</map>
|
||||
</map>
|
||||
<key>version</key>
|
||||
<string>1.12.3.202110051815_91.1.21_g9dd45fe_chromium-91.0.4472.114</string>
|
||||
<string>1.12.3.202110221216_91.1.21_g9dd45fe_chromium-91.0.4472.114</string>
|
||||
</map>
|
||||
<key>elfio</key>
|
||||
<map>
|
||||
|
|
|
|||
|
|
@ -140,13 +140,7 @@ LLOSInfo::LLOSInfo() :
|
|||
|
||||
#if LL_WINDOWS
|
||||
|
||||
if (IsWindowsVersionOrGreater(11, 0, 0))
|
||||
{
|
||||
mMajorVer = 11;
|
||||
mMinorVer = 0;
|
||||
mOSStringSimple = "Microsoft Windows 11 ";
|
||||
}
|
||||
else if (IsWindows10OrGreater())
|
||||
if (IsWindows10OrGreater())
|
||||
{
|
||||
mMajorVer = 10;
|
||||
mMinorVer = 0;
|
||||
|
|
@ -286,6 +280,21 @@ LLOSInfo::LLOSInfo() :
|
|||
ubr = data;
|
||||
}
|
||||
}
|
||||
|
||||
if (mBuild >= 22000)
|
||||
{
|
||||
// At release Windows 11 version was 10.0.22000.194
|
||||
// Windows 10 version was 10.0.19043.1266
|
||||
// There is no warranty that Win10 build won't increase,
|
||||
// so until better solution is found or Microsoft updates
|
||||
// SDK with IsWindows11OrGreater(), indicate "10/11"
|
||||
//
|
||||
// Current alternatives:
|
||||
// Query WMI's Win32_OperatingSystem for OS string. Slow
|
||||
// and likely to return 'compatibility' string.
|
||||
// Check presence of dlls/libs or may be their version.
|
||||
mOSStringSimple = "Microsoft Windows 10/11";
|
||||
}
|
||||
}
|
||||
|
||||
mOSString = mOSStringSimple;
|
||||
|
|
@ -1293,18 +1302,12 @@ BOOL gunzip_file(const std::string& srcfile, const std::string& dstfile)
|
|||
LLFILE *dst = NULL;
|
||||
S32 bytes = 0;
|
||||
tmpfile = dstfile + ".t";
|
||||
|
||||
// <FS:ND> Proper UTF8->UTF16 handling for Windows
|
||||
// src = gzopen(srcfile.c_str(), "rb");
|
||||
#if LL_WINDOWS
|
||||
std::string utf8filename = srcfile;
|
||||
llutf16string utf16filename = utf8str_to_utf16str(utf8filename);
|
||||
src = gzopen_w(utf16filename.c_str(), "rb");
|
||||
#ifdef LL_WINDOWS
|
||||
llutf16string utf16filename = utf8str_to_utf16str(srcfile);
|
||||
src = gzopen_w(utf16filename.c_str(), "rb");
|
||||
#else
|
||||
src = gzopen(srcfile.c_str(), "rb");/* Flawfinder: ignore */
|
||||
src = gzopen(srcfile.c_str(), "rb");
|
||||
#endif
|
||||
// </FS:ND>
|
||||
|
||||
if (! src) goto err;
|
||||
dst = LLFile::fopen(tmpfile, "wb"); /* Flawfinder: ignore */
|
||||
if (! dst) goto err;
|
||||
|
|
@ -1339,17 +1342,13 @@ BOOL gzip_file(const std::string& srcfile, const std::string& dstfile)
|
|||
S32 bytes = 0;
|
||||
tmpfile = dstfile + ".t";
|
||||
|
||||
// <FS:ND> Proper UTF8->UTF16 handling for Windows
|
||||
// dst = gzopen(tmpfile.c_str(), "wb"); /* Flawfinder: ignore */
|
||||
#if LL_WINDOWS
|
||||
std::string utf8filename = tmpfile;
|
||||
llutf16string utf16filename = utf8str_to_utf16str(utf8filename);
|
||||
dst = gzopen_w(utf16filename.c_str(), "wb");
|
||||
#ifdef LL_WINDOWS
|
||||
llutf16string utf16filename = utf8str_to_utf16str(tmpfile);
|
||||
dst = gzopen_w(utf16filename.c_str(), "wb");
|
||||
#else
|
||||
dst = gzopen(tmpfile.c_str(), "wb");/* Flawfinder: ignore */
|
||||
dst = gzopen(tmpfile.c_str(), "wb");
|
||||
#endif
|
||||
// </FS:ND>
|
||||
|
||||
|
||||
if (! dst) goto err;
|
||||
src = LLFile::fopen(srcfile, "rb"); /* Flawfinder: ignore */
|
||||
if (! src) goto err;
|
||||
|
|
|
|||
|
|
@ -400,8 +400,7 @@ LLScrollListCtrl::~LLScrollListCtrl()
|
|||
|
||||
std::for_each(mItemList.begin(), mItemList.end(), DeletePointer());
|
||||
mItemList.clear();
|
||||
std::for_each(mColumns.begin(), mColumns.end(), DeletePairedPointer());
|
||||
mColumns.clear();
|
||||
clearColumns(); //clears columns and deletes headers
|
||||
delete mIsFriendSignal;
|
||||
}
|
||||
|
||||
|
|
@ -3480,6 +3479,8 @@ void LLScrollListCtrl::clearColumns()
|
|||
|
||||
// <FS:Ansariel> Reset number of dynamic columns, too
|
||||
mNumDynamicWidthColumns = 0;
|
||||
|
||||
dirtyColumns(); // Clears mColumnsIndexed
|
||||
}
|
||||
|
||||
void LLScrollListCtrl::setColumnLabel(const std::string& column, const std::string& label)
|
||||
|
|
|
|||
|
|
@ -429,7 +429,8 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key)
|
|||
mGotPersonalInfo(false),
|
||||
mOriginalIMViaEmail(false),
|
||||
mLanguageChanged(false),
|
||||
mAvatarDataInitialized(false)
|
||||
mAvatarDataInitialized(false),
|
||||
mSearchDataDirty(true)
|
||||
{
|
||||
LLConversationLog::instance().addObserver(this);
|
||||
|
||||
|
|
@ -3561,6 +3562,11 @@ void LLFloaterPreference::updateClickActionViews()
|
|||
getChild<LLComboBox>("double_click_action_combo")->setValue(dbl_click_to_teleport ? 2 : (int)dbl_click_to_walk);
|
||||
}
|
||||
|
||||
void LLFloaterPreference::updateSearchableItems()
|
||||
{
|
||||
mSearchDataDirty = true;
|
||||
}
|
||||
|
||||
void LLFloaterPreference::applyUIColor(LLUICtrl* ctrl, const LLSD& param)
|
||||
{
|
||||
LLUIColorTable::instance().setColor(param.asString(), LLColor4(ctrl->getValue()));
|
||||
|
|
@ -4646,10 +4652,19 @@ void LLPanelPreferenceControls::populateControlTable()
|
|||
filename = "control_table_contents_columns_basic.xml";
|
||||
break;
|
||||
default:
|
||||
// Either unknown mode or MODE_SAVED_SETTINGS
|
||||
// It doesn't have UI or actual settings yet
|
||||
LL_INFOS() << "Unimplemented mode" << LL_ENDL;
|
||||
return;
|
||||
{
|
||||
// Either unknown mode or MODE_SAVED_SETTINGS
|
||||
// It doesn't have UI or actual settings yet
|
||||
LL_WARNS() << "Unimplemented mode" << LL_ENDL;
|
||||
|
||||
// Searchable columns were removed, mark searchables for an update
|
||||
LLFloaterPreference* instance = LLFloaterReg::findTypedInstance<LLFloaterPreference>("preferences");
|
||||
if (instance)
|
||||
{
|
||||
instance->updateSearchableItems();
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
addControlTableColumns(filename);
|
||||
|
||||
|
|
@ -4680,8 +4695,18 @@ void LLPanelPreferenceControls::populateControlTable()
|
|||
}
|
||||
else
|
||||
{
|
||||
LL_INFOS() << "Unimplemented mode" << LL_ENDL;
|
||||
return;
|
||||
LL_WARNS() << "Unimplemented mode" << LL_ENDL;
|
||||
}
|
||||
|
||||
// explicit update to make sure table is ready for llsearchableui
|
||||
pControlsTable->updateColumns();
|
||||
|
||||
// Searchable columns were removed and readded, mark searchables for an update
|
||||
// Note: at the moment tables/lists lack proper llsearchableui support
|
||||
LLFloaterPreference* instance = LLFloaterReg::findTypedInstance<LLFloaterPreference>("preferences");
|
||||
if (instance)
|
||||
{
|
||||
instance->updateSearchableItems();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -5299,6 +5324,12 @@ void LLFloaterPreference::onUpdateFilterTerm(bool force)
|
|||
if( !mSearchData || (mSearchData->mLastFilter == seachValue && !force))
|
||||
return;
|
||||
|
||||
if (mSearchDataDirty)
|
||||
{
|
||||
// Data exists, but is obsolete, regenerate
|
||||
collectSearchableItems();
|
||||
}
|
||||
|
||||
mSearchData->mLastFilter = seachValue;
|
||||
|
||||
if( !mSearchData->mRootTab )
|
||||
|
|
@ -5396,6 +5427,7 @@ void LLFloaterPreference::collectSearchableItems()
|
|||
|
||||
collectChildren( this, ll::prefs::PanelDataPtr(), pRootTabcontainer );
|
||||
}
|
||||
mSearchDataDirty = false;
|
||||
}
|
||||
|
||||
// [SL:KB] - Patch: Viewer-CrashReporting | Checked: 2010-11-16 (Catznip-2.6.0a) | Added: Catznip-2.4.0b
|
||||
|
|
|
|||
|
|
@ -119,6 +119,7 @@ public:
|
|||
void getControlNames(std::vector<std::string>& names);
|
||||
// updates click/double-click action controls depending on values from settings.xml
|
||||
void updateClickActionViews();
|
||||
void updateSearchableItems();
|
||||
|
||||
// <FS:CR> Make onBtnOk() public for settings backup panel
|
||||
//protected:
|
||||
|
|
@ -320,6 +321,7 @@ private:
|
|||
|
||||
LLSearchEditor *mFilterEdit;
|
||||
std::unique_ptr< ll::prefs::SearchData > mSearchData;
|
||||
bool mSearchDataDirty;
|
||||
|
||||
void onUpdateFilterTerm( bool force = false );
|
||||
void collectSearchableItems();
|
||||
|
|
|
|||
|
|
@ -192,9 +192,9 @@ BOOL LLToolPie::handleMouseDown(S32 x, S32 y, MASK mask)
|
|||
|
||||
mMouseButtonDown = true;
|
||||
|
||||
handleLeftClickPick();
|
||||
|
||||
return TRUE;
|
||||
// If nothing clickable is picked, needs to return
|
||||
// false for click-to-walk or click-to-teleport to work.
|
||||
return handleLeftClickPick();
|
||||
}
|
||||
|
||||
// Spawn context menus on right mouse down so you can drag over and select
|
||||
|
|
|
|||
|
|
@ -7345,6 +7345,7 @@ LLViewerObject* LLPipeline::lineSegmentIntersectInWorld(const LLVector4a& start,
|
|||
{
|
||||
if ((j == LLViewerRegion::PARTITION_VOLUME) ||
|
||||
(j == LLViewerRegion::PARTITION_BRIDGE) ||
|
||||
(j == LLViewerRegion::PARTITION_AVATAR) || // for attachments
|
||||
(j == LLViewerRegion::PARTITION_CONTROL_AV) ||
|
||||
(j == LLViewerRegion::PARTITION_TERRAIN) ||
|
||||
(j == LLViewerRegion::PARTITION_TREE) ||
|
||||
|
|
|
|||
Loading…
Reference in New Issue