From e7e0aea6958b1419a5e72c85da0e0f920d36fb53 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 7 Jul 2012 09:44:48 +0530 Subject: [PATCH] Set WM_CLASS for the viewers as well --- src/calibre/gui2/__init__.py | 8 ++++---- src/calibre/gui2/lrf_renderer/main.py | 3 ++- src/calibre/gui2/main.py | 5 +++-- src/calibre/gui2/viewer/main.py | 3 ++- 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index 8aa4caf574..cd75f3bb00 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -734,11 +734,11 @@ gui_thread = None qt_app = None class Application(QApplication): - def __init__(self, args, force_calibre_style=False): + def __init__(self, args, force_calibre_style=False, + override_program_name=None): self.file_event_hook = None - if islinux and args[0].endswith(u'calibre'): - args = list(args) - args[0] += '-gui' + if override_program_name: + args = [override_program_name] + args[1:] qargs = [i.encode('utf-8') if isinstance(i, unicode) else i for i in args] QApplication.__init__(self, qargs) global gui_thread, qt_app diff --git a/src/calibre/gui2/lrf_renderer/main.py b/src/calibre/gui2/lrf_renderer/main.py index 0575d106f4..741f6a620d 100644 --- a/src/calibre/gui2/lrf_renderer/main.py +++ b/src/calibre/gui2/lrf_renderer/main.py @@ -309,7 +309,8 @@ def main(args=sys.argv, logger=None): return 1 pid = os.fork() if (islinux or isbsd) else -1 if pid <= 0: - app = Application(args) + override = 'calibre-lrf-viewer' if islinux else None + app = Application(args, override_program_name=override) app.setWindowIcon(QIcon(I('viewer.png'))) QCoreApplication.setOrganizationName(ORG_NAME) QCoreApplication.setApplicationName(APP_UID) diff --git a/src/calibre/gui2/main.py b/src/calibre/gui2/main.py index 9b80b7bddc..94a82989ab 100644 --- a/src/calibre/gui2/main.py +++ b/src/calibre/gui2/main.py @@ -8,7 +8,7 @@ from PyQt4.Qt import (QCoreApplication, QIcon, QObject, QTimer, QPixmap, QSplashScreen, QApplication) from calibre import prints, plugins, force_unicode -from calibre.constants import (iswindows, __appname__, isosx, DEBUG, +from calibre.constants import (iswindows, __appname__, isosx, DEBUG, islinux, filesystem_encoding) from calibre.utils.ipc import gui_socket_address, RC from calibre.gui2 import (ORG_NAME, APP_UID, initialize_file_icon_provider, @@ -58,7 +58,8 @@ def init_qt(args): prints('Using library at', prefs['library_path']) QCoreApplication.setOrganizationName(ORG_NAME) QCoreApplication.setApplicationName(APP_UID) - app = Application(args) + override = 'calibre-gui' if islinux else None + app = Application(args, override_program_name=override) actions = tuple(Main.create_application_menubar()) app.setWindowIcon(QIcon(I('lt.png'))) return app, opts, args, actions diff --git a/src/calibre/gui2/viewer/main.py b/src/calibre/gui2/viewer/main.py index 4a39a6ae8d..b08262d707 100644 --- a/src/calibre/gui2/viewer/main.py +++ b/src/calibre/gui2/viewer/main.py @@ -1006,7 +1006,8 @@ def main(args=sys.argv): except: open_at = None if pid <= 0: - app = Application(args) + override = 'calibre-ebook-viewer' if islinux else None + app = Application(args, override_program_name=override) app.setWindowIcon(QIcon(I('viewer.png'))) QApplication.setOrganizationName(ORG_NAME) QApplication.setApplicationName(APP_UID)