Update QtWebKit user stylesheets when URL changes
This commit is contained in:
parent
39976f543b
commit
fc95fdd593
@ -29,7 +29,7 @@ import os.path
|
|||||||
from PyQt5.QtGui import QFont
|
from PyQt5.QtGui import QFont
|
||||||
from PyQt5.QtWebKit import QWebSettings
|
from PyQt5.QtWebKit import QWebSettings
|
||||||
|
|
||||||
from qutebrowser.config import config, websettings
|
from qutebrowser.config import config, websettings, configutils
|
||||||
from qutebrowser.config.websettings import AttributeInfo as Attr
|
from qutebrowser.config.websettings import AttributeInfo as Attr
|
||||||
from qutebrowser.utils import standarddir, urlutils
|
from qutebrowser.utils import standarddir, urlutils
|
||||||
from qutebrowser.browser import shared
|
from qutebrowser.browser import shared
|
||||||
@ -120,10 +120,13 @@ class WebKitSettings(websettings.AbstractSettings):
|
|||||||
QWebSettings.FantasyFont: QFont.Fantasy,
|
QWebSettings.FantasyFont: QFont.Fantasy,
|
||||||
}
|
}
|
||||||
|
|
||||||
def _set_user_stylesheet(self):
|
def _set_user_stylesheet(self, url=None):
|
||||||
"""Set the generated user-stylesheet."""
|
"""Set the generated user-stylesheet."""
|
||||||
stylesheet = shared.get_user_stylesheet().encode('utf-8')
|
stylesheet = shared.get_user_stylesheet(url=url)
|
||||||
url = urlutils.data_url('text/css;charset=utf-8', stylesheet)
|
if stylesheet is configutils.UNSET:
|
||||||
|
return
|
||||||
|
url = urlutils.data_url('text/css;charset=utf-8',
|
||||||
|
stylesheet.encode('utf-8'))
|
||||||
self._settings.setUserStyleSheetUrl(url)
|
self._settings.setUserStyleSheetUrl(url)
|
||||||
|
|
||||||
def _set_cookie_accept_policy(self):
|
def _set_cookie_accept_policy(self):
|
||||||
@ -152,6 +155,10 @@ class WebKitSettings(websettings.AbstractSettings):
|
|||||||
else:
|
else:
|
||||||
super().update_setting(option)
|
super().update_setting(option)
|
||||||
|
|
||||||
|
def update_for_url(self, url):
|
||||||
|
super().update_for_url(url)
|
||||||
|
self._set_user_stylesheet(url)
|
||||||
|
|
||||||
def init_settings(self):
|
def init_settings(self):
|
||||||
super().init_settings()
|
super().init_settings()
|
||||||
self._set_user_stylesheet()
|
self._set_user_stylesheet()
|
||||||
|
Loading…
Reference in New Issue
Block a user