mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-20 04:48:06 +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:
@@ -28,7 +28,7 @@ Changes since version 0.70.0:
|
|||||||
- Added real appicon sharing (apps of the same kind will have a single shared
|
- Added real appicon sharing (apps of the same kind will have a single shared
|
||||||
appicon).
|
appicon).
|
||||||
- Fixed user and global defaults domain merging to preserve values present in
|
- Fixed user and global defaults domain merging to preserve values present in
|
||||||
global but not in user in subdictionaries.
|
global but not in user, in sub-dictionaries.
|
||||||
- Made dock/clip steal appicons of applications that were started from a
|
- Made dock/clip steal appicons of applications that were started from a
|
||||||
shell/xterm or from the main menu, if there is a docked appicon of that
|
shell/xterm or from the main menu, if there is a docked appicon of that
|
||||||
class that is not running at the time the app is launched.
|
class that is not running at the time the app is launched.
|
||||||
@@ -38,6 +38,7 @@ Changes since version 0.70.0:
|
|||||||
- Updated the animation constants for scrolling/sliding/shading to better
|
- Updated the animation constants for scrolling/sliding/shading to better
|
||||||
adapt to newer/faster machines. Also used wusleep(10) when the delay was 0
|
adapt to newer/faster machines. Also used wusleep(10) when the delay was 0
|
||||||
to get rid of the jerky animation when there was no delay.
|
to get rid of the jerky animation when there was no delay.
|
||||||
|
- Fixed bug with Unhide mapping windows from other workspaces.
|
||||||
|
|
||||||
|
|
||||||
Changes since version 0.65.1:
|
Changes since version 0.65.1:
|
||||||
|
|||||||
6
TODO
6
TODO
@@ -26,7 +26,11 @@ Need to do:
|
|||||||
- add new file for stuff like default commands and dnd commands for
|
- add new file for stuff like default commands and dnd commands for
|
||||||
docked apps, balloons for the dock etc
|
docked apps, balloons for the dock etc
|
||||||
- check whether apps with name.class set to empty strings should be treated
|
- check whether apps with name.class set to empty strings should be treated
|
||||||
like if name.class were NULL.NULL
|
like if name.class is NULL.NULL
|
||||||
|
- review the defaults handling code (not to save globals in user, not to
|
||||||
|
reread after we update a domain if possible, check WINGs apps updating
|
||||||
|
WMWindowAttributes after start making screen to flash on update)
|
||||||
|
|
||||||
|
|
||||||
Maybe some day:
|
Maybe some day:
|
||||||
===============
|
===============
|
||||||
|
|||||||
@@ -1326,7 +1326,6 @@ unhideWindow(WIcon *icon, int icon_x, int icon_y, WWindow *wwin, int animate,
|
|||||||
wWindowChangeWorkspace(wwin, wwin->screen_ptr->current_workspace);
|
wWindowChangeWorkspace(wwin, wwin->screen_ptr->current_workspace);
|
||||||
|
|
||||||
wwin->flags.hidden=0;
|
wwin->flags.hidden=0;
|
||||||
wwin->flags.mapped=1;
|
|
||||||
|
|
||||||
wSoundPlay(WSOUND_UNHIDE);
|
wSoundPlay(WSOUND_UNHIDE);
|
||||||
#ifdef ANIMATIONS
|
#ifdef ANIMATIONS
|
||||||
@@ -1340,10 +1339,13 @@ unhideWindow(WIcon *icon, int icon_x, int icon_y, WWindow *wwin, int animate,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
wwin->flags.skip_next_animation = 0;
|
wwin->flags.skip_next_animation = 0;
|
||||||
|
if (wwin->screen_ptr->current_workspace == wwin->frame->workspace) {
|
||||||
XMapWindow(dpy, wwin->client_win);
|
XMapWindow(dpy, wwin->client_win);
|
||||||
XMapWindow(dpy, wwin->frame->core->window);
|
XMapWindow(dpy, wwin->frame->core->window);
|
||||||
wClientSetState(wwin, NormalState, None);
|
wClientSetState(wwin, NormalState, None);
|
||||||
|
wwin->flags.mapped=1;
|
||||||
wRaiseFrame(wwin->frame->core);
|
wRaiseFrame(wwin->frame->core);
|
||||||
|
}
|
||||||
if (wwin->flags.inspector_open) {
|
if (wwin->flags.inspector_open) {
|
||||||
wUnhideInspectorForWindow(wwin);
|
wUnhideInspectorForWindow(wwin);
|
||||||
}
|
}
|
||||||
|
|||||||
16
src/window.c
16
src/window.c
@@ -793,13 +793,23 @@ wManageWindow(WScreen *scr, Window window)
|
|||||||
}
|
}
|
||||||
#endif /* OLWM_HINTS */
|
#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) {
|
if (wwin->flags.is_gnustep) {
|
||||||
WSETUFLAG(wwin, shared_appicon, 0);
|
WSETUFLAG(wwin, shared_appicon, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Make broken apps behave as a nice app. */
|
{
|
||||||
if (WFLAGP(wwin, emulate_appicon)) {
|
extern Atom _XA_WINDOWMAKER_MENU;
|
||||||
wwin->main_window = wwin->client_win;
|
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)) {
|
if (!withdraw && wwin->main_window && WFLAGP(wwin, shared_appicon)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user