From a509c9cb3840e9e1049bd9088fe6805fa5a675d5 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 16 Mar 2022 10:50:11 +0530 Subject: [PATCH] Fix #1963699 [Inconsistent initial display of Tweaks dialog](https://bugs.launchpad.net/calibre/+bug/1963699) --- src/calibre/gui2/preferences/tweaks.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/calibre/gui2/preferences/tweaks.py b/src/calibre/gui2/preferences/tweaks.py index a9beb273ea..dbd0766190 100644 --- a/src/calibre/gui2/preferences/tweaks.py +++ b/src/calibre/gui2/preferences/tweaks.py @@ -485,11 +485,13 @@ class ConfigWidget(ConfigWidgetBase): self.tweaks.set_plugin_tweaks(l) self.changed() - def current_changed(self, current, previous): - self.tweaks_view.scrollTo(current) - tweak = self.tweaks.data(current, Qt.ItemDataRole.UserRole) - self.help.setPlainText(tweak.doc) - self.edit_tweak.setPlainText(tweak.edit_text) + def current_changed(self, *a): + current = self.tweaks_view.currentIndex() + if current.isValid(): + self.tweaks_view.scrollTo(current) + tweak = self.tweaks.data(current, Qt.ItemDataRole.UserRole) + self.help.setPlainText(tweak.doc) + self.edit_tweak.setPlainText(tweak.edit_text) def changed(self, *args): self.changed_signal.emit() @@ -497,6 +499,7 @@ class ConfigWidget(ConfigWidgetBase): def initialize(self): self.tweaks = self._model = Tweaks() self.tweaks_view.setModel(self.tweaks) + self.tweaks_view.setCurrentIndex(self.tweaks_view.model().index(0)) def restore_to_default(self, *args): idx = self.tweaks_view.currentIndex()