diff --git a/src/core/window-props.c b/src/core/window-props.c index e08c89cdd..68e14fd21 100644 --- a/src/core/window-props.c +++ b/src/core/window-props.c @@ -78,74 +78,38 @@ static MetaWindowPropHooks* find_hooks (MetaDisplay *display, void -meta_window_reload_property (MetaWindow *window, - Atom property, - gboolean initial) +meta_window_reload_property_from_xwindow (MetaWindow *window, + Window xwindow, + Atom property, + gboolean initial) { - meta_window_reload_properties (window, &property, 1, initial); -} + MetaPropValue value = { 0, }; + MetaWindowPropHooks *hooks; -void -meta_window_reload_properties (MetaWindow *window, - const Atom *properties, - int n_properties, - gboolean initial) -{ - meta_window_reload_properties_from_xwindow (window, - window->xwindow, - properties, - n_properties, - initial); -} + hooks = find_hooks (window->display, property); + if (!hooks) + return; -void -meta_window_reload_property_from_xwindow (MetaWindow *window, - Window xwindow, - Atom property, - gboolean initial) -{ - meta_window_reload_properties_from_xwindow (window, xwindow, &property, 1, - initial); -} + init_prop_value (window, hooks, &value); -void -meta_window_reload_properties_from_xwindow (MetaWindow *window, - Window xwindow, - const Atom *properties, - int n_properties, - gboolean initial) -{ - int i; - MetaPropValue *values; - - g_return_if_fail (properties != NULL); - g_return_if_fail (n_properties > 0); - - values = g_new0 (MetaPropValue, n_properties); - - i = 0; - while (i < n_properties) - { - MetaWindowPropHooks *hooks = find_hooks (window->display, properties[i]); - init_prop_value (window, hooks, &values[i]); - ++i; - } - meta_prop_get_values (window->display, xwindow, - values, n_properties); + &value, 1); - i = 0; - while (i < n_properties) - { - MetaWindowPropHooks *hooks = find_hooks (window->display, properties[i]); - reload_prop_value (window, hooks, &values[i], initial); - - ++i; - } + reload_prop_value (window, hooks, &value, + initial); - meta_prop_free_values (values, n_properties); - - g_free (values); + meta_prop_free_values (&value, 1); +} + +static void +meta_window_reload_property (MetaWindow *window, + Atom property, + gboolean initial) +{ + meta_window_reload_property_from_xwindow (window, + window->xwindow, + property, + initial); } void diff --git a/src/core/window-props.h b/src/core/window-props.h index 3c433ee2d..16db50b9e 100644 --- a/src/core/window-props.h +++ b/src/core/window-props.h @@ -35,35 +35,6 @@ #include "window-private.h" -/** - * meta_window_reload_property: - * @window: The window. - * @property: A single X atom. - * - * Requests the current values of a single property for a given - * window from the server, and deals with it appropriately. - * Does not return it to the caller (it's been dealt with!) - */ -void meta_window_reload_property (MetaWindow *window, - Atom property, - gboolean initial); - - -/** - * meta_window_reload_properties: - * @window: The window. - * @properties: A pointer to a list of X atoms, "n_properties" long. - * @n_properties: The length of the properties list. - * - * Requests the current values of a set of properties for a given - * window from the server, and deals with them appropriately. - * Does not return them to the caller (they've been dealt with!) - */ -void meta_window_reload_properties (MetaWindow *window, - const Atom *properties, - int n_properties, - gboolean initial); - /** * meta_window_reload_property_from_xwindow: * @window: A window on the same display as the one we're @@ -75,30 +46,10 @@ void meta_window_reload_properties (MetaWindow *window, * window from the server, and deals with it appropriately. * Does not return it to the caller (it's been dealt with!) */ -void meta_window_reload_property_from_xwindow - (MetaWindow *window, - Window xwindow, - Atom property, - gboolean initial); - -/** - * meta_window_reload_properties_from_xwindow: - * @window: A window on the same display as the one we're - * investigating (only used to find the display) - * @xwindow: The X handle for the window. - * @properties: A pointer to a list of X atoms, "n_properties" long. - * @n_properties: The length of the properties list. - * - * Requests the current values of a set of properties for a given - * window from the server, and deals with them appropriately. - * Does not return them to the caller (they've been dealt with!) - */ -void meta_window_reload_properties_from_xwindow - (MetaWindow *window, - Window xwindow, - const Atom *properties, - int n_properties, - gboolean initial); +void meta_window_reload_property_from_xwindow (MetaWindow *window, + Window xwindow, + Atom property, + gboolean initial); /** * meta_window_load_initial_properties: