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

Update for 0.51.0

This commit is contained in:
dan
1999-01-25 19:06:50 +00:00
parent 3aeb1eb052
commit 416e3a82be
238 changed files with 24235 additions and 11473 deletions

View File

@@ -36,7 +36,10 @@
#include "properties.h"
#include "winspector.h"
#ifdef KWM_HINTS
#include "kwm.h"
# include "kwm.h"
#endif
#ifdef OLWM_HINTS
# include "openlook.h"
#endif
extern Atom _XA_WM_DELETE_WINDOW;
@@ -63,49 +66,53 @@ Shutdown(WShutdownMode mode)
int i;
switch (mode) {
case WSExitMode:
for (i=0; i<wScreenCount; i++) {
WScreen *scr;
scr = wScreenWithNumber(i);
if (scr) {
if (scr->helper_pid)
kill(scr->helper_pid, SIGKILL);
#ifdef KWM_HINTS
wKWMShutdown(scr, True);
#endif
wScreenSaveState(scr);
RestoreDesktop(scr);
}
}
ExecExitScript();
Exit(0);
break;
case WSLogoutMode:
#ifdef R6SM
#ifdef XSMP_ENABLED
wSessionRequestShutdown();
break;
#else
/* fall through */
#endif
case WSKillMode:
for (i=0; i<wScreenCount; i++) {
case WSExitMode:
/* if there is no session manager, send SAVE_YOURSELF to
* the clients */
#if 0
#ifdef XSMP_ENABLED
if (!wSessionIsManaged())
#endif
for (i = 0; i < wScreenCount; i++) {
WScreen *scr;
scr = wScreenWithNumber(i);
if (scr) {
wSessionSendSaveYourself(scr);
}
}
#endif
for (i = 0; i < wScreenCount; i++) {
WScreen *scr;
scr = wScreenWithNumber(i);
if (scr) {
if (scr->helper_pid)
kill(scr->helper_pid, SIGKILL);
/* if the session is not being managed, save restart info */
#ifdef XSMP_ENABLED
if (!wSessionIsManaged())
#endif
wSessionSaveClients(scr);
#ifdef KWM_HINTS
wKWMShutdown(scr, True);
#endif
wScreenSaveState(scr);
wipeDesktop(scr);
if (mode == WSKillMode)
wipeDesktop(scr);
else
RestoreDesktop(scr);
}
}
ExecExitScript();
@@ -122,6 +129,9 @@ Shutdown(WShutdownMode mode)
kill(scr->helper_pid, SIGKILL);
#ifdef KWM_HINTS
wKWMShutdown(scr, False);
#endif
#ifdef OLWM_HINTS
wOLWMShutdown(scr);
#endif
wScreenSaveState(scr);
@@ -179,7 +189,7 @@ RestoreDesktop(WScreen *scr)
if (core->descriptor.parent_type==WCLASS_WINDOW) {
wwin = core->descriptor.parent;
wwin->flags.mapped=1;
wUnmanageWindow(wwin, !wwin->flags.internal_window);
wUnmanageWindow(wwin, !wwin->flags.internal_window, False);
}
core = next;
}