[gnome-flashback] monitor-manager: add get_monitor_for_connector



commit bfc17546b4e5eb89aeb431badde919e459da8e62
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date:   Thu Sep 28 16:32:23 2017 +0300

    monitor-manager: add get_monitor_for_connector

 backends/gf-monitor-manager.c |   22 ++++++++++++++++++++++
 backends/gf-monitor-manager.h |    3 +++
 2 files changed, 25 insertions(+), 0 deletions(-)
---
diff --git a/backends/gf-monitor-manager.c b/backends/gf-monitor-manager.c
index e566e6c..d4195b9 100644
--- a/backends/gf-monitor-manager.c
+++ b/backends/gf-monitor-manager.c
@@ -2549,6 +2549,28 @@ gf_monitor_manager_get_monitor_for_output (GfMonitorManager *manager,
   return -1;
 }
 
+gint
+gf_monitor_manager_get_monitor_for_connector (GfMonitorManager *manager,
+                                              const gchar      *connector)
+{
+  GList *l;
+
+  for (l = manager->monitors; l; l = l->next)
+    {
+      GfMonitor *monitor = l->data;
+
+      if (gf_monitor_is_active (monitor) &&
+          g_str_equal (connector, gf_monitor_get_connector (monitor)))
+        {
+          GfOutput *main_output = gf_monitor_get_main_output (monitor);
+
+          return main_output->crtc->logical_monitor->number;
+        }
+    }
+
+  return -1;
+}
+
 gboolean
 gf_monitor_manager_get_is_builtin_display_on (GfMonitorManager *manager)
 {
diff --git a/backends/gf-monitor-manager.h b/backends/gf-monitor-manager.h
index c7ed394..dad55b2 100644
--- a/backends/gf-monitor-manager.h
+++ b/backends/gf-monitor-manager.h
@@ -40,6 +40,9 @@ typedef struct _GfMonitorManager GfMonitorManager;
 gint                      gf_monitor_manager_get_monitor_for_output            (GfMonitorManager          
*manager,
                                                                                 guint                      
id);
 
+gint                      gf_monitor_manager_get_monitor_for_connector         (GfMonitorManager          
*manager,
+                                                                                const gchar               
*connector);
+
 gboolean                  gf_monitor_manager_get_is_builtin_display_on         (GfMonitorManager          
*manager);
 
 GfMonitorSwitchConfigType gf_monitor_manager_get_switch_config                 (GfMonitorManager          
*manager);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]