[LyX/master] Pinch to zoom fix
Stephan Witt
switt at lyx.org
Sun Jan 9 10:59:58 UTC 2022
commit 7134ebd7938ee2f2e075d53b83a346b168a622c1
Author: Daniel Ramoeller <d.lyx at web.de>
Date: Wed Jan 5 15:27:46 2022 +0100
Pinch to zoom fix
Amendment to fix for #12434.
---
src/frontends/qt/GuiView.cpp | 5 ++++-
src/frontends/qt/GuiView.h | 3 +++
2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/src/frontends/qt/GuiView.cpp b/src/frontends/qt/GuiView.cpp
index 6cd97f5..91e8229 100644
--- a/src/frontends/qt/GuiView.cpp
+++ b/src/frontends/qt/GuiView.cpp
@@ -1632,8 +1632,11 @@ bool GuiView::event(QEvent * e)
if (gp) {
QPinchGesture *pinch = static_cast<QPinchGesture *>(gp);
QPinchGesture::ChangeFlags changeFlags = pinch->changeFlags();
+ if (pinch->state() == Qt::GestureStarted) {
+ initialZoom_ = lyxrc.currentZoom;
+ }
if (changeFlags & QPinchGesture::ScaleFactorChanged) {
- qreal factor = lyxrc.currentZoom*pinch->scaleFactor();
+ qreal factor = initialZoom_ * pinch->totalScaleFactor();
zoomValueChanged(factor);
}
}
diff --git a/src/frontends/qt/GuiView.h b/src/frontends/qt/GuiView.h
index 145a1f2..9ad3610 100644
--- a/src/frontends/qt/GuiView.h
+++ b/src/frontends/qt/GuiView.h
@@ -526,6 +526,9 @@ private:
// developer mode
bool devel_mode_;
+
+ // initial zoom for pinch gesture
+ int initialZoom_;
};
More information about the lyx-cvs
mailing list