From 8260794f4d73219d026c53b6d57244ddf52d34a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alberts=20Muktup=C4=81vels?= Date: Tue, 11 May 2021 22:30:10 +0300 Subject: util: move default icon size to WnckHandle In future this will allow to have multiple plugins/applets in same process with different icon sizes. --- libwnck/util.c | 12 ++++-------- libwnck/wnck-handle-private.h | 15 +++++++++++++-- libwnck/wnck-handle.c | 31 +++++++++++++++++++++++++++++++ 3 files changed, 48 insertions(+), 10 deletions(-) diff --git a/libwnck/util.c b/libwnck/util.c index b3d8750..aea7d26 100644 --- a/libwnck/util.c +++ b/libwnck/util.c @@ -680,8 +680,6 @@ _wnck_get_client_type (void) return _wnck_handle_get_client_type (_wnck_get_handle ()); } -static gsize default_icon_size = WNCK_DEFAULT_ICON_SIZE; - /** * wnck_set_default_icon_size: * @size: the default size for windows and application standard icons. @@ -694,17 +692,15 @@ static gsize default_icon_size = WNCK_DEFAULT_ICON_SIZE; void wnck_set_default_icon_size (gsize size) { - default_icon_size = size; + _wnck_handle_set_default_icon_size (_wnck_get_handle (), size); } gsize _wnck_get_default_icon_size (void) { - return default_icon_size; + return _wnck_handle_get_default_icon_size (_wnck_get_handle ()); } -static gsize default_mini_icon_size = WNCK_DEFAULT_MINI_ICON_SIZE; - /** * wnck_set_default_mini_icon_size: * @size: the default size for windows and application mini icons. @@ -721,7 +717,7 @@ wnck_set_default_mini_icon_size (gsize size) WnckScreen *screen; GList *l; - default_mini_icon_size = size; + _wnck_handle_set_default_mini_icon_size (_wnck_get_handle (), size); default_screen = DefaultScreen (_wnck_get_default_display ()); screen = _wnck_screen_get_existing (default_screen); @@ -745,7 +741,7 @@ wnck_set_default_mini_icon_size (gsize size) gsize _wnck_get_default_mini_icon_size (void) { - return default_mini_icon_size; + return _wnck_handle_get_default_mini_icon_size (_wnck_get_handle ()); } /** diff --git a/libwnck/wnck-handle-private.h b/libwnck/wnck-handle-private.h index 2449c74..f277661 100644 --- a/libwnck/wnck-handle-private.h +++ b/libwnck/wnck-handle-private.h @@ -24,9 +24,20 @@ G_BEGIN_DECLS typedef struct _WnckHandle WnckHandle; -WnckHandle *_wnck_handle_new (WnckClientType client_type); +WnckHandle *_wnck_handle_new (WnckClientType client_type); -WnckClientType _wnck_handle_get_client_type (WnckHandle *self); +WnckClientType _wnck_handle_get_client_type (WnckHandle *self); + +void _wnck_handle_set_default_icon_size (WnckHandle *self, + gsize icon_size); + +gsize _wnck_handle_get_default_icon_size (WnckHandle *self); + + +void _wnck_handle_set_default_mini_icon_size (WnckHandle *self, + gsize icon_size); + +gsize _wnck_handle_get_default_mini_icon_size (WnckHandle *self); G_END_DECLS diff --git a/libwnck/wnck-handle.c b/libwnck/wnck-handle.c index cc4771a..fd61761 100644 --- a/libwnck/wnck-handle.c +++ b/libwnck/wnck-handle.c @@ -28,6 +28,9 @@ struct _WnckHandle GObject parent; WnckClientType client_type; + + gsize default_icon_size; + gsize default_mini_icon_size; }; enum @@ -120,6 +123,8 @@ wnck_handle_class_init (WnckHandleClass *self_class) static void wnck_handle_init (WnckHandle *self) { + self->default_icon_size = WNCK_DEFAULT_ICON_SIZE; + self->default_mini_icon_size = WNCK_DEFAULT_MINI_ICON_SIZE; } WnckHandle @@ -135,3 +140,29 @@ _wnck_handle_get_client_type (WnckHandle *self) { return self->client_type; } + +void +_wnck_handle_set_default_icon_size (WnckHandle *self, + gsize icon_size) +{ + self->default_icon_size = icon_size; +} + +gsize +_wnck_handle_get_default_icon_size (WnckHandle *self) +{ + return self->default_icon_size; +} + +void +_wnck_handle_set_default_mini_icon_size (WnckHandle *self, + gsize icon_size) +{ + self->default_mini_icon_size = icon_size; +} + +gsize +_wnck_handle_get_default_mini_icon_size (WnckHandle *self) +{ + return self->default_mini_icon_size; +} -- cgit v1.2.1