diff --git a/src/calibre/constants.py b/src/calibre/constants.py index d43d11beec..d562a61cf5 100644 --- a/src/calibre/constants.py +++ b/src/calibre/constants.py @@ -34,6 +34,7 @@ isfrozen = hasattr(sys, 'frozen') isunix = isosx or islinux isportable = os.environ.get('CALIBRE_PORTABLE_BUILD', None) is not None ispy3 = sys.version_info.major > 2 +isxp = iswindows and sys.getwindowsversion().major < 6 try: preferred_encoding = locale.getpreferredencoding() diff --git a/src/calibre/gui2/viewer/config.py b/src/calibre/gui2/viewer/config.py index 0d67ba098f..75284930b7 100644 --- a/src/calibre/gui2/viewer/config.py +++ b/src/calibre/gui2/viewer/config.py @@ -11,7 +11,7 @@ import zipfile from PyQt4.Qt import QFont, QVariant, QDialog -from calibre.constants import iswindows +from calibre.constants import iswindows, isxp from calibre.utils.config import Config, StringConfig from calibre.gui2.shortcuts import ShortcutConfig from calibre.gui2.viewer.config_ui import Ui_Dialog @@ -113,7 +113,10 @@ class ConfigDialog(QDialog, Ui_Dialog): p = self.tabs.widget(1) p.layout().addWidget(self.shortcut_config) self.opt_fit_images.setChecked(opts.fit_images) - + if isxp: + self.hyphenate.setVisible(False) + self.hyphenate_default_lang.setVisible(False) + self.hyphenate_label.setVisible(False) def accept(self, *args): if self.shortcut_config.is_editing: diff --git a/src/calibre/gui2/viewer/config.ui b/src/calibre/gui2/viewer/config.ui index 76532a8cfc..48b77e0b34 100644 --- a/src/calibre/gui2/viewer/config.ui +++ b/src/calibre/gui2/viewer/config.ui @@ -196,7 +196,7 @@ - + Default &language for hyphenation: diff --git a/src/calibre/gui2/viewer/documentview.py b/src/calibre/gui2/viewer/documentview.py index 8d1016d1dc..602f024de3 100644 --- a/src/calibre/gui2/viewer/documentview.py +++ b/src/calibre/gui2/viewer/documentview.py @@ -23,6 +23,7 @@ from calibre.gui2.viewer.position import PagePosition from calibre.gui2.viewer.config import config, ConfigDialog from calibre.ebooks.oeb.display.webview import load_html from calibre.utils.config import tweaks +from calibre.constants import isxp # }}} def load_builtin_fonts(): @@ -163,7 +164,8 @@ class Document(QWebPage): # {{{ @pyqtSignature("") def init_hyphenate(self): - if self.hyphenate and getattr(self, 'loaded_lang', ''): + # Qt fails to render soft hyphens correctly on windows xp + if not isxp and self.hyphenate and getattr(self, 'loaded_lang', ''): self.javascript('do_hyphenation("%s")'%self.loaded_lang) def _pass_json_value_getter(self):