From 9977bafa6799bf949b0b08401e23cd634fdc86f6 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 31 Oct 2012 13:36:10 +0530 Subject: [PATCH] Do not scan the system for fonts on viewer startup, only on main GUI startup --- src/calibre/gui2/__init__.py | 13 +++++++------ src/calibre/gui2/main.py | 2 +- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index c1a088bcac..0a725e450a 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -764,7 +764,7 @@ qt_app = None class Application(QApplication): def __init__(self, args, force_calibre_style=False, - override_program_name=None): + override_program_name=None, scan_for_fonts=False): self.file_event_hook = None if override_program_name: args = [override_program_name] + args[1:] @@ -780,7 +780,7 @@ class Application(QApplication): qt_app = self self._file_open_paths = [] self._file_open_lock = RLock() - self.load_builtin_fonts() + self.load_builtin_fonts(scan_for_fonts=scan_for_fonts) self.setup_styles(force_calibre_style) if DEBUG: @@ -793,11 +793,12 @@ class Application(QApplication): self.redirect_notify = True return ret - def load_builtin_fonts(self): + def load_builtin_fonts(self, scan_for_fonts=False): global _rating_font - from calibre.utils.fonts.scanner import font_scanner - # Start scanning the users computer for fonts - font_scanner + if scan_for_fonts: + from calibre.utils.fonts.scanner import font_scanner + # Start scanning the users computer for fonts + font_scanner # Load the builtin fonts and any fonts added to calibre by the user to # Qt diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py index 0b4a755679..f2b09b3a79 100644 --- a/src/calibre/gui2/main.py +++ b/src/calibre/gui2/main.py @@ -95,7 +95,7 @@ def init_qt(args): QCoreApplication.setOrganizationName(ORG_NAME) QCoreApplication.setApplicationName(APP_UID) override = 'calibre-gui' if islinux else None - app = Application(args, override_program_name=override) + app = Application(args, override_program_name=override, scan_for_fonts=True) actions = tuple(Main.create_application_menubar()) app.setWindowIcon(QIcon(I('lt.png'))) return app, opts, args, actions