66 |
66 |
67 menu = QMenu() |
67 menu = QMenu() |
68 menu.addAction(self.tr("Current Page Settings")).setFont(boldFont) |
68 menu.addAction(self.tr("Current Page Settings")).setFont(boldFont) |
69 |
69 |
70 if self._testCurrentPageWebAttribute( |
70 if self._testCurrentPageWebAttribute( |
71 QWebEngineSettings.JavascriptEnabled): |
71 QWebEngineSettings.WebAttribute.JavascriptEnabled): |
72 act = menu.addAction(self.tr("Disable JavaScript (temporarily)"), |
72 act = menu.addAction(self.tr("Disable JavaScript (temporarily)"), |
73 self.__toggleJavaScript) |
73 self.__toggleJavaScript) |
74 else: |
74 else: |
75 act = menu.addAction(self.tr("Enable JavaScript (temporarily)"), |
75 act = menu.addAction(self.tr("Enable JavaScript (temporarily)"), |
76 self.__toggleJavaScript) |
76 self.__toggleJavaScript) |
91 def __updateIcon(self): |
91 def __updateIcon(self): |
92 """ |
92 """ |
93 Private slot to update the icon. |
93 Private slot to update the icon. |
94 """ |
94 """ |
95 if self._testCurrentPageWebAttribute( |
95 if self._testCurrentPageWebAttribute( |
96 QWebEngineSettings.JavascriptEnabled): |
96 QWebEngineSettings.WebAttribute.JavascriptEnabled): |
97 self.setGraphicsEffect(None) |
97 self.setGraphicsEffect(None) |
98 else: |
98 else: |
99 effect = QGraphicsColorizeEffect(self) |
99 effect = QGraphicsColorizeEffect(self) |
100 effect.setColor(Qt.gray) |
100 effect.setColor(Qt.GlobalColor.gray) |
101 self.setGraphicsEffect(effect) |
101 self.setGraphicsEffect(effect) |
102 |
102 |
103 @pyqtSlot() |
103 @pyqtSlot() |
104 def __toggleJavaScript(self): |
104 def __toggleJavaScript(self): |
105 """ |
105 """ |
108 page = self._currentPage() |
108 page = self._currentPage() |
109 if page is None: |
109 if page is None: |
110 return |
110 return |
111 |
111 |
112 current = self._testCurrentPageWebAttribute( |
112 current = self._testCurrentPageWebAttribute( |
113 QWebEngineSettings.JavascriptEnabled) |
113 QWebEngineSettings.WebAttribute.JavascriptEnabled) |
114 self._setCurrentPageWebAttribute(QWebEngineSettings.JavascriptEnabled, |
114 self._setCurrentPageWebAttribute( |
115 not current) |
115 QWebEngineSettings.WebAttribute.JavascriptEnabled, not current) |
116 |
116 |
117 self.__settings[page] = not current |
117 self.__settings[page] = not current |
118 page.navigationRequestAccepted.connect( |
118 page.navigationRequestAccepted.connect( |
119 lambda u, t, mf: self.__navigationRequestAccepted(u, t, mf, page)) |
119 lambda u, t, mf: self.__navigationRequestAccepted(u, t, mf, page)) |
120 |
120 |
130 Note: This is the JavaScript subset of the web browser configuration |
130 Note: This is the JavaScript subset of the web browser configuration |
131 page. |
131 page. |
132 """ |
132 """ |
133 from .JavaScriptSettingsDialog import JavaScriptSettingsDialog |
133 from .JavaScriptSettingsDialog import JavaScriptSettingsDialog |
134 dlg = JavaScriptSettingsDialog(self._window) |
134 dlg = JavaScriptSettingsDialog(self._window) |
135 if dlg.exec() == QDialog.Accepted: |
135 if dlg.exec() == QDialog.DialogCode.Accepted: |
136 self._window.preferencesChanged() |
136 self._window.preferencesChanged() |
137 QTimer.singleShot(500, self.__updateIcon) |
137 QTimer.singleShot(500, self.__updateIcon) |
138 |
138 |
139 def __navigationRequestAccepted(self, url, navigationType, isMainFrame, |
139 def __navigationRequestAccepted(self, url, navigationType, isMainFrame, |
140 page): |
140 page): |