mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-19 20:38:08 +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);
|
wapp = wApplicationOf(wwin->main_window);
|
||||||
if (wapp && wapp->app_icon) {
|
if (wapp && wapp->app_icon) {
|
||||||
wIconUpdate(wapp->app_icon->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 */
|
/* Make sure we get notification when this window is destroyed */
|
||||||
if (XGetWindowAttributes(dpy, window, &attr))
|
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)
|
if (!wwin->flags.internal_window)
|
||||||
XRemoveFromSaveSet(dpy, wwin->client_win);
|
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);
|
XSelectInput(dpy, wwin->client_win, NoEventMask);
|
||||||
|
}
|
||||||
|
|
||||||
XUngrabButton(dpy, AnyButton, AnyModifier, wwin->client_win);
|
XUngrabButton(dpy, AnyButton, AnyModifier, wwin->client_win);
|
||||||
XUngrabKey(dpy, AnyKey, AnyModifier, wwin->client_win);
|
XUngrabKey(dpy, AnyKey, AnyModifier, wwin->client_win);
|
||||||
|
|||||||
@@ -42,6 +42,7 @@
|
|||||||
#include "framewin.h"
|
#include "framewin.h"
|
||||||
#include "actions.h"
|
#include "actions.h"
|
||||||
#include "client.h"
|
#include "client.h"
|
||||||
|
#include "appicon.h"
|
||||||
#include "wmspec.h"
|
#include "wmspec.h"
|
||||||
#include "icon.h"
|
#include "icon.h"
|
||||||
#include "stacking.h"
|
#include "stacking.h"
|
||||||
@@ -459,6 +460,11 @@ static void updateIconImage(WWindow * wwin)
|
|||||||
XFree(property);
|
XFree(property);
|
||||||
|
|
||||||
if (wwin->icon) wIconUpdate(wwin->icon);
|
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)
|
static void updateShowDesktop(WScreen * scr, Bool show)
|
||||||
|
|||||||
Reference in New Issue
Block a user