diff --git a/app/properties.py b/app/properties.py
index eedb24ab..6acb786f 100644
--- a/app/properties.py
+++ b/app/properties.py
@@ -45,7 +45,7 @@ def get_default_settings():
"services_path": "/etc/enigma2/", "user_bouquet_path": "/etc/enigma2/",
"satellites_xml_path": "/etc/tuxbox/", "data_dir_path": DATA_PATH + "enigma2/",
"picons_path": "/usr/share/enigma2/picon", "picons_dir_path": DATA_PATH + "enigma2/picons/",
- "v5_support": False},
+ "v5_support": False, "http_api_support": False},
Profile.NEUTRINO_MP.value: {
"host": "127.0.0.1", "port": "21", "user": "root", "password": "root",
"http_user": "", "http_password": "", "http_port": "80", "http_timeout": 2,
diff --git a/app/ui/main_app_window.py b/app/ui/main_app_window.py
index c8acb7ac..75c21d42 100644
--- a/app/ui/main_app_window.py
+++ b/app/ui/main_app_window.py
@@ -1380,7 +1380,10 @@ class MainAppWindow:
def update_signal(self):
sig = self._http_api.send((HttpRequestType.SIGNAL, None))
next(self._http_api)
- self._signal_level_bar.set_value(sig.get("snr", 0))
+ val = sig.get("snr", 0)
+ self._signal_level_bar.set_value(val if val else 0)
+ self._signal_level_bar.set_visible(val)
+
return self._monitor_signal
def update_service_info(self):
diff --git a/app/ui/settings_dialog.glade b/app/ui/settings_dialog.glade
index f49c84b3..869def98 100644
--- a/app/ui/settings_dialog.glade
+++ b/app/ui/settings_dialog.glade
@@ -681,125 +681,225 @@ Author: Dmitriy Yefremov
5
5
-
diff --git a/app/ui/settings_dialog.py b/app/ui/settings_dialog.py
index f840e926..5c5a59b5 100644
--- a/app/ui/settings_dialog.py
+++ b/app/ui/settings_dialog.py
@@ -55,6 +55,7 @@ class SettingsDialog:
self._enigma_radio_button = builder.get_object("enigma_radio_button")
self._neutrino_radio_button = builder.get_object("neutrino_radio_button")
self._support_ver5_check_button = builder.get_object("support_ver5_check_button")
+ self._support_http_api_check_button = builder.get_object("support_http_api_check_button")
self._settings_stack = builder.get_object("settings_stack")
self._info_bar = builder.get_object("info_bar")
self._message_label = builder.get_object("info_bar_message_label")
@@ -65,6 +66,7 @@ class SettingsDialog:
profile = Profile(self._active_profile)
self._neutrino_radio_button.set_active(profile is Profile.NEUTRINO_MP)
self._support_ver5_check_button.set_sensitive(profile is not Profile.NEUTRINO_MP)
+ self._support_http_api_check_button.set_sensitive(profile is not Profile.NEUTRINO_MP)
self._settings_stack.get_child_by_name(Property.HTTP.value).set_visible(profile is not Profile.NEUTRINO_MP)
def show(self):
@@ -86,6 +88,7 @@ class SettingsDialog:
self._settings_stack.get_child_by_name(Property.HTTP.value).set_visible(profile is not Profile.NEUTRINO_MP)
self.set_profile(profile)
self._support_ver5_check_button.set_sensitive(profile is Profile.ENIGMA_2)
+ self._support_http_api_check_button.set_sensitive(profile is Profile.ENIGMA_2)
def set_profile(self, profile):
self._active_profile = profile.value
@@ -123,6 +126,7 @@ class SettingsDialog:
self._picons_dir_field.set_text(options.get("picons_dir_path", ""))
if Profile(self._active_profile) is Profile.ENIGMA_2:
self._support_ver5_check_button.set_active(options.get("v5_support", False))
+ self._support_http_api_check_button.set_active(options.get("http_api_support", False))
def apply_settings(self, item=None):
profile = Profile.ENIGMA_2 if self._enigma_radio_button.get_active() else Profile.NEUTRINO_MP
@@ -148,6 +152,8 @@ class SettingsDialog:
options["picons_dir_path"] = self._picons_dir_field.get_text()
if profile is Profile.ENIGMA_2:
options["v5_support"] = self._support_ver5_check_button.get_active()
+ options["http_api_support"] = self._support_http_api_check_button.get_active()
+
write_config(self._options)
@run_task