mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-19 12:28:22 +01:00
Paint app icons when updated
Add calls to wAppIconPaint when wIconUpdate is called on the app icon. Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
This commit is contained in:
committed by
Carlos R. Mafra
parent
ee1f13da45
commit
125cba8f82
@@ -478,6 +478,7 @@ void wClientCheckProperty(WWindow * wwin, XPropertyEvent * event)
|
||||
wapp = wApplicationOf(wwin->main_window);
|
||||
if (wapp && wapp->app_icon) {
|
||||
wIconUpdate(wapp->app_icon->icon);
|
||||
wAppIconPaint(wapp->app_icon);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -518,7 +518,7 @@ static void fixLeaderProperties(WWindow *wwin)
|
||||
|
||||
/* Make sure we get notification when this window is destroyed */
|
||||
if (XGetWindowAttributes(dpy, window, &attr))
|
||||
XSelectInput(dpy, window, attr.your_event_mask | StructureNotifyMask);
|
||||
XSelectInput(dpy, window, attr.your_event_mask | StructureNotifyMask | PropertyChangeMask);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1543,7 +1543,13 @@ void wUnmanageWindow(WWindow *wwin, Bool restore, Bool destroyed)
|
||||
if (!wwin->flags.internal_window)
|
||||
XRemoveFromSaveSet(dpy, wwin->client_win);
|
||||
|
||||
/* If this is a leader window, we still need to listen for
|
||||
* DestroyNotify and PropertyNotify. */
|
||||
if (wApplicationOf(wwin->client_win)) {
|
||||
XSelectInput(dpy, wwin->client_win, StructureNotifyMask | PropertyChangeMask);
|
||||
} else {
|
||||
XSelectInput(dpy, wwin->client_win, NoEventMask);
|
||||
}
|
||||
|
||||
XUngrabButton(dpy, AnyButton, AnyModifier, wwin->client_win);
|
||||
XUngrabKey(dpy, AnyKey, AnyModifier, wwin->client_win);
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
#include "framewin.h"
|
||||
#include "actions.h"
|
||||
#include "client.h"
|
||||
#include "appicon.h"
|
||||
#include "wmspec.h"
|
||||
#include "icon.h"
|
||||
#include "stacking.h"
|
||||
@@ -459,6 +460,11 @@ static void updateIconImage(WWindow * wwin)
|
||||
XFree(property);
|
||||
|
||||
if (wwin->icon) wIconUpdate(wwin->icon);
|
||||
WApplication *app = wApplicationOf(wwin->main_window);
|
||||
if (app && app->app_icon){
|
||||
wIconUpdate(app->app_icon->icon);
|
||||
wAppIconPaint(app->app_icon);
|
||||
}
|
||||
}
|
||||
|
||||
static void updateShowDesktop(WScreen * scr, Bool show)
|
||||
|
||||
Reference in New Issue
Block a user