summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Trevisan (Treviño) <mail@3v1n0.net>2013-08-20 16:29:06 +0200
committerMarco Trevisan (Treviño) <mail@3v1n0.net>2013-08-20 16:29:06 +0200
commitc1f6cab67aa84196351a257afc068ae25019b03b (patch)
treed4ab8565e298654c345e7560ffac5ed27efe570d
parent1cf648d3fd83d1c15eb27509c58ade29a5320203 (diff)
downloadlibwnck-c1f6cab67aa84196351a257afc068ae25019b03b.tar.gz
WnckUtil: make applications and windows to reload icons if size has changed
-rw-r--r--libwnck/util.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/libwnck/util.c b/libwnck/util.c
index 0e5b7b7..fdc6628 100644
--- a/libwnck/util.c
+++ b/libwnck/util.c
@@ -694,7 +694,29 @@ static gsize default_mini_icon_size = WNCK_DEFAULT_MINI_ICON_SIZE;
void
wnck_set_default_mini_icon_size (gsize size)
{
+ int default_screen;
+ WnckScreen *screen;
+ GList *l;
+
default_mini_icon_size = size;
+
+ default_screen = DefaultScreen (_wnck_get_default_display ());
+ screen = _wnck_screen_get_existing (default_screen);
+
+ if (WNCK_IS_SCREEN (screen))
+ {
+ /* Make applications and icons to reload their icons */
+ for (l = wnck_screen_get_windows (screen); l; l = l->next)
+ {
+ WnckWindow *window = WNCK_WINDOW (l->data);
+ WnckApplication *application = wnck_window_get_application (window);
+
+ _wnck_window_load_icons (window);
+
+ if (WNCK_IS_APPLICATION (application))
+ _wnck_application_load_icons (application);
+ }
+ }
}
gsize