16 |
16 |
17 import os |
17 import os |
18 |
18 |
19 from PyQt5.QtCore import pyqtSlot, pyqtSignal, QObject, QT_TRANSLATE_NOOP, \ |
19 from PyQt5.QtCore import pyqtSlot, pyqtSignal, QObject, QT_TRANSLATE_NOOP, \ |
20 QUrl, QBuffer, QIODevice, QFileInfo, Qt, QTimer, QEvent, \ |
20 QUrl, QBuffer, QIODevice, QFileInfo, Qt, QTimer, QEvent, \ |
21 QRect, QFile, QPoint, QByteArray, qVersion |
21 QRect, QFile, QPoint, QByteArray |
22 from PyQt5.QtGui import QDesktopServices, QClipboard, QMouseEvent, QColor, \ |
22 from PyQt5.QtGui import QDesktopServices, QClipboard, QMouseEvent, QColor, \ |
23 QPalette |
23 QPalette |
24 from PyQt5.QtWidgets import qApp, QStyle, QMenu, QApplication, QInputDialog, \ |
24 from PyQt5.QtWidgets import qApp, QStyle, QMenu, QApplication, QInputDialog, \ |
25 QLineEdit, QLabel, QToolTip, QFrame, QDialog |
25 QLineEdit, QLabel, QToolTip, QFrame, QDialog |
26 from PyQt5.QtPrintSupport import QPrinter, QPrintDialog |
26 from PyQt5.QtPrintSupport import QPrinter, QPrintDialog |
599 localCAList = QSslCertificate.fromData(certificateDict[server]) |
600 localCAList = QSslCertificate.fromData(certificateDict[server]) |
600 for cert in certList: |
601 for cert in certList: |
601 if cert in localCAList: |
602 if cert in localCAList: |
602 return True |
603 return True |
603 |
604 |
604 if qVersion() >= "5.0.0": |
605 if qVersionTuple() >= (5, 0, 0): |
605 for cert in certList: |
606 for cert in certList: |
606 if cert.isBlacklisted(): |
607 if cert.isBlacklisted(): |
607 return False |
608 return False |
608 else: |
609 else: |
609 for cert in certList: |
610 for cert in certList: |
1653 searchUrl = QUrl(self.page().mainFrame().baseUrl().resolved( |
1654 searchUrl = QUrl(self.page().mainFrame().baseUrl().resolved( |
1654 QUrl(formElement.attribute("action")))) |
1655 QUrl(formElement.attribute("action")))) |
1655 ## if searchUrl.scheme() != "http": |
1656 ## if searchUrl.scheme() != "http": |
1656 ## return |
1657 ## return |
1657 |
1658 |
1658 if qVersion() >= "5.0.0": |
1659 if qVersionTuple() >= (5, 0, 0): |
1659 from PyQt5.QtCore import QUrlQuery |
1660 from PyQt5.QtCore import QUrlQuery |
1660 searchUrlQuery = QUrlQuery(searchUrl) |
1661 searchUrlQuery = QUrlQuery(searchUrl) |
1661 searchEngines = {} |
1662 searchEngines = {} |
1662 inputFields = formElement.findAll("input") |
1663 inputFields = formElement.findAll("input") |
1663 for inputField in inputFields.toList(): |
1664 for inputField in inputFields.toList(): |
1668 if type_ == "submit": |
1669 if type_ == "submit": |
1669 searchEngines[value] = name |
1670 searchEngines[value] = name |
1670 elif type_ == "text": |
1671 elif type_ == "text": |
1671 if inputField == element: |
1672 if inputField == element: |
1672 value = "{searchTerms}" |
1673 value = "{searchTerms}" |
1673 if qVersion() >= "5.0.0": |
1674 if qVersionTuple() >= (5, 0, 0): |
1674 searchUrlQuery.addQueryItem(name, value) |
1675 searchUrlQuery.addQueryItem(name, value) |
1675 else: |
1676 else: |
1676 searchUrl.addQueryItem(name, value) |
1677 searchUrl.addQueryItem(name, value) |
1677 elif type_ == "checkbox" or type_ == "radio": |
1678 elif type_ == "checkbox" or type_ == "radio": |
1678 if inputField.evaluateJavaScript("this.checked"): |
1679 if inputField.evaluateJavaScript("this.checked"): |
1679 if qVersion() >= "5.0.0": |
1680 if qVersionTuple() >= (5, 0, 0): |
1680 searchUrlQuery.addQueryItem(name, value) |
1681 searchUrlQuery.addQueryItem(name, value) |
1681 else: |
1682 else: |
1682 searchUrl.addQueryItem(name, value) |
1683 searchUrl.addQueryItem(name, value) |
1683 elif type_ == "hidden": |
1684 elif type_ == "hidden": |
1684 if qVersion() >= "5.0.0": |
1685 if qVersionTuple() >= (5, 0, 0): |
1685 searchUrlQuery.addQueryItem(name, value) |
1686 searchUrlQuery.addQueryItem(name, value) |
1686 else: |
1687 else: |
1687 searchUrl.addQueryItem(name, value) |
1688 searchUrl.addQueryItem(name, value) |
1688 |
1689 |
1689 selectFields = formElement.findAll("select") |
1690 selectFields = formElement.findAll("select") |
1694 if selectedIndex == -1: |
1695 if selectedIndex == -1: |
1695 continue |
1696 continue |
1696 |
1697 |
1697 options = selectField.findAll("option") |
1698 options = selectField.findAll("option") |
1698 value = options.at(selectedIndex).toPlainText() |
1699 value = options.at(selectedIndex).toPlainText() |
1699 if qVersion() >= "5.0.0": |
1700 if qVersionTuple() >= (5, 0, 0): |
1700 searchUrlQuery.addQueryItem(name, value) |
1701 searchUrlQuery.addQueryItem(name, value) |
1701 else: |
1702 else: |
1702 searchUrl.addQueryItem(name, value) |
1703 searchUrl.addQueryItem(name, value) |
1703 |
1704 |
1704 ok = True |
1705 ok = True |
1711 |
1712 |
1712 if not ok: |
1713 if not ok: |
1713 return |
1714 return |
1714 |
1715 |
1715 if searchEngines[searchEngine] != "": |
1716 if searchEngines[searchEngine] != "": |
1716 if qVersion() >= "5.0.0": |
1717 if qVersionTuple() >= (5, 0, 0): |
1717 searchUrlQuery.addQueryItem( |
1718 searchUrlQuery.addQueryItem( |
1718 searchEngines[searchEngine], searchEngine) |
1719 searchEngines[searchEngine], searchEngine) |
1719 else: |
1720 else: |
1720 searchUrl.addQueryItem( |
1721 searchUrl.addQueryItem( |
1721 searchEngines[searchEngine], searchEngine) |
1722 searchEngines[searchEngine], searchEngine) |
1731 QLineEdit.Normal, |
1732 QLineEdit.Normal, |
1732 engineName) |
1733 engineName) |
1733 if not ok: |
1734 if not ok: |
1734 return |
1735 return |
1735 |
1736 |
1736 if qVersion() >= "5.0.0": |
1737 if qVersionTuple() >= (5, 0, 0): |
1737 searchUrl.setQuery(searchUrlQuery) |
1738 searchUrl.setQuery(searchUrlQuery) |
1738 |
1739 |
1739 from .OpenSearch.OpenSearchEngine import OpenSearchEngine |
1740 from .OpenSearch.OpenSearchEngine import OpenSearchEngine |
1740 engine = OpenSearchEngine() |
1741 engine = OpenSearchEngine() |
1741 engine.setName(engineName) |
1742 engine.setName(engineName) |
1742 engine.setDescription(engineName) |
1743 engine.setDescription(engineName) |
1743 if qVersion() >= "5.0.0": |
1744 if qVersionTuple() >= (5, 0, 0): |
1744 engine.setSearchUrlTemplate( |
1745 engine.setSearchUrlTemplate( |
1745 searchUrl.toDisplayString(QUrl.FullyDecoded)) |
1746 searchUrl.toDisplayString(QUrl.FullyDecoded)) |
1746 else: |
1747 else: |
1747 engine.setSearchUrlTemplate(searchUrl.toString()) |
1748 engine.setSearchUrlTemplate(searchUrl.toString()) |
1748 engine.setImage(self.icon().pixmap(16, 16).toImage()) |
1749 engine.setImage(self.icon().pixmap(16, 16).toImage()) |
1870 """ |
1871 """ |
1871 Protected method to handle wheel events. |
1872 Protected method to handle wheel events. |
1872 |
1873 |
1873 @param evt reference to the wheel event (QWheelEvent) |
1874 @param evt reference to the wheel event (QWheelEvent) |
1874 """ |
1875 """ |
1875 if qVersion() >= "5.0.0": |
1876 if qVersionTuple() >= (5, 0, 0): |
1876 delta = evt.angleDelta().y() |
1877 delta = evt.angleDelta().y() |
1877 else: |
1878 else: |
1878 delta = evt.delta() |
1879 delta = evt.delta() |
1879 if evt.modifiers() & Qt.ControlModifier: |
1880 if evt.modifiers() & Qt.ControlModifier: |
1880 if delta < 0: |
1881 if delta < 0: |