1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-20 04:48:06 +01:00

Fixed problem with kcalc not having a miniaturize button

This commit is contained in:
dan
2002-01-04 00:30:11 +00:00
parent 365556b676
commit a8c7375623
6 changed files with 30 additions and 32 deletions

View File

@@ -7,6 +7,7 @@ Changes since version 0.80.0:
WMState.<number> file on multihead system.
- Fixed problem with keyboard shortcuts executed an every screen for
multihead systems.
- Fixed problem with kcalc not having a miniaturize button.
Changes since version 0.70.0:

View File

@@ -899,8 +899,8 @@ wIconifyWindow(WWindow *wwin)
return;
}
if (wwin->transient_for!=None) {
if (wwin->transient_for!=None &&
wwin->transient_for!=wwin->screen_ptr->root_win) {
WWindow *owner = wWindowFor(wwin->transient_for);
if (owner && owner->flags.miniaturized)

View File

@@ -333,7 +333,8 @@ wSessionSaveState(WScreen *scr)
while (wwin) {
WApplication *wapp=wApplicationOf(wwin->main_window);
if (wwin->transient_for==None
if ((wwin->transient_for==None
|| wwin->transient_for==wwin->screen_ptr->root_win)
&& WMGetFirstInArray(wapp_list, wapp)==WANotFound
&& !WFLAGP(wwin, dont_save_session)) {
/* A entry for this application was not yet saved. Save one. */

View File

@@ -390,7 +390,7 @@ wWindowSetupInitialAttributes(WWindow *wwin, int *level, int *workspace)
WSETUFLAG(wwin, kill_close, 1);
/* transients can't be iconified or maximized */
if (wwin->transient_for) {
if (wwin->transient_for!=None && wwin->transient_for!=scr->root_win) {
WSETUFLAG(wwin, no_miniaturizable, 1);
WSETUFLAG(wwin, no_miniaturize_button, 1);
}
@@ -474,20 +474,24 @@ wWindowSetupInitialAttributes(WWindow *wwin, int *level, int *workspace)
*/
if (wwin->user_flags.no_appicon && wwin->defined_user_flags.no_appicon)
wwin->user_flags.emulate_appicon = 0;
//WSETUFLAG(wwin, emulate_appicon, 0);
if (wwin->main_window!=None) {
WApplication *wapp = wApplicationOf(wwin->main_window);
if (wapp && !wapp->flags.emulated)
wwin->user_flags.emulate_appicon = 0;
//WSETUFLAG(wwin, emulate_appicon, 0);
}
if (wwin->transient_for!=None
&& wwin->transient_for!=wwin->screen_ptr->root_win)
wwin->user_flags.emulate_appicon = 0;
//WSETUFLAG(wwin, emulate_appicon, 0);
if (wwin->user_flags.sunken && wwin->defined_user_flags.sunken
&& wwin->user_flags.floating && wwin->defined_user_flags.floating)
wwin->user_flags.sunken = 0;
//WSETUFLAG(wwin, sunken, 0);
WSETUFLAG(wwin, no_shadeable, WFLAGP(wwin, no_titlebar));
}
@@ -1317,7 +1321,8 @@ wManageWindow(WScreen *scr, Window window)
#endif
if (wPreferences.superfluous && !wPreferences.no_animations
&& !scr->flags.startup && wwin->transient_for==None
&& !scr->flags.startup &&
(wwin->transient_for==None || wwin->transient_for==scr->root_win)
/*
* The brain damaged idiotic non-click to focus modes will
* have trouble with this because:
@@ -1344,11 +1349,7 @@ wManageWindow(WScreen *scr, Window window)
/* setup stacking descriptor */
if (transientOwner) {
/* && wPreferences.on_top_transients */
if (transientOwner) {
wwin->frame->core->stacking->child_of =
transientOwner->frame->core;
}
wwin->frame->core->stacking->child_of = transientOwner->frame->core;
} else {
wwin->frame->core->stacking->child_of = NULL;
}
@@ -1557,12 +1558,7 @@ wManageInternalWindow(WScreen *scr, Window window, Window owner,
XMapSubwindows(dpy, wwin->frame->core->window);
/* setup stacking descriptor */
if (
#ifdef removed
wPreferences.on_top_transients &&
#endif
wwin->transient_for!=None
&& wwin->transient_for!=scr->root_win) {
if (wwin->transient_for!=None && wwin->transient_for!=scr->root_win) {
WWindow *tmp;
tmp = wWindowFor(wwin->transient_for);
if (tmp)

View File

@@ -1633,7 +1633,7 @@ createInspectorForWindow(WWindow *wwin, int xpos, int ypos,
/* if the window is a transient, don't let it have a miniaturize
* button */
if (wWindowFor(wwin->transient_for)!=NULL)
if (wwin->transient_for!=None && wwin->transient_for!=scr->root_win)
WMSetButtonEnabled(panel->attrChk[3], False);
else
WMSetButtonEnabled(panel->attrChk[3], True);