--- twinkle-1.9.0+dfsg.orig/src/gui/mphoneform.cpp +++ twinkle-1.9.0+dfsg/src/gui/mphoneform.cpp @@ -201,6 +201,10 @@ void MphoneForm::init() connect(sysTray, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(sysTrayIconClicked(QSystemTrayIcon::ActivationReason))); + // Show Twinkle menu + menu->addAction("Show Twinkle", this, SLOT(showTwinkle())); + + menu->addSeparator(); // Call menu menu->addAction(callInvite); menu->addAction(callAnswer); @@ -259,6 +263,16 @@ void MphoneForm::init() splitter2->restoreState(g_gui_state->value("mainwindow/mainsplitter").toByteArray()); } +void MphoneForm::showTwinkle() +{ + // I think, Twinkle window should always appear above other windows. + + if (!isVisible()) + setVisible(true); + else + activateWindow(); +} + void MphoneForm::destroy() { g_gui_state->setValue("mainwindow/state", saveState()); --- twinkle-1.9.0+dfsg.orig/src/gui/mphoneform.h +++ twinkle-1.9.0+dfsg/src/gui/mphoneform.h @@ -47,6 +47,7 @@ protected: virtual bool event(QEvent * event) override; public slots: void fileExit(); + void showTwinkle(); void display( const QString & s ); void displayHeader(); void showLineTimer( int line );