9 |
9 |
10 from __future__ import unicode_literals |
10 from __future__ import unicode_literals |
11 |
11 |
12 from PyQt5.QtCore import pyqtSlot |
12 from PyQt5.QtCore import pyqtSlot |
13 from PyQt5.QtWidgets import QDialog |
13 from PyQt5.QtWidgets import QDialog |
14 try: |
|
15 from PyQt5.QtWebKit import QWebSettings |
|
16 except ImportError: |
|
17 QWebSettings = None |
|
18 |
14 |
19 from .ConfigurationPageBase import ConfigurationPageBase |
15 from .ConfigurationPageBase import ConfigurationPageBase |
20 from .Ui_SecurityPage import Ui_SecurityPage |
16 from .Ui_SecurityPage import Ui_SecurityPage |
21 |
17 |
22 import Preferences |
18 import Preferences |
36 super(SecurityPage, self).__init__() |
32 super(SecurityPage, self).__init__() |
37 self.setupUi(self) |
33 self.setupUi(self) |
38 self.setObjectName("SecurityPage") |
34 self.setObjectName("SecurityPage") |
39 |
35 |
40 self.__configDlg = configDialog |
36 self.__configDlg = configDialog |
|
37 self.__displayMode = None |
41 |
38 |
42 # set initial values |
39 # set initial values |
43 self.savePasswordsCheckBox.setChecked( |
40 self.savePasswordsCheckBox.setChecked( |
44 Preferences.getUser("SavePasswords")) |
41 Preferences.getUser("SavePasswords")) |
45 self.masterPasswordCheckBox.setChecked( |
42 self.masterPasswordCheckBox.setChecked( |
46 Preferences.getUser("UseMasterPassword")) |
43 Preferences.getUser("UseMasterPassword")) |
47 self.masterPasswordButton.setEnabled( |
44 self.masterPasswordButton.setEnabled( |
48 Preferences.getUser("UseMasterPassword")) |
45 Preferences.getUser("UseMasterPassword")) |
49 if QWebSettings and hasattr(QWebSettings, "DnsPrefetchEnabled"): |
|
50 self.dnsPrefetchCheckBox.setChecked( |
|
51 Preferences.getHelp("DnsPrefetchEnabled")) |
|
52 else: |
|
53 self.dnsPrefetchCheckBox.setEnabled(False) |
|
54 |
46 |
55 self.__newPassword = "" |
47 self.__newPassword = "" |
56 self.__oldUseMasterPassword = Preferences.getUser("UseMasterPassword") |
48 self.__oldUseMasterPassword = Preferences.getUser("UseMasterPassword") |
|
49 |
|
50 def setMode(self, displayMode): |
|
51 """ |
|
52 Public method to perform mode dependent setups. |
|
53 |
|
54 @param displayMode mode of the configuration dialog |
|
55 (ConfigurationWidget.DefaultMode, |
|
56 ConfigurationWidget.HelpBrowserMode, |
|
57 ConfigurationWidget.WebBrowserMode) |
|
58 """ |
|
59 from ..ConfigurationDialog import ConfigurationWidget |
|
60 assert displayMode in ( |
|
61 ConfigurationWidget.DefaultMode, |
|
62 ConfigurationWidget.HelpBrowserMode, |
|
63 ConfigurationWidget.WebBrowserMode |
|
64 ) |
|
65 |
|
66 self.__displayMode = displayMode |
|
67 if self.__displayMode == ConfigurationWidget.HelpBrowserMode: |
|
68 try: |
|
69 from PyQt5.QtWebKit import QWebSettings |
|
70 if QWebSettings and \ |
|
71 hasattr(QWebSettings, "DnsPrefetchEnabled"): |
|
72 self.dnsPrefetchCheckBox.setChecked( |
|
73 Preferences.getHelp("DnsPrefetchEnabled")) |
|
74 except ImportError: |
|
75 self.dnsPrefetchCheckBox.setEnabled(False) |
|
76 # TODO: add config for default Mode |
|
77 else: |
|
78 self.dnsPrefetchCheckBox.setEnabled(False) |
|
79 self.dnsGroup.hide() |
57 |
80 |
58 def save(self): |
81 def save(self): |
59 """ |
82 """ |
60 Public slot to save the Help Viewers configuration. |
83 Public slot to save the Help Viewers configuration. |
61 """ |
84 """ |