summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2020-06-01 21:34:12 +0300
committerAndrey Kleshchev <andreykproductengine@lindenlab.com>2020-06-01 21:34:21 +0300
commitc471392ef1c0633423ea66158c21ba4d81f2473b (patch)
tree0eb1db4b93c117af01a1eed92439e75c92f3e439
parentcf2f0eddeb066d862151154d0d35f7e9f716270b (diff)
SL-13346 Hi-Res snapshots save a zoomed portion on 4K+ resolutions
-rw-r--r--indra/newview/llviewermenufile.cpp7
-rw-r--r--indra/newview/llviewerwindow.h2
2 files changed, 6 insertions, 3 deletions
diff --git a/indra/newview/llviewermenufile.cpp b/indra/newview/llviewermenufile.cpp
index d1d3a7fc12..7603a6b18c 100644
--- a/indra/newview/llviewermenufile.cpp
+++ b/indra/newview/llviewermenufile.cpp
@@ -683,7 +683,8 @@ class LLFileTakeSnapshotToDisk : public view_listener_t
S32 width = gViewerWindow->getWindowWidthRaw();
S32 height = gViewerWindow->getWindowHeightRaw();
- if (gSavedSettings.getBOOL("HighResSnapshot"))
+ BOOL high_res = gSavedSettings.getBOOL("HighResSnapshot");
+ if (high_res)
{
width *= 2;
height *= 2;
@@ -695,7 +696,9 @@ class LLFileTakeSnapshotToDisk : public view_listener_t
TRUE,
FALSE,
gSavedSettings.getBOOL("RenderUIInSnapshot"),
- FALSE))
+ FALSE,
+ LLSnapshotModel::SNAPSHOT_TYPE_COLOR,
+ high_res ? S32_MAX : MAX_SNAPSHOT_IMAGE_SIZE)) //per side
{
LLPointer<LLImageFormatted> formatted;
LLSnapshotModel::ESnapshotFormat fmt = (LLSnapshotModel::ESnapshotFormat) gSavedSettings.getS32("SnapshotFormat");
diff --git a/indra/newview/llviewerwindow.h b/indra/newview/llviewerwindow.h
index 385bbd57e5..601140d9d2 100644
--- a/indra/newview/llviewerwindow.h
+++ b/indra/newview/llviewerwindow.h
@@ -137,7 +137,7 @@ private:
};
-static const U32 MAX_SNAPSHOT_IMAGE_SIZE = 6 * 1024; // max snapshot image size 6144 * 6144
+static const U32 MAX_SNAPSHOT_IMAGE_SIZE = 7680; // max snapshot image size 7680 * 7680 UHDTV2
class LLViewerWindow : public LLWindowCallbacks
{