diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index b07dacf572..1ddc4743d2 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -753,7 +753,10 @@ class Application(QApplication): if (islinux or isbsd) and st in ('windows', 'motif', 'cde'): from PyQt4.Qt import QStyleFactory styles = set(map(unicode, QStyleFactory.keys())) - if 'Plastique' in styles and os.environ.get('KDE_FULL_SESSION', + if 'QtCurve' in styles and os.environ.get('KDE_FULL_SESSION', + False): + self.setStyle('QtCurve') + elif 'Plastique' in styles and os.environ.get('KDE_FULL_SESSION', False): self.setStyle('Plastique') elif 'Cleanlooks' in styles: diff --git a/src/calibre/gui2/preferences/look_feel.py b/src/calibre/gui2/preferences/look_feel.py index 2c675d1ee2..294d7a644c 100644 --- a/src/calibre/gui2/preferences/look_feel.py +++ b/src/calibre/gui2/preferences/look_feel.py @@ -6,7 +6,7 @@ __copyright__ = '2010, Kovid Goyal ' __docformat__ = 'restructuredtext en' from PyQt4.Qt import (QApplication, QFont, QFontInfo, QFontDialog, - QAbstractListModel, Qt, QIcon, QKeySequence) + QAbstractListModel, Qt, QIcon, QKeySequence, QStyleFactory) from calibre.gui2.preferences import ConfigWidgetBase, test_widget, CommaSeparatedList from calibre.gui2.preferences.look_feel_ui import Ui_Form @@ -104,6 +104,11 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form): r('widget_style', gprefs, restart_required=True, choices= [(_('System default'), 'system'), (_('Calibre style'), 'calibre')]) + styles = set(map(unicode, QStyleFactory.keys())) + if 'QtCurve' not in styles: + # Can happen in linux + for x in ('opt', 'label'): + getattr(self, x+'_widget_style').setVisible(False) r('cover_flow_queue_length', config, restart_required=True) diff --git a/src/calibre/gui2/preferences/look_feel.ui b/src/calibre/gui2/preferences/look_feel.ui index 792dd25ec1..0162d429fe 100644 --- a/src/calibre/gui2/preferences/look_feel.ui +++ b/src/calibre/gui2/preferences/look_feel.ui @@ -182,7 +182,7 @@ - + User interface &style (needs restart):