diff --git a/app/settings.py b/app/settings.py index 7a85e46f..ef5004bb 100644 --- a/app/settings.py +++ b/app/settings.py @@ -650,6 +650,24 @@ class Settings: def is_darwin(self): return IS_DARWIN + # *********** Download dialog *********** # + + @property + def use_http(self): + return self._settings.get("use_http", True) + + @use_http.setter + def use_http(self, value): + self._settings["use_http"] = value + + @property + def remove_unused_bouquets(self): + return self._settings.get("remove_unused_bouquets", True) + + @remove_unused_bouquets.setter + def remove_unused_bouquets(self, value): + self._settings["remove_unused_bouquets"] = value + if __name__ == "__main__": pass diff --git a/app/ui/download_dialog.glade b/app/ui/download_dialog.glade index 2404bc6e..ac726110 100644 --- a/app/ui/download_dialog.glade +++ b/app/ui/download_dialog.glade @@ -357,6 +357,7 @@ Author: Dmitriy Yefremov False True True + False @@ -387,6 +388,7 @@ Author: Dmitriy Yefremov True Use http to reload data in the receiver. True + False diff --git a/app/ui/download_dialog.py b/app/ui/download_dialog.py index 7961b962..f7c5c764 100644 --- a/app/ui/download_dialog.py +++ b/app/ui/download_dialog.py @@ -24,6 +24,8 @@ class DownloadDialog: "on_settings_button": self.on_settings_button, "on_settings": self.on_settings, "on_profile_changed": self.on_profile_changed, + "on_use_http_state_set": self.on_use_http_state_set, + "on_remove_unused_bouquets_toggled": self.on_remove_unused_bouquets_toggled, "on_info_bar_close": self.on_info_bar_close} builder = Gtk.Builder() @@ -64,7 +66,6 @@ class DownloadDialog: self.update_profiles() self.init_ui_settings() - @run_idle def init_ui_settings(self): self._host_entry.set_text(self._settings.host) self._data_path_entry.set_text(self._settings.data_local_path) @@ -72,7 +73,8 @@ class DownloadDialog: self._webtv_radio_button.set_visible(not is_enigma) self._http_radio_button.set_visible(is_enigma) self._use_http_box.set_visible(is_enigma) - self._use_http_switch.set_active(is_enigma) + self._use_http_switch.set_active(is_enigma and self._settings.use_http) + self._remove_unused_check_button.set_active(self._settings.remove_unused_bouquets) def update_profiles(self): self._profile_combo_box.remove_all() @@ -143,6 +145,12 @@ class DownloadDialog: self._s_type = self._settings.setting_type self.init_ui_settings() + def on_use_http_state_set(self, button, state): + self._settings.use_http = state + + def on_remove_unused_bouquets_toggled(self, button): + self._settings.remove_unused_bouquets = button.get_active() + def on_info_bar_close(self, bar=None, resp=None): self._info_bar.set_visible(False)