ui: stop polling for single monitor groups

parent df794cd5
......@@ -78,10 +78,9 @@ namespace TunerDisplays {
page.add_page(monitor_page);
DisplaysContext.controller.monitor_settings_requested.connect(show_monitor_settings);
page.notify["list"].connect(setup_single_monitor_groups);
add_page(page);
Idle.add(() => {
return setup_single_monitor_groups();
});
setup_single_monitor_groups();
}
private void load_css() {
......@@ -122,27 +121,25 @@ namespace TunerDisplays {
single_monitor_context.changed.connect(controller.refresh_from_monitors);
}
private bool setup_single_monitor_groups() {
private void setup_single_monitor_groups() {
if (single_monitor_groups_ready)
return false;
return;
var panel_page = page.list as Tuner.PanelPage;
if (panel_page == null)
return true;
return;
var content = panel_page.content;
if (content == null)
return true;
var panel_content = content as Tuner.PanelContent;
if (panel_content == null)
return true;
if (panel_content == null) {
panel_page.notify["content"].connect(setup_single_monitor_groups);
return;
}
find_single_monitor_groups(panel_content);
single_monitor_groups_ready = true;
update_single_monitor_groups();
DisplaysContext.controller.changed.connect(update_single_monitor_groups);
return false;
}
private void find_single_monitor_groups(Tuner.PanelContent content) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment