mirror of
https://github.com/gryf/wmaker.git
synced 2026-03-20 18:33:31 +01:00
Fix for ignore client supplied icon attributes
As mentioned on the WMaker user mailing list some time ago https://groups.google.com/g/wmaker-user/c/95M_pb_Qlbs/m/6qJLJSqoAwAJ The Ignore client supplied icon from the windows attributes is not working. That's especially visible with firefox and thunderbird when they are using NET_WM_ICON to push the embedded icon. That patch is making sure to ignore the embedded icon if the user defined one.
This commit is contained in:
committed by
Carlos R. Mafra
parent
4392fdc291
commit
a4a6e65ca9
@@ -1186,14 +1186,17 @@ static void create_appicon_from_dock(WWindow *wwin, WApplication *wapp, Window m
|
|||||||
|
|
||||||
wapp->app_icon->running = 1;
|
wapp->app_icon->running = 1;
|
||||||
wapp->app_icon->icon->owner = mainw;
|
wapp->app_icon->icon->owner = mainw;
|
||||||
if (mainw->wm_hints && (mainw->wm_hints->flags & IconWindowHint))
|
|
||||||
wapp->app_icon->icon->icon_win = mainw->wm_hints->icon_window;
|
|
||||||
|
|
||||||
/* Update the icon images */
|
if (!WFLAGP(wwin, always_user_icon)) {
|
||||||
wIconUpdate(wapp->app_icon->icon);
|
if (mainw->wm_hints && (mainw->wm_hints->flags & IconWindowHint))
|
||||||
|
wapp->app_icon->icon->icon_win = mainw->wm_hints->icon_window;
|
||||||
|
|
||||||
/* Paint it */
|
/* Update the icon images */
|
||||||
wAppIconPaint(wapp->app_icon);
|
wIconUpdate(wapp->app_icon->icon);
|
||||||
|
|
||||||
|
/* Paint it */
|
||||||
|
wAppIconPaint(wapp->app_icon);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
17
src/client.c
17
src/client.c
@@ -454,15 +454,16 @@ void wClientCheckProperty(WWindow * wwin, XPropertyEvent * event)
|
|||||||
/* update icon */
|
/* update icon */
|
||||||
if ((wwin->wm_hints->flags & IconPixmapHint)
|
if ((wwin->wm_hints->flags & IconPixmapHint)
|
||||||
|| (wwin->wm_hints->flags & IconWindowHint)) {
|
|| (wwin->wm_hints->flags & IconWindowHint)) {
|
||||||
WApplication *wapp;
|
if (!WFLAGP(wwin, always_user_icon)) {
|
||||||
|
WApplication *wapp;
|
||||||
|
if (wwin->flags.miniaturized && wwin->icon)
|
||||||
|
wIconUpdate(wwin->icon);
|
||||||
|
|
||||||
if (wwin->flags.miniaturized && wwin->icon)
|
wapp = wApplicationOf(wwin->main_window);
|
||||||
wIconUpdate(wwin->icon);
|
if (wapp && wapp->app_icon) {
|
||||||
|
wIconUpdate(wapp->app_icon->icon);
|
||||||
wapp = wApplicationOf(wwin->main_window);
|
wAppIconPaint(wapp->app_icon);
|
||||||
if (wapp && wapp->app_icon) {
|
}
|
||||||
wIconUpdate(wapp->app_icon->icon);
|
|
||||||
wAppIconPaint(wapp->app_icon);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user