From fb8cf6c8826f13ca2c81c836ef81247a1c8bd770 Mon Sep 17 00:00:00 2001 From: DYefremov Date: Fri, 29 May 2020 16:43:23 +0300 Subject: [PATCH] added youtube-dl options --- app/settings.py | 8 +++ app/ui/settings_dialog.glade | 116 ++++++++++++++++++++++++++++++----- app/ui/settings_dialog.py | 13 ++-- 3 files changed, 117 insertions(+), 20 deletions(-) diff --git a/app/settings.py b/app/settings.py index c430cad5..7a85e46f 100644 --- a/app/settings.py +++ b/app/settings.py @@ -528,6 +528,14 @@ class Settings: def enable_yt_dl(self, value): self._settings["enable_yt_dl"] = value + @property + def enable_yt_dl_update(self): + return self._settings.get("enable_yt_dl_update", Defaults.ENABLE_YT_DL.value) + + @enable_yt_dl_update.setter + def enable_yt_dl_update(self, value): + self._settings["enable_yt_dl_update"] = value + @property def enable_send_to(self): return self._settings.get("enable_send_to", Defaults.ENABLE_SEND_TO.value) diff --git a/app/ui/settings_dialog.glade b/app/ui/settings_dialog.glade index a5351b5e..54505933 100644 --- a/app/ui/settings_dialog.glade +++ b/app/ui/settings_dialog.glade @@ -28,6 +28,7 @@ Author: Dmitriy Yefremov --> + @@ -2923,7 +2924,7 @@ Author: Dmitriy Yefremov - False + True False 5 5 @@ -2932,37 +2933,122 @@ Author: Dmitriy Yefremov 0.019999999552965164 in - + True False 5 5 5 5 + vertical + 5 - + True False - Enables parsing links using youtube-dl to get direct links to media - start - True - Enable support for youtube-dl (experimental) + Enables parsing links using youtube-dl to get direct media links. + + + True + False + start + Enable support for + + + False + True + 0 + + + + + youtube-dl + status-bar-button + True + False + True + start + center + none + https://youtube-dl.org/ + + + True + True + 3 + + + + + True + False + center + EXPERIMENTAL! + + + True + True + 3 + + + + + True + True + Enables parsing links using youtube-dl to get direct links to media + end + center + + + False + True + end + 2 + + - 0 - 0 + True + True + 1 - + True - True - Enables parsing links using youtube-dl to get direct links to media - end + False + False + + + True + False + start + Auto-check for updates + + + True + True + 0 + + + + + True + True + end + center + + + False + True + 1 + + - 1 - 0 + False + True + 2 diff --git a/app/ui/settings_dialog.py b/app/ui/settings_dialog.py index 2ee75beb..196074a3 100644 --- a/app/ui/settings_dialog.py +++ b/app/ui/settings_dialog.py @@ -145,9 +145,10 @@ class SettingsDialog: self._bouquet_hints_switch = builder.get_object("bouquet_hints_switch") self._services_hints_switch = builder.get_object("services_hints_switch") self._lang_combo_box = builder.get_object("lang_combo_box") - # HTTP API + # Extra self._support_http_api_switch = builder.get_object("support_http_api_switch") - self._enable_y_dl_switch = builder.get_object("enable_y_dl_switch") + self._enable_yt_dl_switch = builder.get_object("enable_yt_dl_switch") + self._enable_update_yt_dl_switch = builder.get_object("enable_update_yt_dl_switch") self._enable_send_to_switch = builder.get_object("enable_send_to_switch") self._click_mode_disabled_button = builder.get_object("click_mode_disabled_button") self._click_mode_stream_button = builder.get_object("click_mode_stream_button") @@ -159,7 +160,7 @@ class SettingsDialog: self._click_mode_zap_button.bind_property("sensitive", self._enable_send_to_switch, "sensitive") self._enable_send_to_switch.bind_property("sensitive", builder.get_object("enable_send_to_label"), "sensitive") self._extra_support_grid.bind_property("sensitive", builder.get_object("v5_support_grid"), "sensitive") - self._extra_support_grid.bind_property("sensitive", builder.get_object("bq_naming_grid"), "sensitive") + self._enable_yt_dl_switch.bind_property("active", builder.get_object("yt_dl_update_box"), "sensitive") # Profiles self._profile_view = builder.get_object("profile_tree_view") self._profile_add_button = builder.get_object("profile_add_button") @@ -285,7 +286,8 @@ class SettingsDialog: self._support_ver5_switch.set_active(self._settings.v5_support) self._force_bq_name_switch.set_active(self._settings.force_bq_names) self._support_http_api_switch.set_active(self._settings.http_api_support) - self._enable_y_dl_switch.set_active(self._settings.enable_yt_dl) + self._enable_yt_dl_switch.set_active(self._settings.enable_yt_dl) + self._enable_update_yt_dl_switch.set_active(self._settings.enable_yt_dl_update) self._enable_send_to_switch.set_active(self._settings.enable_send_to) self._set_color_switch.set_active(self._settings.use_colors) new_rgb = Gdk.RGBA() @@ -358,7 +360,8 @@ class SettingsDialog: self._ext_settings.v5_support = self._support_ver5_switch.get_active() self._ext_settings.force_bq_names = self._force_bq_name_switch.get_active() self._ext_settings.http_api_support = self._support_http_api_switch.get_active() - self._ext_settings.enable_yt_dl = self._enable_y_dl_switch.get_active() + self._ext_settings.enable_yt_dl = self._enable_yt_dl_switch.get_active() + self._ext_settings.enable_yt_dl_update = self._enable_update_yt_dl_switch.get_active() self._ext_settings.enable_send_to = self._enable_send_to_switch.get_active() self._ext_settings.default_profile = list(filter(lambda r: r[1], self._profile_view.get_model()))[0][0]