1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-25 07:32:36 +01:00

- Fixed problem with unhiding taht mapped windows from other workspaces

on the current workspace.
- Made apps with an application menu not to use a shared appicon.
This commit is contained in:
dan
2001-12-18 16:10:07 +00:00
parent c8b3933c19
commit 6f28d987a8
5 changed files with 30 additions and 13 deletions

View File

@@ -1326,8 +1326,7 @@ unhideWindow(WIcon *icon, int icon_x, int icon_y, WWindow *wwin, int animate,
wWindowChangeWorkspace(wwin, wwin->screen_ptr->current_workspace);
wwin->flags.hidden=0;
wwin->flags.mapped=1;
wSoundPlay(WSOUND_UNHIDE);
#ifdef ANIMATIONS
if (!wwin->screen_ptr->flags.startup && !wPreferences.no_animations
@@ -1340,12 +1339,15 @@ unhideWindow(WIcon *icon, int icon_x, int icon_y, WWindow *wwin, int animate,
}
#endif
wwin->flags.skip_next_animation = 0;
XMapWindow(dpy, wwin->client_win);
XMapWindow(dpy, wwin->frame->core->window);
wClientSetState(wwin, NormalState, None);
wRaiseFrame(wwin->frame->core);
if (wwin->screen_ptr->current_workspace == wwin->frame->workspace) {
XMapWindow(dpy, wwin->client_win);
XMapWindow(dpy, wwin->frame->core->window);
wClientSetState(wwin, NormalState, None);
wwin->flags.mapped=1;
wRaiseFrame(wwin->frame->core);
}
if (wwin->flags.inspector_open) {
wUnhideInspectorForWindow(wwin);
wUnhideInspectorForWindow(wwin);
}
WMPostNotificationName(WMNChangedState, wwin, "hide");

View File

@@ -828,7 +828,7 @@ hideCallback(WMenu *menu, WMenuEntry *entry)
wapp = wApplicationOf(btn->icon->owner->main_window);
if (wapp->flags.hidden) {
wWorkspaceChange(btn->icon->core->screen_ptr,wapp->last_workspace);
wWorkspaceChange(btn->icon->core->screen_ptr, wapp->last_workspace);
wUnhideApplication(wapp, False, False);
} else {
wHideApplication(wapp);

View File

@@ -793,13 +793,23 @@ wManageWindow(WScreen *scr, Window window)
}
#endif /* OLWM_HINTS */
/* Make broken apps behave as a nice app. */
if (WFLAGP(wwin, emulate_appicon)) {
wwin->main_window = wwin->client_win;
}
if (wwin->flags.is_gnustep) {
WSETUFLAG(wwin, shared_appicon, 0);
}
/* Make broken apps behave as a nice app. */
if (WFLAGP(wwin, emulate_appicon)) {
wwin->main_window = wwin->client_win;
{
extern Atom _XA_WINDOWMAKER_MENU;
XTextProperty text_prop;
if (XGetTextProperty(dpy, wwin->main_window, &text_prop,
_XA_WINDOWMAKER_MENU)) {
WSETUFLAG(wwin, shared_appicon, 0);
}
}
if (!withdraw && wwin->main_window && WFLAGP(wwin, shared_appicon)) {