diff options
| -rw-r--r-- | src/kvirc/ui/kvi_frame.cpp | 14 | ||||
| -rw-r--r-- | src/kvirc/ui/kvi_frame.h | 4 | ||||
| -rw-r--r-- | src/kvirc/ui/kvi_window.cpp | 2 |
3 files changed, 17 insertions, 3 deletions
diff --git a/src/kvirc/ui/kvi_frame.cpp b/src/kvirc/ui/kvi_frame.cpp index 353bfa8d8..e993f27e9 100644 --- a/src/kvirc/ui/kvi_frame.cpp +++ b/src/kvirc/ui/kvi_frame.cpp @@ -82,8 +82,6 @@ extern QPixmap * g_pShadedChildGlobalDesktopBackground; #endif -#define KVI_DEFAULT_FRAME_CAPTION "KVIrc " KVI_VERSION " " KVI_RELEASE_NAME - // Declared and managed by KviApp (kvi_app.cpp) extern KviConfig * g_pWinPropertiesConfig; KVIRC_API KviFrame * g_pFrame = 0; // the one and only frame object @@ -92,7 +90,6 @@ KviFrame::KviFrame() : KviTalMainWindow(0,"kvirc_frame") { g_pFrame = this; - setWindowTitle(KVI_DEFAULT_FRAME_CAPTION); m_pWinList = new KviPointerList<KviWindow>; m_pWinList->setAutoDelete(false); @@ -815,6 +812,7 @@ void KviFrame::childWindowActivated(KviWindow *wnd) bool bActiveContextChanged = (m_pActiveContext != wnd->context()); m_pActiveContext = wnd->context(); + if(wnd->isMaximized() && wnd->mdiParent())updateCaption(); m_pWindowList->setActiveItem(wnd->windowListItem()); if(g_pActiveWindow->view()) @@ -851,6 +849,15 @@ void KviFrame::windowActivationChange(bool bOldActive) } } +#define KVI_DEFAULT_FRAME_CAPTION "KVIrc " KVI_VERSION " " KVI_RELEASE_NAME + +void KviFrame::updateCaption() +{ + //the caption of an eventual maximized mdichild is already appended by qt + setWindowTitle(KVI_DEFAULT_FRAME_CAPTION); +} + + void KviFrame::closeEvent(QCloseEvent *e) { //check if the user just want us to minimize in tray; if we're not the sender @@ -951,6 +958,7 @@ void KviFrame::applyOptions() { m_pMdi->update(); for(KviWindow * wnd = m_pWinList->first();wnd;wnd = m_pWinList->next())wnd->applyOptions(); + updateCaption(); m_pWindowList->applyOptions(); g_pTextIconManager->applyOptions(); diff --git a/src/kvirc/ui/kvi_frame.h b/src/kvirc/ui/kvi_frame.h index 7f1ae3d34..9a3711f0a 100644 --- a/src/kvirc/ui/kvi_frame.h +++ b/src/kvirc/ui/kvi_frame.h @@ -153,6 +153,10 @@ public: // returns the dockExtension applet. Useful for calling refresh() when // some particular event happens KviDockExtension * dockExtension(){ return m_pDockExtension; }; + // Updates the main window caption. + // Should be called when the active window changes + // and the active irc context changes state + void updateCaption(); // helper for saving the window properties void saveWindowProperties(KviWindow * wnd,const QString &szSection); // finds the module extension toolbar with the specified identifier diff --git a/src/kvirc/ui/kvi_window.cpp b/src/kvirc/ui/kvi_window.cpp index ff25227c8..f61308292 100644 --- a/src/kvirc/ui/kvi_window.cpp +++ b/src/kvirc/ui/kvi_window.cpp @@ -643,6 +643,8 @@ void KviWindow::updateCaption() else setWindowTitle(m_szPlainTextCaption); if(m_pWindowListItem)m_pWindowListItem->captionChanged(); + if(mdiParent() && isMaximized() && (g_pActiveWindow == this)) + g_pFrame->updateCaption(); } void KviWindow::updateCaptionListItem() |
