From 18efc99586a4f5bd2692ef18ab968f8108c71684 Mon Sep 17 00:00:00 2001 From: Rishabh <89680511+rishabhk571@users.noreply.github.com> Date: Sun, 31 May 2026 21:39:32 +0530 Subject: [PATCH] Use active view for fallback zoom actions --- src/JS/zoom-increment.js | 18 +++++++++++++++++- src/JS/zoom-set-to.js | 19 ++++++++++++++++++- src/ae-zoom.h | 2 +- 3 files changed, 36 insertions(+), 3 deletions(-) diff --git a/src/JS/zoom-increment.js b/src/JS/zoom-increment.js index b7cab3d..1ae679b 100644 --- a/src/JS/zoom-increment.js +++ b/src/JS/zoom-increment.js @@ -1,5 +1,21 @@ STR((function (zoomDelta) { - var viewer = app.activeViewer.views[0]; + var activeViewer = app.activeViewer; + + if (!activeViewer || !activeViewer.views || !activeViewer.views.length) { + return; + } + + var activeViewIndex = activeViewer.activeViewIndex; + if ( + typeof activeViewIndex !== "number" || + isNaN(activeViewIndex) || + activeViewIndex < 0 || + activeViewIndex >= activeViewer.views.length + ) { + activeViewIndex = 0; + } + + var viewer = activeViewer.views[activeViewIndex]; var newZoom = viewer.options.zoom * 100 + zoomDelta; if (!(zoomDelta % 1)) { var epsilon = 0.0000000000001; diff --git a/src/JS/zoom-set-to.js b/src/JS/zoom-set-to.js index 9146b51..af3986e 100644 --- a/src/JS/zoom-set-to.js +++ b/src/JS/zoom-set-to.js @@ -1,6 +1,23 @@ STR((function (zoomValue) { + var activeViewer = app.activeViewer; + + if (!activeViewer || !activeViewer.views || !activeViewer.views.length) { + return; + } + if (zoomValue < 0.8) { zoomValue = 0.8; } - app.activeViewer.views[0].options.zoom = zoomValue / 100; + + var activeViewIndex = activeViewer.activeViewIndex; + if ( + typeof activeViewIndex !== "number" || + isNaN(activeViewIndex) || + activeViewIndex < 0 || + activeViewIndex >= activeViewer.views.length + ) { + activeViewIndex = 0; + } + + activeViewer.views[activeViewIndex].options.zoom = zoomValue / 100; })) diff --git a/src/ae-zoom.h b/src/ae-zoom.h index 5a3e229..06a1df9 100644 --- a/src/ae-zoom.h +++ b/src/ae-zoom.h @@ -12,7 +12,7 @@ #include "entry.h" #include -const std::string VERSION = "0.3.1"; +const std::string VERSION = "0.3.2"; using json = nlohmann::json; #define AEGP_MAX_STREAM_DIM 4