diff options
| author | Andrey Lihatskiy <alihatskiy@productengine.com> | 2026-05-21 19:37:15 +0300 |
|---|---|---|
| committer | Andrey Lihatskiy <alihatskiy@productengine.com> | 2026-05-21 19:37:15 +0300 |
| commit | 15d82beb6056fa16a1ea1cbf01c5d673a95e0267 (patch) | |
| tree | 55af7639161926313434d9e4a8b9872369668d5d /indra/newview/llviewerwindow.cpp | |
| parent | ff536adef0b74c20f55bd501ad593e4eef762082 (diff) | |
| parent | 6d4c4c029ce43aa413266135829cd2bc00001890 (diff) | |
Merge branch 'main' into marchcat/slua-26.2
# Conflicts:
# indra/llfilesystem/lldir.cpp
# indra/llfilesystem/llfilesystem.cpp
# indra/newview/llappviewer.cpp
# indra/newview/lltexturecache.cpp
# indra/newview/llvoiceclient.cpp
# indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml
Diffstat (limited to 'indra/newview/llviewerwindow.cpp')
| -rw-r--r-- | indra/newview/llviewerwindow.cpp | 43 |
1 files changed, 37 insertions, 6 deletions
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index 773ff14e90..1b85f84e55 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -2322,14 +2322,22 @@ void LLViewerWindow::initWorldUI() physical_mem = LLMemory::getMaxMemKB(); } - if (!gNonInteractive && physical_mem > MIN_PHYSICAL_MEMORY) + if (!gNonInteractive) { - LL_INFOS() << "Preloading cef instances" << LL_ENDL; + if (physical_mem > MIN_PHYSICAL_MEMORY) + { + LL_INFOS() << "Preloading cef instances" << LL_ENDL; - LLFloaterReg::getInstance("destinations"); - LLFloaterReg::getInstance("avatar_welcome_pack"); - LLFloaterReg::getInstance("search"); - LLFloaterReg::getInstance("marketplace"); + LLFloaterReg::getInstance("destinations"); + LLFloaterReg::getInstance("avatar_welcome_pack"); + LLFloaterReg::getInstance("search"); + LLFloaterReg::getInstance("marketplace"); + } + else if (gSavedSettings.getBOOL("FirstLoginThisInstall")) + { + // Preload the welcome pack for first-time login even on low end hardware + LLFloaterReg::getInstance("avatar_welcome_pack"); + } } } @@ -4906,6 +4914,19 @@ void LLViewerWindow::saveImageLocal(LLImageFormatted *image, const snapshot_save if (image->save(filepath)) { playSnapshotAnimAndSound(); + + // Show clickable notification with filepath + LLSD args; + args["FILEPATH"] = filepath; + + LLSD payload; + payload["filepath"] = filepath; + + LLNotificationsUtil::add("SnapshotSavedToComputer", + args, + payload.with("respond_on_mousedown", true), + boost::bind(&LLViewerWindow::onSnapshotNotificationClick, _1, _2)); + success_cb(); } else @@ -4920,6 +4941,16 @@ void LLViewerWindow::resetSnapshotLoc() } // static +void LLViewerWindow::onSnapshotNotificationClick(const LLSD& notification, const LLSD& response) +{ + std::string filepath = notification["payload"]["filepath"].asString(); + if (!filepath.empty()) + { + gDirUtilp->openDir(filepath); + } +} + +// static void LLViewerWindow::movieSize(S32 new_width, S32 new_height) { LLCoordWindow size; |
