mirror of
https://github.com/brl/mutter.git
synced 2025-06-19 11:34:14 +00:00
color-manager: Add ready state
Ready means it has established the connection to colord and can operate. Will be used by tests to make sure tests don't fail due to race conditions when connecting to colord. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2164>
This commit is contained in:
@ -29,4 +29,7 @@ struct _MetaColorManagerClass
|
|||||||
|
|
||||||
CdClient * meta_color_manager_get_cd_client (MetaColorManager *color_manager);
|
CdClient * meta_color_manager_get_cd_client (MetaColorManager *color_manager);
|
||||||
|
|
||||||
|
META_EXPORT_TEST
|
||||||
|
gboolean meta_color_manager_is_ready (MetaColorManager *color_manager);
|
||||||
|
|
||||||
#endif /* META_COLOR_MANAGER_PRIVATE_H */
|
#endif /* META_COLOR_MANAGER_PRIVATE_H */
|
||||||
|
@ -74,6 +74,8 @@ typedef struct _MetaColorManagerPrivate
|
|||||||
GHashTable *devices;
|
GHashTable *devices;
|
||||||
|
|
||||||
MetaDbusSettingsDaemonColor *gsd_color;
|
MetaDbusSettingsDaemonColor *gsd_color;
|
||||||
|
|
||||||
|
gboolean is_ready;
|
||||||
} MetaColorManagerPrivate;
|
} MetaColorManagerPrivate;
|
||||||
|
|
||||||
G_DEFINE_TYPE_WITH_PRIVATE (MetaColorManager, meta_color_manager, G_TYPE_OBJECT)
|
G_DEFINE_TYPE_WITH_PRIVATE (MetaColorManager, meta_color_manager, G_TYPE_OBJECT)
|
||||||
@ -203,6 +205,8 @@ cd_client_connect_cb (GObject *source_object,
|
|||||||
g_signal_connect (monitor_manager, "monitors-changed-internal",
|
g_signal_connect (monitor_manager, "monitors-changed-internal",
|
||||||
G_CALLBACK (on_monitors_changed),
|
G_CALLBACK (on_monitors_changed),
|
||||||
color_manager);
|
color_manager);
|
||||||
|
|
||||||
|
priv->is_ready = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -367,3 +371,12 @@ meta_color_manager_get_color_device (MetaColorManager *color_manager,
|
|||||||
monitor_id = generate_monitor_id (monitor);
|
monitor_id = generate_monitor_id (monitor);
|
||||||
return g_hash_table_lookup (priv->devices, monitor_id);
|
return g_hash_table_lookup (priv->devices, monitor_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gboolean
|
||||||
|
meta_color_manager_is_ready (MetaColorManager *color_manager)
|
||||||
|
{
|
||||||
|
MetaColorManagerPrivate *priv =
|
||||||
|
meta_color_manager_get_instance_private (color_manager);
|
||||||
|
|
||||||
|
return priv->is_ready;
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user