From 22ce34442c38e7182653a32978a124aef89b760c Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 4 Jun 2024 13:03:35 +0530 Subject: [PATCH] Fix #2067982 [Zoom setting of dictionary lookup browser not saved after restart](https://bugs.launchpad.net/calibre/+bug/2067982) --- src/calibre/gui2/viewer/lookup.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/calibre/gui2/viewer/lookup.py b/src/calibre/gui2/viewer/lookup.py index dedd1701e3..0afc2d4fe6 100644 --- a/src/calibre/gui2/viewer/lookup.py +++ b/src/calibre/gui2/viewer/lookup.py @@ -272,14 +272,25 @@ class Page(QWebEnginePage): sys.stderr.flush() def zoom_in(self): - self.setZoomFactor(min(self.zoomFactor() + 0.2, 5)) + factor = min(self.zoomFactor() + 0.2, 5) + vprefs['lookup_zoom_factor'] = factor + self.setZoomFactor(factor) def zoom_out(self): - self.setZoomFactor(max(0.25, self.zoomFactor() - 0.2)) + factor = max(0.25, self.zoomFactor() - 0.2) + vprefs['lookup_zoom_factor'] = factor + self.setZoomFactor(factor) def default_zoom(self): + vprefs['lookup_zoom_factor'] = 1 self.setZoomFactor(1) + def set_initial_zoom_factor(self): + try: + self.setZoomFactor(float(vprefs.get('lookup_zoom_factor', 1))) + except Exception: + pass + class View(QWebEngineView): @@ -338,6 +349,7 @@ class Lookup(QWidget): apply_font_settings(self._page) secure_webengine(self._page, for_viewer=True) self.view.setPage(self._page) + self._page.set_initial_zoom_factor() l.addWidget(self.view) self.populate_sources() self.source_box.currentIndexChanged.connect(self.source_changed)