WebBrowser/WebBrowserPage.py

changeset 6692
c104c120e043
parent 6662
0002926e71d3
child 6695
0a51887c13cd
equal deleted inserted replaced
6691:973b0d0ecc87 6692:c104c120e043
26 from WebBrowser.WebBrowserWindow import WebBrowserWindow 26 from WebBrowser.WebBrowserWindow import WebBrowserWindow
27 27
28 from .JavaScript.ExternalJsObject import ExternalJsObject 28 from .JavaScript.ExternalJsObject import ExternalJsObject
29 29
30 from .Tools.WebHitTestResult import WebHitTestResult 30 from .Tools.WebHitTestResult import WebHitTestResult
31 from .Tools import Scripts
31 32
32 import Preferences 33 import Preferences
33 from Globals import qVersionTuple 34 from Globals import qVersionTuple
34 35
35 36
80 WebBrowserWindow.networkManager().proxyAuthentication) 81 WebBrowserWindow.networkManager().proxyAuthentication)
81 82
82 self.fullScreenRequested.connect(self.__fullScreenRequested) 83 self.fullScreenRequested.connect(self.__fullScreenRequested)
83 84
84 self.urlChanged.connect(self.__urlChanged) 85 self.urlChanged.connect(self.__urlChanged)
86
87 try:
88 self.contentsSizeChanged.connect(self.__contentsSizeChanged)
89 except AttributeError:
90 # defined for Qt >= 5.7
91 pass
85 92
86 self.__printer = None 93 self.__printer = None
87 self.__badSite = False 94 self.__badSite = False
88 95
89 if qVersionTuple() >= (5, 10, 0): 96 if qVersionTuple() >= (5, 10, 0):
464 self.print(printer, printCallback) 471 self.print(printer, printCallback)
465 472
466 loop.exec_() 473 loop.exec_()
467 return resultDict["res"] 474 return resultDict["res"]
468 475
476 def __contentsSizeChanged(self, size):
477 """
478 Private slot to work around QWebEnginePage not scrolling to anchors
479 when opened in a background tab.
480
481 @param size changed contents size (unused)
482 @type QSize
483 """
484 fragment = self.url().fragment()
485 self.runJavaScript(Scripts.scrollToAnchor(fragment))
486
469 ############################################## 487 ##############################################
470 ## Methods below deal with JavaScript messages 488 ## Methods below deal with JavaScript messages
471 ############################################## 489 ##############################################
472 490
473 def javaScriptConsoleMessage(self, level, message, lineNumber, sourceId): 491 def javaScriptConsoleMessage(self, level, message, lineNumber, sourceId):

eric ide

mercurial