diff --git a/src/servers/screensaver/SSAwindow.cpp b/src/servers/screensaver/SSAwindow.cpp index dda36e7229..e853a9d6fe 100644 --- a/src/servers/screensaver/SSAwindow.cpp +++ b/src/servers/screensaver/SSAwindow.cpp @@ -19,7 +19,7 @@ SSAwindow::SSAwindow(BRect frame) : BDirectWindow(frame, "ScreenSaver Window", SSAwindow::~SSAwindow() { Hide(); - Sync(); +// Sync(); } diff --git a/src/servers/screensaver/ScreenSaverApp.cpp b/src/servers/screensaver/ScreenSaverApp.cpp index 68d158ccce..08085a9cc2 100755 --- a/src/servers/screensaver/ScreenSaverApp.cpp +++ b/src/servers/screensaver/ScreenSaverApp.cpp @@ -82,14 +82,14 @@ ScreenSaverApp::MessageReceived(BMessage *message) } else { printf ("Quitting!\n"); - Quit(); + shutdown(); } break; case 'MOO1': if (real_time_clock()-fBlankTime>fPref.PasswordTime()) ShowPW(); else - Quit(); + shutdown(); break; default: BApplication::MessageReceived(message); @@ -98,12 +98,14 @@ ScreenSaverApp::MessageReceived(BMessage *message) } -bool -ScreenSaverApp::QuitRequested(void) +void +ScreenSaverApp::shutdown(void) { + if (fWin) + fWin->Hide(); if (fThreadID) kill_thread(fThreadID); if (fThrd) delete fThrd; - return true; + Quit(); } diff --git a/src/servers/screensaver/ScreenSaverApp.h b/src/servers/screensaver/ScreenSaverApp.h index be7d5cf1d6..c2977c4421 100755 --- a/src/servers/screensaver/ScreenSaverApp.h +++ b/src/servers/screensaver/ScreenSaverApp.h @@ -15,7 +15,8 @@ public: ScreenSaverApp(); bool LoadAddOn(void); void ReadyToRun(void); - bool QuitRequested(void); +// bool QuitRequested(void); +// void Quit(void); virtual void MessageReceived(BMessage *message); void ShowPW(void); private: @@ -28,6 +29,7 @@ private: thread_id fThreadID; uint32 fBlankTime; + void shutdown(void); }; #endif //SCREEN_SAVER_H