diff --git a/src/calibre/gui2/tweak_book/preview.py b/src/calibre/gui2/tweak_book/preview.py index 5c236ca050..7964e53900 100644 --- a/src/calibre/gui2/tweak_book/preview.py +++ b/src/calibre/gui2/tweak_book/preview.py @@ -20,7 +20,8 @@ from threading import Thread from calibre import prints from calibre.constants import ( - FAKE_HOST, FAKE_PROTOCOL, __version__, is_running_from_develop + FAKE_HOST, FAKE_PROTOCOL, __version__, is_running_from_develop, ismacos, + iswindows ) from calibre.ebooks.oeb.base import OEB_DOCS, XHTML_MIME, serialize from calibre.ebooks.oeb.polish.parsing import parse @@ -252,6 +253,7 @@ def get_editor_settings(tprefs): 'bg': get_color('preview_background', dark_color), 'fg': get_color('preview_foreground', dark_text_color), 'link': get_color('preview_link_color', dark_link_color), + 'os': 'windows' if iswindows else ('macos' if ismacos else 'linux'), } diff --git a/src/pyj/editor.pyj b/src/pyj/editor.pyj index 6be92a4a3e..95e1c7fc0a 100644 --- a/src/pyj/editor.pyj +++ b/src/pyj/editor.pyj @@ -208,11 +208,13 @@ def load_mathjax(): if document.body: + settings = JSON.parse(window.navigator.userAgent.split('|')[1]) + css = '[data-in-split-mode="1"] [data-is-block="1"]:hover { cursor: pointer !important; border-top: solid 5px green !important }' + if settings.os is 'macos': + # See settings.pyj for reason for webkit-hyphenate-character + css += '\n* { -webkit-hyphenate-character: "-" !important }\n' document.body.addEventListener('click', onclick, True) - document.documentElement.appendChild(E.style( - type='text/css', - '[data-in-split-mode="1"] [data-is-block="1"]:hover { cursor: pointer !important; border-top: solid 5px green !important }' - )) + document.documentElement.appendChild(E.style(type='text/css', css)) fix_fullscreen_svg_images() if check_for_maths():