[Knode-devel] osnabrueck_branch: kdepim/knode
David Faure
faure at kde.org
Wed Jan 7 22:33:04 CET 2004
CVS commit by faure:
Fixed window activation not done due to newInstance() reimplementation.
Cleaned up use of kapp->setMainWidget. It's very very unusual to give it
a non-toplevel-widget, and there wasn't much point in doing that.
M +13 -8 knapplication.cpp 1.21.6.2
M +0 -2 knmainwidget.cpp 1.16.2.3
M +1 -0 knode.h 1.50.8.2
--- kdepim/knode/knapplication.cpp #1.21.6.1:1.21.6.2
@@ -53,12 +53,13 @@ int KNApplication::newInstance()
}
- if (mainWidget())
- KWin::activateWindow(mainWidget()->winId());
- else {
+ if (!mainWidget()) {
if (isRestored()) {
int n = 1;
while (KNMainWindow::canBeRestored(n)){
if (KNMainWindow::classNameOfToplevel(n)=="KNMainWindow") {
- (new KNMainWindow)->restore(n);
+ KNMainWindow* mainWin = new KNMainWindow;
+ mainWin->restore(n);
+ if ( n == 1 )
+ setMainWidget( mainWin );
break;
}
@@ -68,12 +69,16 @@ int KNApplication::newInstance()
if (!mainWidget()) {
- KNMainWindow* knode = new KNMainWindow;
- knode->show();
+ KNMainWindow* mainWin = new KNMainWindow;
+ setMainWidget(mainWin); // this makes the external viewer windows close on shutdown...
+ mainWin->show();
}
}
+ // Handle window activation and startup notification
+ KUniqueApplication::newInstance();
+
// process URLs...
- KNMainWidget *mainWin = static_cast<KNMainWidget*>(mainWidget());
- mainWin->handleCommandLine();
+ KNMainWidget *w = static_cast<KNMainWindow*>(mainWidget())->mainWidget();
+ w->handleCommandLine();
kdDebug(5003) << "KNApplication::newInstance() done" << endl;
--- kdepim/knode/knmainwidget.cpp #1.16.2.2:1.16.2.3
@@ -69,6 +69,4 @@ KNMainWidget::KNMainWidget( KXMLGUIClien
knGlobals.guiClient=client;
knGlobals.topWidget=this;
- if ( detachable )
- kapp->setMainWidget(this); // this makes the external viewer windows close on shutdown...
//------------------------------- <CONFIG> ----------------------------------
--- kdepim/knode/knode.h #1.50.8.1:1.50.8.2
@@ -42,4 +42,5 @@ public:
~KNMainWindow();
void openURL( const KURL& );
+ KNMainWidget *mainWidget() { return m_mainWidget; }
public slots:
More information about the Knode-devel
mailing list