diff options
author | Marco Trevisan (Treviño) <mail@3v1n0.net> | 2018-11-29 23:29:08 -0500 |
---|---|---|
committer | Marco Trevisan (Treviño) <mail@3v1n0.net> | 2021-07-22 15:38:04 +0200 |
commit | 1ab79c79a5290dc5034f0835bfe3252278710e7c (patch) | |
tree | 36610964a26d767ff776e0af34d83bb1301851d0 /src/backends/meta-monitor-manager.c | |
parent | 7c87c1c24f3fdf1e640aca2725072effb281ae84 (diff) | |
download | mutter-1ab79c79a5290dc5034f0835bfe3252278710e7c.tar.gz |
monitor-manager: Derive configured global scale using common value
When deriving the global scale from config, we need to ensure that the value
is matching all the monitor configurations.
If not, we should fallback to the normal scale value.
Fixes https://gitlab.gnome.org/GNOME/mutter/issues/407
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/336>
Diffstat (limited to 'src/backends/meta-monitor-manager.c')
-rw-r--r-- | src/backends/meta-monitor-manager.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/backends/meta-monitor-manager.c b/src/backends/meta-monitor-manager.c index 71ff8a2a3..1d42cad21 100644 --- a/src/backends/meta-monitor-manager.c +++ b/src/backends/meta-monitor-manager.c @@ -219,11 +219,17 @@ static float derive_configured_global_scale (MetaMonitorManager *manager, MetaMonitorsConfig *config) { - MetaLogicalMonitorConfig *logical_monitor_config; + GList *l; - logical_monitor_config = config->logical_monitor_configs->data; + for (l = config->logical_monitor_configs; l; l = l->next) + { + MetaLogicalMonitorConfig *monitor_config = l->data; - return logical_monitor_config->scale; + if (is_global_scale_matching_in_config (config, monitor_config->scale)) + return monitor_config->scale; + } + + return 1.0; } static float |