Mon, 01 Oct 2012 19:44:40 +0200
Made the fiveth set of Qt5 compatibility changes (some of the previous changes are backed out due to changes in PyQt4).
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
1509
c0b5e693b0eb
Updated copyright for 2012.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1415
diff
changeset
|
3 | # Copyright (c) 2010 - 2012 Detlev Offenbach <detlev@die-offenbachs.de> |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing the URL bar widget. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
2078
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
10 | from PyQt4.QtCore import pyqtSlot, Qt, QPointF, QUrl, QDateTime, qVersion |
2084
d3f083dd0222
Made the fiveth set of Qt5 compatibility changes (some of the previous changes are backed out due to changes in PyQt4).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2080
diff
changeset
|
11 | from PyQt4.QtGui import QColor, QPalette, QLinearGradient, QIcon, QDialog, QApplication |
798
5c1786fad576
Fixed an issue with Qt installations that don't support SSL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
12 | try: |
1310
7fdcfa822e3e
Extended debugger to ignore exceptions occuring in lines having a '__IGNORE_EXCEPTION__' line flag set.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1233
diff
changeset
|
13 | from PyQt4.QtNetwork import QSslCertificate # __IGNORE_EXCEPTION__ |
798
5c1786fad576
Fixed an issue with Qt installations that don't support SSL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
14 | except ImportError: |
5c1786fad576
Fixed an issue with Qt installations that don't support SSL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
15 | QSslCertificate = None # __IGNORE_WARNING__ |
1170
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
16 | from PyQt4.QtWebKit import QWebSettings, QWebPage |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | from E5Gui.E5LineEdit import E5LineEdit |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | from E5Gui.E5LineEditButton import E5LineEditButton |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
21 | import Helpviewer.HelpWindow |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
22 | |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | from .FavIconLabel import FavIconLabel |
658
2856f7ea6780
Started implementing the SSL info display.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
657
diff
changeset
|
24 | from .SslLabel import SslLabel |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
25 | from .BookmarkInfoDialog import BookmarkInfoDialog |
1670
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
26 | from .BookmarkActionSelectionDialog import BookmarkActionSelectionDialog |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | |
1415
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
28 | from Helpviewer.Feeds.FeedsDialog import FeedsDialog |
1730
5d7ce61b64aa
Added code to record the timestamp a bookmark was added and visited.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1670
diff
changeset
|
29 | from Helpviewer.Bookmarks.BookmarkNode import BookmarkNode |
1415
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
30 | |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | import UI.PixmapCache |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | import Preferences |
753
e19a516f0a97
Continued implementing the certificate manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
661
diff
changeset
|
33 | import Utilities |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
35 | |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | class UrlBar(E5LineEdit): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | Class implementing a line edit for entering URLs. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | """ |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
40 | def __init__(self, mainWindow, parent=None): |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | Constructor |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | @param mainWindow reference to the main window (HelpWindow) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | @param parent reference to the parent widget (HelpBrowser) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | """ |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
47 | E5LineEdit.__init__(self, parent) |
1233
a376303e0fc0
Fixed a display string.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1170
diff
changeset
|
48 | self.setInactiveText(self.trUtf8("Enter the URL here.")) |
a376303e0fc0
Fixed a display string.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1170
diff
changeset
|
49 | self.setWhatsThis(self.trUtf8("Enter the URL here.")) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | self.__mw = mainWindow |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | self.__browser = None |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | self.__privateMode = QWebSettings.globalSettings().testAttribute( |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | QWebSettings.PrivateBrowsingEnabled) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | |
1106
3e57cd52e0f6
Added icons to the Mercurial extensions menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
981
diff
changeset
|
56 | self.__bmActiveIcon = UI.PixmapCache.getIcon("bookmark16.png") |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
57 | self.__bmInactiveIcon = QIcon(self.__bmActiveIcon.pixmap(16, 16, QIcon.Disabled)) |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
58 | |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | self.__favicon = FavIconLabel(self) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60 | self.addWidget(self.__favicon, E5LineEdit.LeftSide) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | |
658
2856f7ea6780
Started implementing the SSL info display.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
657
diff
changeset
|
62 | self.__sslLabel = SslLabel(self) |
657
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
63 | self.addWidget(self.__sslLabel, E5LineEdit.LeftSide) |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
64 | self.__sslLabel.setVisible(False) |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
65 | |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66 | self.__privacyButton = E5LineEditButton(self) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | self.__privacyButton.setIcon(UI.PixmapCache.getIcon("privateBrowsing.png")) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | self.addWidget(self.__privacyButton, E5LineEdit.RightSide) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | self.__privacyButton.setVisible(self.__privateMode) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70 | |
1415
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
71 | self.__rssButton = E5LineEditButton(self) |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
72 | self.__rssButton.setIcon(UI.PixmapCache.getIcon("rss16.png")) |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
73 | self.addWidget(self.__rssButton, E5LineEdit.RightSide) |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
74 | self.__rssButton.setVisible(False) |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
75 | |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
76 | self.__bookmarkButton = E5LineEditButton(self) |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
77 | self.addWidget(self.__bookmarkButton, E5LineEdit.RightSide) |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
78 | self.__bookmarkButton.setVisible(False) |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
79 | |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | self.__clearButton = E5LineEditButton(self) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | self.__clearButton.setIcon(UI.PixmapCache.getIcon("clearLeft.png")) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82 | self.addWidget(self.__clearButton, E5LineEdit.RightSide) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83 | self.__clearButton.setVisible(False) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
85 | self.__bookmarkButton.clicked[()].connect(self.__showBookmarkInfo) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | self.__privacyButton.clicked[()].connect(self.__privacyClicked) |
1415
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
87 | self.__rssButton.clicked[()].connect(self.__rssClicked) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | self.__clearButton.clicked[()].connect(self.clear) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | self.__mw.privacyChanged.connect(self.__privacyButton.setVisible) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
90 | self.textChanged.connect(self.__textChanged) |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
91 | |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
92 | Helpviewer.HelpWindow.HelpWindow.bookmarksManager().entryChanged.connect( |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
93 | self.__bookmarkChanged) |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
94 | Helpviewer.HelpWindow.HelpWindow.bookmarksManager().entryAdded.connect( |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
95 | self.__bookmarkChanged) |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
96 | Helpviewer.HelpWindow.HelpWindow.bookmarksManager().entryRemoved.connect( |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
97 | self.__bookmarkChanged) |
1670
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
98 | Helpviewer.HelpWindow.HelpWindow.speedDial().pagesChanged.connect( |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
99 | self.__bookmarkChanged) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
100 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
101 | def setBrowser(self, browser): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
102 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | Public method to set the browser connection. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
105 | @param browser reference to the browser widegt (HelpBrowser) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
107 | self.__browser = browser |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
108 | self.__favicon.setBrowser(browser) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
109 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | self.__browser.urlChanged.connect(self.__browserUrlChanged) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | self.__browser.loadProgress.connect(self.update) |
657
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
112 | self.__browser.loadFinished.connect(self.__loadFinished) |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
113 | self.__browser.loadStarted.connect(self.__loadStarted) |
658
2856f7ea6780
Started implementing the SSL info display.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
657
diff
changeset
|
114 | |
2856f7ea6780
Started implementing the SSL info display.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
657
diff
changeset
|
115 | self.__sslLabel.clicked[()].connect(self.__browser.page().showSslInfo) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
116 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
117 | def browser(self): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
119 | Public method to get the associated browser (HelpBrowser) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
120 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | return self.__browser |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
122 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | def __browserUrlChanged(self, url): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
124 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
125 | Private slot to handle a URL change of the associated browser. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
127 | @param url new URL of the browser (QUrl) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
128 | """ |
1670
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
129 | strUrl = url.toString() |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
130 | if strUrl in ["eric:speeddial", "eric:home", "about:blank"]: |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
131 | strUrl = "" |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
132 | |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
133 | if self.text() != strUrl: |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
134 | self.setText(strUrl) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
135 | self.setCursorPosition(0) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | |
657
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
137 | def __loadStarted(self): |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
138 | """ |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
139 | Private slot to perform actions before the page is loaded. |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
140 | """ |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
141 | self.__sslLabel.setVisible(False) |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
142 | self.__bookmarkButton.setVisible(False) |
657
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
143 | |
1670
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
144 | def __checkBookmark(self): |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
145 | """ |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
146 | Private slot to check the current URL for the bookmarked state. |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
147 | """ |
1730
5d7ce61b64aa
Added code to record the timestamp a bookmark was added and visited.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1670
diff
changeset
|
148 | manager = Helpviewer.HelpWindow.HelpWindow.bookmarksManager() |
5d7ce61b64aa
Added code to record the timestamp a bookmark was added and visited.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1670
diff
changeset
|
149 | if manager.bookmarkForUrl(self.__browser.url()) is not None: |
5d7ce61b64aa
Added code to record the timestamp a bookmark was added and visited.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1670
diff
changeset
|
150 | self.__bookmarkButton.setIcon(self.__bmActiveIcon) |
1731
56cf9c150dbf
Added code to write the timestamps to the Netscape bookmarks file and to record a timestamp for the last modification.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1730
diff
changeset
|
151 | bookmarks = manager.bookmarksForUrl(self.__browser.url()) |
56cf9c150dbf
Added code to write the timestamps to the Netscape bookmarks file and to record a timestamp for the last modification.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1730
diff
changeset
|
152 | for bookmark in bookmarks: |
56cf9c150dbf
Added code to write the timestamps to the Netscape bookmarks file and to record a timestamp for the last modification.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1730
diff
changeset
|
153 | manager.setTimestamp(bookmark, BookmarkNode.TsVisited, |
56cf9c150dbf
Added code to write the timestamps to the Netscape bookmarks file and to record a timestamp for the last modification.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1730
diff
changeset
|
154 | QDateTime.currentDateTime()) |
1730
5d7ce61b64aa
Added code to record the timestamp a bookmark was added and visited.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1670
diff
changeset
|
155 | elif Helpviewer.HelpWindow.HelpWindow.speedDial()\ |
5d7ce61b64aa
Added code to record the timestamp a bookmark was added and visited.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1670
diff
changeset
|
156 | .pageForUrl(self.__browser.url()).url != "": |
5d7ce61b64aa
Added code to record the timestamp a bookmark was added and visited.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1670
diff
changeset
|
157 | self.__bookmarkButton.setIcon(self.__bmActiveIcon) |
5d7ce61b64aa
Added code to record the timestamp a bookmark was added and visited.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1670
diff
changeset
|
158 | else: |
1670
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
159 | self.__bookmarkButton.setIcon(self.__bmInactiveIcon) |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
160 | |
657
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
161 | def __loadFinished(self, ok): |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
162 | """ |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
163 | Private slot to set some data after the page was loaded. |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
164 | |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
165 | @param ok flag indicating a successful load (boolean) |
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
166 | """ |
981
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
167 | try: |
1665
b248526d3a1b
Reworked some stuff in the web browser to use Qt resources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1558
diff
changeset
|
168 | if self.__browser.url().scheme() in ["eric", "about"]: |
981
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
169 | self.__bookmarkButton.setVisible(False) |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
170 | else: |
1670
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
171 | self.__checkBookmark() |
981
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
172 | self.__bookmarkButton.setVisible(True) |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
173 | |
1415
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
174 | if ok: |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
175 | self.__rssButton.setVisible(self.__browser.checkRSS()) |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
176 | |
981
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
177 | if ok and \ |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
178 | self.__browser.url().scheme() == "https" and \ |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
179 | QSslCertificate is not None: |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
180 | sslInfo = self.__browser.page().getSslInfo() |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
181 | if sslInfo is not None: |
2078
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
182 | if qVersion() >= "5.0.0": |
2080
4b33165dd55b
Made the third set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2078
diff
changeset
|
183 | org = Utilities.html_encode(Utilities.decodeString( |
2078
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
184 | ", ".join(sslInfo.subjectInfo(QSslCertificate.Organization)))) |
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
185 | else: |
2080
4b33165dd55b
Made the third set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2078
diff
changeset
|
186 | org = Utilities.html_encode(Utilities.decodeString( |
2078
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
187 | sslInfo.subjectInfo(QSslCertificate.Organization))) |
657
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
188 | if org == "": |
2078
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
189 | if qVersion() >= "5.0.0": |
2080
4b33165dd55b
Made the third set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2078
diff
changeset
|
190 | cn = Utilities.html_encode(Utilities.decodeString( |
2078
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
191 | ", ".join( |
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
192 | sslInfo.subjectInfo(QSslCertificate.CommonName)))) |
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
193 | else: |
2080
4b33165dd55b
Made the third set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2078
diff
changeset
|
194 | cn = Utilities.html_encode(Utilities.decodeString( |
2078
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
195 | sslInfo.subjectInfo(QSslCertificate.CommonName))) |
981
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
196 | if cn != "": |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
197 | org = cn.split(".", 1)[1] |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
198 | if org == "": |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
199 | org = self.trUtf8("Unknown") |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
200 | self.__sslLabel.setText(" {0} ".format(org)) |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
201 | self.__sslLabel.setVisible(True) |
2078
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
202 | if qVersion() >= "5.0.0": |
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
203 | valid = not sslInfo.isBlacklisted() |
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
204 | else: |
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
205 | valid = sslInfo.isValid() |
9f4a45741622
Made the second set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2077
diff
changeset
|
206 | self.__sslLabel.setValidity(valid) |
981
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
207 | return |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
208 | |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
209 | self.__sslLabel.setVisible(False) |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
210 | except RuntimeError: |
8217c9d312c3
Added code to handle an issue shutting down the web browser while it is still loading a page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
211 | pass |
657
099d1ab9073e
Added the SSL info label to the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
653
diff
changeset
|
212 | |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
213 | def setPrivateMode(self, on): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
214 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
215 | Public method to set the private mode. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
216 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
217 | @param on flag indicating the privacy state (boolean) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
218 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
219 | self.__privateMode = on |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
220 | self.__privacyButton.setVisible(on) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
221 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
222 | def __privacyClicked(self): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
223 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
224 | Private slot to handle the click of the private mode button. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
225 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
226 | self.__mw.setPrivateMode(False) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
227 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
228 | def __textChanged(self, txt): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
229 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
230 | Private slot to handle changes of the text. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
231 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
232 | @param txt current text (string) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
233 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
234 | self.__clearButton.setVisible(txt != "") |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
235 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | def preferencesChanged(self): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
238 | Public slot to handle a change of preferences. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | self.update() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
242 | def __showBookmarkInfo(self): |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
243 | """ |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
244 | Private slot to show a dialog with some bookmark info. |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
245 | """ |
1670
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
246 | url = self.__browser.url() |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
247 | dlg = BookmarkActionSelectionDialog(url) |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
248 | if dlg.exec_() == QDialog.Accepted: |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
249 | action = dlg.getAction() |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
250 | if action == BookmarkActionSelectionDialog.AddBookmark: |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
251 | self.__browser.addBookmark() |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
252 | elif action == BookmarkActionSelectionDialog.EditBookmark: |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
253 | bookmark = Helpviewer.HelpWindow.HelpWindow.bookmarksManager()\ |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
254 | .bookmarkForUrl(url) |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
255 | dlg = BookmarkInfoDialog(bookmark, self.__browser) |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
256 | dlg.exec_() |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
257 | elif action == BookmarkActionSelectionDialog.AddSpeeddial: |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
258 | Helpviewer.HelpWindow.HelpWindow.speedDial().addPage( |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
259 | url, self.__browser.title()) |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
260 | elif action == BookmarkActionSelectionDialog.RemoveSpeeddial: |
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
261 | Helpviewer.HelpWindow.HelpWindow.speedDial().removePage(url) |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
262 | |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
263 | @pyqtSlot() |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
264 | def __bookmarkChanged(self): |
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
265 | """ |
1670
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
266 | Private slot to handle bookmark or speed dial changes. |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
267 | """ |
1670
6fd889391d2c
Added a Speed Dial to the web browser including the capability to select the first ten pages by pressing Meta+1 to Meta+0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
268 | self.__checkBookmark() |
661
f9d49e0c2522
Added code to show some bookmark data from the URL bar.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
658
diff
changeset
|
269 | |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
270 | def paintEvent(self, evt): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
271 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
272 | Protected method handling a paint event. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
273 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
274 | @param evt reference to the paint event (QPaintEvent) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
275 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
276 | if self.__privateMode: |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
277 | backgroundColor = QColor(220, 220, 220) # light gray |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
278 | foregroundColor = Qt.black |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
279 | else: |
2084
d3f083dd0222
Made the fiveth set of Qt5 compatibility changes (some of the previous changes are backed out due to changes in PyQt4).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2080
diff
changeset
|
280 | backgroundColor = QApplication.palette().color(QPalette.Base) |
d3f083dd0222
Made the fiveth set of Qt5 compatibility changes (some of the previous changes are backed out due to changes in PyQt4).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2080
diff
changeset
|
281 | foregroundColor = QApplication.palette().color(QPalette.Text) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
282 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
283 | if self.__browser is not None: |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
284 | p = self.palette() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
285 | progress = self.__browser.progress() |
1558
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
286 | if progress == 0 or progress == 100: |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
287 | if self.__browser.url().scheme() == "https": |
1558
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
288 | if QSslCertificate is not None: |
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
289 | if self.__browser.page().hasValidSslInfo(): |
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
290 | backgroundColor = Preferences.getHelp("SaveUrlColor") |
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
291 | else: |
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
292 | backgroundColor = Preferences.getHelp("SaveUrlColor") |
826
2e3e2055e715
Fixed a few PEP 8 related issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
798
diff
changeset
|
293 | p.setBrush(QPalette.Base, backgroundColor) |
2e3e2055e715
Fixed a few PEP 8 related issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
798
diff
changeset
|
294 | p.setBrush(QPalette.Text, foregroundColor) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
295 | else: |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
296 | if self.__browser.url().scheme() == "https": |
1558
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
297 | if QSslCertificate is not None: |
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
298 | if self.__browser.page().hasValidSslInfo(): |
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
299 | backgroundColor = Preferences.getHelp("SaveUrlColor") |
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
300 | else: |
754120837dd8
Extended the check for acceptable SSL certificates for indication via the URL entry field.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
301 | backgroundColor = Preferences.getHelp("SaveUrlColor") |
2084
d3f083dd0222
Made the fiveth set of Qt5 compatibility changes (some of the previous changes are backed out due to changes in PyQt4).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2080
diff
changeset
|
302 | highlight = QApplication.palette().color(QPalette.Highlight) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
303 | r = (highlight.red() + 2 * backgroundColor.red()) // 3 |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
304 | g = (highlight.green() + 2 * backgroundColor.green()) // 3 |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
305 | b = (highlight.blue() + 2 * backgroundColor.blue()) // 3 |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
306 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
307 | loadingColor = QColor(r, g, b) |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
308 | if abs(loadingColor.lightness() - backgroundColor.lightness()) < 20: |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
309 | # special handling for special color schemes (e.g Gaia) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
310 | r = (2 * highlight.red() + backgroundColor.red()) // 3 |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
311 | g = (2 * highlight.green() + backgroundColor.green()) // 3 |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
312 | b = (2 * highlight.blue() + backgroundColor.blue()) // 3 |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
313 | loadingColor = QColor(r, g, b) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
314 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
315 | gradient = QLinearGradient(QPointF(0, 0), QPointF(self.width(), 0)) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
316 | gradient.setColorAt(0, loadingColor) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
317 | gradient.setColorAt(progress / 100 - 0.000001, loadingColor) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
318 | gradient.setColorAt(progress / 100, backgroundColor) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
319 | p.setBrush(QPalette.Base, gradient) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
320 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
321 | self.setPalette(p) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
322 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
323 | E5LineEdit.paintEvent(self, evt) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
324 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
325 | def focusOutEvent(self, evt): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
326 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
327 | Protected method to handle focus out event. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
328 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
329 | @param evt reference to the focus event (QFocusEvent) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
330 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
331 | if self.text() == "" and self.__browser is not None: |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
332 | self.__browserUrlChanged(self.__browser.url()) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
333 | E5LineEdit.focusOutEvent(self, evt) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
334 | |
1170
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
335 | def mousePressEvent(self, evt): |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
336 | """ |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
337 | Protected method called by a mouse press event. |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
338 | |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
339 | @param evt reference to the mouse event (QMouseEvent) |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
340 | """ |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
341 | if evt.button() == Qt.XButton1: |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
342 | self.__mw.currentBrowser().pageAction(QWebPage.Back).trigger() |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
343 | elif evt.button() == Qt.XButton2: |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
344 | self.__mw.currentBrowser().pageAction(QWebPage.Forward).trigger() |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
345 | else: |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
346 | super().mousePressEvent(evt) |
a3731e520b28
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1106
diff
changeset
|
347 | |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
348 | def mouseDoubleClickEvent(self, evt): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
349 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
350 | Protected method to handle mouse double click events. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
351 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
352 | @param evt reference to the mouse event (QMouseEvent) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
353 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
354 | if evt.button() == Qt.LeftButton: |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
355 | self.selectAll() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
356 | else: |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
357 | E5LineEdit.mouseDoubleClickEvent(self, evt) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
358 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
359 | def keyPressEvent(self, evt): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
360 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
361 | Protected method to handle key presses. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
362 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
363 | @param evt reference to the key press event (QKeyEvent) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
364 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
365 | if evt.key() == Qt.Key_Escape and self.__browser is not None: |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
366 | self.setText(str(self.__browser.url().toEncoded(), encoding="utf-8")) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
367 | self.selectAll() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
368 | return |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
369 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
370 | currentText = self.text().strip() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
371 | if evt.key() in [Qt.Key_Enter, Qt.Key_Return] and \ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
372 | not currentText.lower().startswith("http://"): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
373 | append = "" |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
374 | if evt.modifiers() == Qt.KeyboardModifiers(Qt.ControlModifier): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
375 | append = ".com" |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
376 | elif evt.modifiers() == \ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
377 | Qt.KeyboardModifiers(Qt.ControlModifier | Qt.ShiftModifier): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
378 | append = ".org" |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
379 | elif evt.modifiers() == Qt.KeyboardModifiers(Qt.ShiftModifier): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
380 | append = ".net" |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
381 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
382 | if append != "": |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
383 | url = QUrl("http://www." + currentText) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
384 | host = url.host() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
385 | if not host.lower().endswith(append): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
386 | host += append |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
387 | url.setHost(host) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
388 | self.setText(url.toString()) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
389 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
390 | E5LineEdit.keyPressEvent(self, evt) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
391 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
392 | def dragEnterEvent(self, evt): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
393 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
394 | Protected method to handle drag enter events. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
395 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
396 | @param evt reference to the drag enter event (QDragEnterEvent) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
397 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
398 | mimeData = evt.mimeData() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
399 | if mimeData.hasUrls() or mimeData.hasText(): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
400 | evt.acceptProposedAction() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
401 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
402 | E5LineEdit.dragEnterEvent(self, evt) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
403 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
404 | def dropEvent(self, evt): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
405 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
406 | Protected method to handle drop events. |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
407 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
408 | @param evt reference to the drop event (QDropEvent) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
409 | """ |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
410 | mimeData = evt.mimeData() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
411 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
412 | url = QUrl() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
413 | if mimeData.hasUrls(): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
414 | url = mimeData.urls()[0] |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
415 | elif mimeData.hasText(): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
416 | url = QUrl.fromEncoded(mimeData.text().encode(), QUrl.TolerantMode) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
417 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
418 | if url.isEmpty() or not url.isValid(): |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
419 | E5LineEdit.dropEvent(self, evt) |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
420 | return |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
421 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
422 | self.setText(str(url.toEncoded(), encoding="utf-8")) |
653
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
423 | self.selectAll() |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
424 | |
0540f3c52b46
Changed the web browser to give it a more modern look.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
425 | evt.acceptProposedAction() |
1415
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
426 | |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
427 | def __rssClicked(self): |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
428 | """ |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
429 | Private slot to handle clicking the RSS icon. |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
430 | """ |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
431 | feeds = self.__browser.getRSS() |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
432 | dlg = FeedsDialog(feeds, self.__browser) |
28fa9633d57e
Added a dialog to show RSS feeds.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1367
diff
changeset
|
433 | dlg.exec_() |