diff options
author | Alberts Muktupāvels <alberts.muktupavels@gmail.com> | 2022-03-14 19:47:08 +0200 |
---|---|---|
committer | Alberts Muktupāvels <alberts.muktupavels@gmail.com> | 2022-11-28 20:12:45 +0200 |
commit | 9fe7cf3058019c8e1e8f7c6b32895254f583be7f (patch) | |
tree | 1566cff8793e39edc9c5268ee7ddc47acbc81142 | |
parent | ce8b0ac0bd1b3e9afce0616db6977bae2469216c (diff) | |
download | libwnck-9fe7cf3058019c8e1e8f7c6b32895254f583be7f.tar.gz |
icon-cache: read icons in getters
-rw-r--r-- | libwnck/wnck-icon-cache.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/libwnck/wnck-icon-cache.c b/libwnck/wnck-icon-cache.c index 79b4db5..770d7ce 100644 --- a/libwnck/wnck-icon-cache.c +++ b/libwnck/wnck-icon-cache.c @@ -719,12 +719,40 @@ _wnck_read_icons (WnckIconCache *icon_cache, GdkPixbuf * _wnck_icon_cache_get_icon (WnckIconCache *self) { + GdkPixbuf *icon; + GdkPixbuf *mini_icon; + + if (self->icon != NULL) + return self->icon; + + icon = NULL; + mini_icon = NULL; + + _wnck_read_icons (self, &icon, &mini_icon); + + g_clear_object (&icon); + g_clear_object (&mini_icon); + return self->icon; } GdkPixbuf * _wnck_icon_cache_get_mini_icon (WnckIconCache *self) { + GdkPixbuf *icon; + GdkPixbuf *mini_icon; + + if (self->mini_icon != NULL) + return self->mini_icon; + + icon = NULL; + mini_icon = NULL; + + _wnck_read_icons (self, &icon, &mini_icon); + + g_clear_object (&icon); + g_clear_object (&mini_icon); + return self->mini_icon; } |