Clean up QWebPage::extension handling.
This commit is contained in:
parent
c79c1f950a
commit
4c78b611eb
@ -21,7 +21,6 @@
|
|||||||
|
|
||||||
import functools
|
import functools
|
||||||
|
|
||||||
import sip
|
|
||||||
from PyQt5.QtCore import pyqtSignal, pyqtSlot, PYQT_VERSION, Qt, QUrl
|
from PyQt5.QtCore import pyqtSignal, pyqtSlot, PYQT_VERSION, Qt, QUrl
|
||||||
from PyQt5.QtGui import QDesktopServices
|
from PyQt5.QtGui import QDesktopServices
|
||||||
from PyQt5.QtNetwork import QNetworkReply
|
from PyQt5.QtNetwork import QNetworkReply
|
||||||
@ -79,16 +78,16 @@ class BrowserPage(QWebPage):
|
|||||||
else:
|
else:
|
||||||
return (True, answer)
|
return (True, answer)
|
||||||
|
|
||||||
def _handle_errorpage(self, opt, out):
|
def _handle_errorpage(self, info, errpage):
|
||||||
"""Display an error page if needed.
|
"""Display an error page if needed.
|
||||||
|
|
||||||
Loosly based on Helpviewer/HelpBrowserWV.py from eric5
|
Loosly based on Helpviewer/HelpBrowserWV.py from eric5
|
||||||
(line 260 @ 5d937eb378dd)
|
(line 260 @ 5d937eb378dd)
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
opt: The QWebPage.ErrorPageExtensionOption instance.
|
info: The QWebPage.ErrorPageExtensionOption instance.
|
||||||
out: The QWebPage.ErrorPageExtensionReturn instance to write return
|
errpage: The QWebPage.ErrorPageExtensionReturn instance, where the
|
||||||
values to.
|
error page will get written to.
|
||||||
|
|
||||||
Return:
|
Return:
|
||||||
False if no error page should be displayed, True otherwise.
|
False if no error page should be displayed, True otherwise.
|
||||||
@ -97,8 +96,6 @@ class BrowserPage(QWebPage):
|
|||||||
(QWebPage.QtNetwork, QNetworkReply.OperationCanceledError),
|
(QWebPage.QtNetwork, QNetworkReply.OperationCanceledError),
|
||||||
(QWebPage.WebKit, 203), # "Loading is handled by the media engine"
|
(QWebPage.WebKit, 203), # "Loading is handled by the media engine"
|
||||||
]
|
]
|
||||||
info = sip.cast(opt, QWebPage.ErrorPageExtensionOption)
|
|
||||||
errpage = sip.cast(out, QWebPage.ErrorPageExtensionReturn)
|
|
||||||
errpage.baseUrl = info.url
|
errpage.baseUrl = info.url
|
||||||
urlstr = info.url.toDisplayString()
|
urlstr = info.url.toDisplayString()
|
||||||
if (info.domain, info.error) == (QWebPage.QtNetwork,
|
if (info.domain, info.error) == (QWebPage.QtNetwork,
|
||||||
@ -119,6 +116,7 @@ class BrowserPage(QWebPage):
|
|||||||
urlstr, info.errorString, info.domain,
|
urlstr, info.errorString, info.domain,
|
||||||
info.error))
|
info.error))
|
||||||
return False
|
return False
|
||||||
|
else:
|
||||||
log.webview.error("Error while loading {}: {}".format(
|
log.webview.error("Error while loading {}: {}".format(
|
||||||
urlstr, info.errorString))
|
urlstr, info.errorString))
|
||||||
log.webview.debug("Error domain: {}, error code: {}".format(
|
log.webview.debug("Error domain: {}, error code: {}".format(
|
||||||
@ -131,24 +129,19 @@ class BrowserPage(QWebPage):
|
|||||||
errpage.encoding = 'utf-8'
|
errpage.encoding = 'utf-8'
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def _handle_multiple_files(self, opt, files):
|
def _handle_multiple_files(self, info, files):
|
||||||
"""Handle uploading of multiple files.
|
"""Handle uploading of multiple files.
|
||||||
|
|
||||||
Loosly based on Helpviewer/HelpBrowserWV.py from eric5.
|
Loosly based on Helpviewer/HelpBrowserWV.py from eric5.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
opt: The ChooseMultipleFilesExtensionOption instance.
|
info: The ChooseMultipleFilesExtensionOption instance.
|
||||||
files: The ChooseMultipleFilesExtensionReturn instance to write
|
files: The ChooseMultipleFilesExtensionReturn instance to write
|
||||||
return values to.
|
return values to.
|
||||||
|
|
||||||
Return:
|
Return:
|
||||||
True on success, the superclass return value on failure.
|
True on success, the superclass return value on failure.
|
||||||
"""
|
"""
|
||||||
info = sip.cast(opt, QWebPage.ChooseMultipleFilesExtensionOption)
|
|
||||||
files = sip.cast(files, QWebPage.ChooseMultipleFilesExtensionReturn)
|
|
||||||
if info is None or files is None:
|
|
||||||
return super().extension(QWebPage.ChooseMultipleFilesExtension,
|
|
||||||
opt, files)
|
|
||||||
suggested_file = ""
|
suggested_file = ""
|
||||||
if opt.suggestedFileNames:
|
if opt.suggestedFileNames:
|
||||||
suggested_file = opt.suggestedFileNames[0]
|
suggested_file = opt.suggestedFileNames[0]
|
||||||
|
Loading…
Reference in New Issue
Block a user