diff options
author | Jonas Ådahl <jadahl@gmail.com> | 2017-07-04 11:56:18 +0800 |
---|---|---|
committer | Jonas Ådahl <jadahl@gmail.com> | 2017-10-05 16:18:43 -0400 |
commit | e0d839aea2836386823eac3c7b8c9a9af56507f2 (patch) | |
tree | 419f9314e19a3e31270a17e3775c4c6f1a7126ec /src/backends/meta-monitor-manager-dummy.c | |
parent | d3efd73429a67de547b76469a21c0b26398c31f5 (diff) | |
download | mutter-e0d839aea2836386823eac3c7b8c9a9af56507f2.tar.gz |
backends/output: Keep a pointer to the monitor manager
Instead of passing it around or fetching the singleton, keep a pointer
to the monitor manager that owns the output. This will eventually be
replaced with a per GPU/graphics card object.
https://bugzilla.gnome.org/show_bug.cgi?id=785381
Diffstat (limited to 'src/backends/meta-monitor-manager-dummy.c')
-rw-r--r-- | src/backends/meta-monitor-manager-dummy.c | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/src/backends/meta-monitor-manager-dummy.c b/src/backends/meta-monitor-manager-dummy.c index 1638f1dff..14cdb3b25 100644 --- a/src/backends/meta-monitor-manager-dummy.c +++ b/src/backends/meta-monitor-manager-dummy.c @@ -89,10 +89,11 @@ create_mode (CrtcModeSpec *spec, } static void -append_monitor (GList **modes, - GList **crtcs, - GList **outputs, - float scale) +append_monitor (MetaMonitorManager *manager, + GList **modes, + GList **crtcs, + GList **outputs, + float scale) { CrtcModeSpec mode_specs[] = { { @@ -140,6 +141,7 @@ append_monitor (GList **modes, number = g_list_length (*outputs) + 1; + output->monitor_manager = manager; output->winsys_id = number; output->name = g_strdup_printf ("LVDS%d", number); output->vendor = g_strdup ("MetaProducts Inc."); @@ -174,10 +176,11 @@ append_monitor (GList **modes, } static void -append_tiled_monitor (GList **modes, - GList **crtcs, - GList **outputs, - int scale) +append_tiled_monitor (MetaMonitorManager *manager, + GList **modes, + GList **crtcs, + GList **outputs, + int scale) { CrtcModeSpec mode_specs[] = { { @@ -242,6 +245,7 @@ append_tiled_monitor (GList **modes, output = g_object_new (META_TYPE_OUTPUT, NULL); + output->monitor_manager = manager; output->winsys_id = number; output->name = g_strdup_printf ("LVDS%d", number); output->vendor = g_strdup ("MetaProducts Inc."); @@ -385,9 +389,10 @@ meta_monitor_manager_dummy_read_current (MetaMonitorManager *manager) for (i = 0; i < num_monitors; i++) { if (tiled_monitors) - append_tiled_monitor (&modes, &crtcs, &outputs, monitor_scales[i]); + append_tiled_monitor (manager, + &modes, &crtcs, &outputs, monitor_scales[i]); else - append_monitor (&modes, &crtcs, &outputs, monitor_scales[i]); + append_monitor (manager, &modes, &crtcs, &outputs, monitor_scales[i]); } manager->modes = modes; |