backends: add 'monitors-updated-internal' signal to only update internal state

Adding an internal signal and use it to update the internal state before
emitting "monitors-changed" which will be repeated by the screen to the world.

https://bugzilla.gnome.org/show_bug.cgi?id=788860
This commit is contained in:
Marco Trevisan (Treviño)
2017-10-12 19:14:40 -05:00
parent fad5657eda
commit b31e545c9d
9 changed files with 43 additions and 11 deletions

View File

@ -1617,7 +1617,7 @@ meta_input_settings_init (MetaInputSettings *settings)
g_hash_table_new_full (NULL, NULL, NULL, (GDestroyNotify) device_mapping_info_free);
priv->monitor_manager = g_object_ref (meta_monitor_manager_get ());
g_signal_connect (priv->monitor_manager, "monitors-changed",
g_signal_connect (priv->monitor_manager, "monitors-changed-internal",
G_CALLBACK (monitors_changed_cb), settings);
#ifdef HAVE_LIBWACOM