Diffstat (limited to 'pwmanager/pwmanager/pwminit.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | pwmanager/pwmanager/pwminit.cpp | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/pwmanager/pwmanager/pwminit.cpp b/pwmanager/pwmanager/pwminit.cpp index d775aa9..fbd17a7 100644 --- a/pwmanager/pwmanager/pwminit.cpp +++ b/pwmanager/pwmanager/pwminit.cpp | |||
@@ -85,12 +85,13 @@ PwMInit::PwMInit(PwMApplication *_app) | |||
85 | sig_init_pointer = this; | 85 | sig_init_pointer = this; |
86 | app = _app; | 86 | app = _app; |
87 | } | 87 | } |
88 | 88 | ||
89 | PwMInit::~PwMInit() | 89 | PwMInit::~PwMInit() |
90 | { | 90 | { |
91 | qDebug("PwMInit::~PwMInit() "); | ||
91 | #ifndef PWM_EMBEDDED | 92 | #ifndef PWM_EMBEDDED |
92 | SelfTest::cancel(); | 93 | SelfTest::cancel(); |
93 | // close all open mainwnds | 94 | // close all open mainwnds |
94 | QValueList<PwM *>::iterator i = _mainWndList.begin(), | 95 | QValueList<PwM *>::iterator i = _mainWndList.begin(), |
95 | end = _mainWndList.end(); | 96 | end = _mainWndList.end(); |
96 | 97 | ||
@@ -176,13 +177,12 @@ void PwMInit::initializeApp() | |||
176 | createMainWnd(conf()->confGlobAutoStart(), | 177 | createMainWnd(conf()->confGlobAutoStart(), |
177 | openDeeplocked, | 178 | openDeeplocked, |
178 | true, | 179 | true, |
179 | 0, | 180 | 0, |
180 | savedCmd.minimized); | 181 | savedCmd.minimized); |
181 | } | 182 | } |
182 | |||
183 | runStatus = running; | 183 | runStatus = running; |
184 | } | 184 | } |
185 | 185 | ||
186 | void PwMInit::shutdownApp(int exitStatus) | 186 | void PwMInit::shutdownApp(int exitStatus) |
187 | { | 187 | { |
188 | printDebug(string("PwMInit::shutdownApp(") | 188 | printDebug(string("PwMInit::shutdownApp(") |
@@ -319,16 +319,14 @@ PwM * PwMInit::createMainWnd(const QString &loadFile, | |||
319 | 319 | ||
320 | #else //PWM_EMBEDDED | 320 | #else //PWM_EMBEDDED |
321 | 321 | ||
322 | #ifndef DESKTOP_VERSION | 322 | #ifndef DESKTOP_VERSION |
323 | app->showMainWidget( newWnd ); | 323 | app->showMainWidget( newWnd ); |
324 | #else //DESKTOP_VERSION | 324 | #else //DESKTOP_VERSION |
325 | app->setMainWidget( newWnd ); | ||
326 | newWnd->resize (640, 480 ); | 325 | newWnd->resize (640, 480 ); |
327 | newWnd->show(); | 326 | newWnd->show(); |
328 | qDebug("show "); | ||
329 | #endif //DESKTOP_VERSION | 327 | #endif //DESKTOP_VERSION |
330 | 328 | ||
331 | #endif //PWM_EMBEDDED | 329 | #endif //PWM_EMBEDDED |
332 | 330 | ||
333 | if (loadFile != QString::null && | 331 | if (loadFile != QString::null && |
334 | loadFile != "") { | 332 | loadFile != "") { |
@@ -388,13 +386,13 @@ again: | |||
388 | } else { | 386 | } else { |
389 | doDeleteDoc = true; | 387 | doDeleteDoc = true; |
390 | } | 388 | } |
391 | } | 389 | } |
392 | 390 | ||
393 | if (doMinimizeToTray) { | 391 | if (doMinimizeToTray) { |
394 | 392 | qDebug("doMinimizeToTray "); | |
395 | PWM_ASSERT(_tray); | 393 | PWM_ASSERT(_tray); |
396 | int mmlock = conf()->confGlobMinimizeLock(); | 394 | int mmlock = conf()->confGlobMinimizeLock(); |
397 | switch (mmlock) { | 395 | switch (mmlock) { |
398 | case 0: // don't lock anything | 396 | case 0: // don't lock anything |
399 | break; | 397 | break; |
400 | case 1: // normal lock | 398 | case 1: // normal lock |
@@ -404,12 +402,13 @@ again: | |||
404 | wnd->curDoc()->deepLock(); | 402 | wnd->curDoc()->deepLock(); |
405 | break; | 403 | break; |
406 | default: | 404 | default: |
407 | WARN(); | 405 | WARN(); |
408 | } | 406 | } |
409 | } else if (doDeleteDoc) { | 407 | } else if (doDeleteDoc) { |
408 | qDebug("doDeleteDoc "); | ||
410 | if (!wnd->curDoc()->tryDelete()) { | 409 | if (!wnd->curDoc()->tryDelete()) { |
411 | /* We failed deleting the doc, | 410 | /* We failed deleting the doc, |
412 | * so open a new window with it, again. | 411 | * so open a new window with it, again. |
413 | */ | 412 | */ |
414 | createMainWnd(QString::null, false, | 413 | createMainWnd(QString::null, false, |
415 | false, wnd->curDoc()); | 414 | false, wnd->curDoc()); |
@@ -428,12 +427,22 @@ again: | |||
428 | if (*i == wnd) { | 427 | if (*i == wnd) { |
429 | #ifndef PWM_EMBEDDED | 428 | #ifndef PWM_EMBEDDED |
430 | _mainWndList.erase(i); | 429 | _mainWndList.erase(i); |
431 | #else | 430 | #else |
432 | _mainWndList.remove(i); | 431 | _mainWndList.remove(i); |
433 | #endif | 432 | #endif |
433 | |||
434 | if ( app->mainWidget() == wnd ) { | ||
435 | if ( _mainWndList.count() ) { | ||
436 | #ifndef DESKTOP_VERSION | ||
437 | app->showMainWidget(_mainWndList.first() ); | ||
438 | #endif //DESKTOP_VERSION | ||
439 | |||
440 | } | ||
441 | } | ||
442 | delete wnd; | ||
434 | goto out_success; | 443 | goto out_success; |
435 | } | 444 | } |
436 | ++i; | 445 | ++i; |
437 | } | 446 | } |
438 | BUG(); | 447 | BUG(); |
439 | out_success: | 448 | out_success: |