From df48faedfe524fd1069d9f582b36b0e4fb54015f Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 5 Aug 2014 16:03:55 +0530 Subject: [PATCH] E-book viewer: Resize the metadata overlay view when the viewer window is resized --- src/calibre/gui2/viewer/ui.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/calibre/gui2/viewer/ui.py b/src/calibre/gui2/viewer/ui.py index 5aa8ecdebe..641329fd27 100644 --- a/src/calibre/gui2/viewer/ui.py +++ b/src/calibre/gui2/viewer/ui.py @@ -62,7 +62,7 @@ class Reference(QLineEdit): # {{{ class Metadata(QWebView): # {{{ def __init__(self, parent): - QWebView.__init__(self, parent.centralWidget()) + QWebView.__init__(self, parent) s = self.settings() s.setAttribute(s.JavascriptEnabled, False) self.page().setLinkDelegationPolicy(self.page().DelegateAllLinks) @@ -71,11 +71,11 @@ class Metadata(QWebView): # {{{ palette.setBrush(QPalette.Base, Qt.transparent) self.page().setPalette(palette) self.css = P('templates/book_details.css', data=True).decode('utf-8') - - self.view = parent.centralwidget - self.setGeometry(self.view.geometry()) self.setVisible(False) + def update_layout(self): + self.setGeometry(0, 0, self.parent().width(), self.parent().height()) + def show_opf(self, opf, ext=''): from calibre.gui2.book_details import render_html from calibre.ebooks.metadata.book.render import mi_to_html @@ -89,7 +89,7 @@ class Metadata(QWebView): # {{{ def setVisible(self, x): if x: - self.setGeometry(self.view.geometry()) + self.update_layout() QWebView.setVisible(self, x) def paintEvent(self, ev): @@ -217,11 +217,16 @@ class Main(MainWindow): self.create_actions() - self.metadata = Metadata(self) + self.metadata = Metadata(self.centralwidget) self.history = History(self.action_back, self.action_forward) self.resize(653, 746) + def resizeEvent(self, ev): + if self.metadata.isVisible(): + self.metadata.update_layout() + return MainWindow.resizeEvent(self, ev) + def create_actions(self): def a(name, text, icon, tb=None, sc_name=None, menu_name=None, popup_mode=QToolButton.MenuButtonPopup): name = 'action_' + name