From: "Rodolfo García Peñas (kix)" <[email protected]>
The function appearanceObserver() is now faster, because don't
re-create the icon. Now only draw the icon pixmap.
---
src/icon.c | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/src/icon.c b/src/icon.c
index ff29484..d4268c1 100644
--- a/src/icon.c
+++ b/src/icon.c
@@ -72,15 +72,20 @@ static void unset_icon_image(WIcon *icon);
/****** Notification Observers ******/
-static void appearanceObserver(void *self, WMNotification * notif)
+static void appearanceObserver(void *self, WMNotification *notif)
{
WIcon *icon = (WIcon *) self;
uintptr_t flags = (uintptr_t)WMGetNotificationClientData(notif);
- if ((flags & WTextureSettings) || (flags & WFontSettings))
- icon->force_paint = 1;
+ printf("appearanceObserver\n");
- wIconPaint(icon);
+ if ((flags & WTextureSettings) || (flags & WFontSettings)) {
+ /* If the rimage exists, update the icon, else create it */
+ if (icon->file_image)
+ update_icon_pixmap(icon);
+ else
+ wIconPaint(icon);
+ }
/* so that the appicon expose handlers will paint the appicon specific
* stuff */
--
1.7.10.4
--
To unsubscribe, send mail to [email protected].