From 0ddb27709df24bf3f6049e592e650402f7365717 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Wed, 3 Aug 2016 16:29:46 +0200 Subject: [PATCH] Re-add geometry saving code to WebEngine inspector --- .../browser/webengine/webengineinspector.py | 51 ++++++++++--------- 1 file changed, 26 insertions(+), 25 deletions(-) diff --git a/qutebrowser/browser/webengine/webengineinspector.py b/qutebrowser/browser/webengine/webengineinspector.py index 64f3c7d5b..364fb36fb 100644 --- a/qutebrowser/browser/webengine/webengineinspector.py +++ b/qutebrowser/browser/webengine/webengineinspector.py @@ -45,6 +45,8 @@ class WebInspector(QWidget): """A web inspector for QtWebEngine which stores its geometry.""" + # FIXME:qtwebengine unify this with the WebKit inspector as far as possible + def __init__(self, parent=None): super().__init__(parent) self.port = None @@ -52,6 +54,7 @@ class WebInspector(QWidget): self._layout = miscwidgets.WrapperLayout(self._view, self) self.setFocusProxy(self._view) self._view.setParent(self) + self._load_state_geometry() def load(self): envvar = 'QTWEBENGINE_REMOTE_DEBUGGING' @@ -63,29 +66,27 @@ class WebInspector(QWidget): url = QUrl('http://localhost:{}/'.format(port)) self._view.load(url) - # self._load_state_geometry() + def closeEvent(self, e): + """Save the geometry when closed.""" + state_config = objreg.get('state-config') + data = bytes(self.saveGeometry()) + geom = base64.b64encode(data).decode('ASCII') + state_config['geometry']['inspector'] = geom + super().closeEvent(e) - # def closeEvent(self, e): - # """Save the geometry when closed.""" - # state_config = objreg.get('state-config') - # data = bytes(self.saveGeometry()) - # geom = base64.b64encode(data).decode('ASCII') - # state_config['geometry']['inspector'] = geom - # super().closeEvent(e) - - # def _load_state_geometry(self): - # """Load the geometry from the state file.""" - # state_config = objreg.get('state-config') - # try: - # data = state_config['geometry']['inspector'] - # geom = base64.b64decode(data, validate=True) - # except KeyError: - # # First start - # pass - # except binascii.Error: - # log.misc.exception("Error while reading geometry") - # else: - # log.init.debug("Loading geometry from {}".format(geom)) - # ok = self.restoreGeometry(geom) - # if not ok: - # log.init.warning("Error while loading geometry.") + def _load_state_geometry(self): + """Load the geometry from the state file.""" + state_config = objreg.get('state-config') + try: + data = state_config['geometry']['inspector'] + geom = base64.b64decode(data, validate=True) + except KeyError: + # First start + pass + except binascii.Error: + log.misc.exception("Error while reading geometry") + else: + log.init.debug("Loading geometry from {}".format(geom)) + ok = self.restoreGeometry(geom) + if not ok: + log.init.warning("Error while loading geometry.")