From 43c70c10d07ec8a9fd8ecf1624c44685b8e41aaf Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 7 May 2021 13:17:42 +0530 Subject: [PATCH] Fix #1927688 [Open icon folder produces error](https://bugs.launchpad.net/calibre/+bug/1927688) --- src/calibre/gui2/preferences/coloring.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/calibre/gui2/preferences/coloring.py b/src/calibre/gui2/preferences/coloring.py index 16567191e7..66f2f38194 100644 --- a/src/calibre/gui2/preferences/coloring.py +++ b/src/calibre/gui2/preferences/coloring.py @@ -975,8 +975,7 @@ class EditRules(QWidget): # {{{ self.open_icon_folder_button = b = QPushButton(QIcon(I('icon_choose.png')), _('Open icon folder'), self) - connect_lambda(b.clicked, self, - lambda _: open_local_file(os.path.join(config_dir, 'cc_icons'))) + b.clicked.connect(self.open_icon_folder) hb.addWidget(b) sep = Separator(self, b) hb.addWidget(sep) @@ -989,6 +988,11 @@ class EditRules(QWidget): # {{{ b.clicked.connect(self.import_rules) hb.addWidget(b) + def open_icon_folder(self): + path = os.path.join(config_dir, 'cc_icons') + os.makedirs(path, exist_ok=True) + open_local_file(path) + def initialize(self, fm, prefs, mi, pref_name): self.pref_name = pref_name self.model = RulesModel(prefs, fm, self.pref_name)