|
@@ -87,22 +87,13 @@ class MainWindow(QMainWindow):
|
|
|
self._persistantEnginesModel = PersistentEnginesModel()
|
|
|
|
|
|
# Profiles
|
|
|
- self.profilesSettings = QSettings(
|
|
|
- SETTINGS_PATH, 'profiles', self
|
|
|
- )
|
|
|
self.profiles = {
|
|
|
# list with searxqt.models.profiles.ProfileItem's
|
|
|
- 'profiles': self.profilesSettings.value('profiles', list(), list),
|
|
|
-
|
|
|
+ 'profiles': [],
|
|
|
# str: profile id
|
|
|
- 'default': self.profilesSettings.value(
|
|
|
- 'default', ProfileItem(), ProfileItem
|
|
|
- )
|
|
|
+ 'default': ProfileItem()
|
|
|
}
|
|
|
|
|
|
- # Shared settings
|
|
|
- self.settings = QSettings(SETTINGS_PATH, 'shared', self)
|
|
|
-
|
|
|
self.instanceFilter = InstanceModelFilter(
|
|
|
self._persistantInstancesModel, self
|
|
|
)
|
|
@@ -178,6 +169,7 @@ class MainWindow(QMainWindow):
|
|
|
|
|
|
self.instanceSelecter.instanceChanged.connect(self.__instanceChanged)
|
|
|
|
|
|
+ self.loadProfiles() # read profiles.conf
|
|
|
if not self.profiles['default'].id:
|
|
|
# Don't have a default profile set.
|
|
|
dialog = ProfileChooserDialog(self.profiles)
|
|
@@ -211,6 +203,7 @@ class MainWindow(QMainWindow):
|
|
|
about.show(self)
|
|
|
|
|
|
def _openProfileChooser(self):
|
|
|
+ self.loadProfiles() # read profiles.conf
|
|
|
dialog = ProfileChooserDialog(self.profiles, self._currentProfile)
|
|
|
if dialog.exec():
|
|
|
if self._currentProfile:
|
|
@@ -235,13 +228,7 @@ class MainWindow(QMainWindow):
|
|
|
def _openSettingsWindow(self):
|
|
|
if not self._settingsWindow:
|
|
|
self._settingsWindow = SettingsWindow(self._settingsModel)
|
|
|
- self._settingsWindow.resize(
|
|
|
- self.settings.value(
|
|
|
- 'settingsWindowSize',
|
|
|
- QSize(400, 400),
|
|
|
- QSize
|
|
|
- )
|
|
|
- )
|
|
|
+ self._settingsWindow.resize(self.__lastSettingsWindowSize)
|
|
|
self._settingsWindow.show()
|
|
|
self._settingsWindow.activateWindow() # Bring it to front
|
|
|
|
|
@@ -364,32 +351,56 @@ class MainWindow(QMainWindow):
|
|
|
def loadSharedSettings(self):
|
|
|
""" Load shared settings
|
|
|
"""
|
|
|
+ settings = QSettings(SETTINGS_PATH, 'shared', self)
|
|
|
self.resize(
|
|
|
- self.settings.value('windowSize', QSize(), QSize)
|
|
|
+ settings.value('windowSize', QSize(), QSize)
|
|
|
)
|
|
|
|
|
|
self.splitter.restoreState(
|
|
|
- self.settings.value('splitterState', QByteArray(), QByteArray)
|
|
|
+ settings.value('splitterState', QByteArray(), QByteArray)
|
|
|
+ )
|
|
|
+
|
|
|
+ self.__lastSettingsWindowSize = settings.value(
|
|
|
+ 'settingsWindowSize',
|
|
|
+ QSize(400, 400),
|
|
|
+ QSize
|
|
|
+ )
|
|
|
+
|
|
|
+ def loadProfiles(self):
|
|
|
+ """ Load profiles.conf
|
|
|
+ """
|
|
|
+ profilesSettings = QSettings(
|
|
|
+ SETTINGS_PATH, 'profiles', self
|
|
|
)
|
|
|
+ self.profiles = {
|
|
|
+ # list with searxqt.models.profiles.ProfileItem's
|
|
|
+ 'profiles': profilesSettings.value('profiles', list(), list),
|
|
|
+
|
|
|
+ # str: profile id
|
|
|
+ 'default': profilesSettings.value(
|
|
|
+ 'default', ProfileItem(), ProfileItem
|
|
|
+ )
|
|
|
+ }
|
|
|
|
|
|
def saveProfiles(self):
|
|
|
- self.profilesSettings.setValue('profiles', self.profiles['profiles'])
|
|
|
- self.profilesSettings.setValue('default', self.profiles['default'])
|
|
|
+ profilesSettings = QSettings(
|
|
|
+ SETTINGS_PATH, 'profiles', self
|
|
|
+ )
|
|
|
+ profilesSettings.setValue('profiles', self.profiles['profiles'])
|
|
|
+ profilesSettings.setValue('default', self.profiles['default'])
|
|
|
|
|
|
def saveSettings(self):
|
|
|
- # profiles.conf
|
|
|
- self.saveProfiles()
|
|
|
-
|
|
|
# save current profile
|
|
|
if self._currentProfile:
|
|
|
self.saveProfile()
|
|
|
|
|
|
# shared.conf
|
|
|
- self.settings.setValue('windowSize', self.size())
|
|
|
- self.settings.setValue('splitterState', self.splitter.saveState())
|
|
|
+ settings = QSettings(SETTINGS_PATH, 'shared', self)
|
|
|
+ settings.setValue('windowSize', self.size())
|
|
|
+ settings.setValue('splitterState', self.splitter.saveState())
|
|
|
|
|
|
if self._settingsWindow:
|
|
|
- self.settings.setValue(
|
|
|
+ settings.setValue(
|
|
|
'settingsWindowSize',
|
|
|
self._settingsWindow.size()
|
|
|
)
|