diff options
| author | 2009-12-18 09:09:40 +0000 | |
|---|---|---|
| committer | 2009-12-18 09:09:40 +0000 | |
| commit | bd2199bf800ab2709a2f8ff1aefb5ca3c17736cb (patch) | |
| tree | 2be9334e33b7a1bdaad9889642468f3996d565f9 /src | |
| parent | fix for #652 (diff) | |
| download | KVIrc-bd2199bf800ab2709a2f8ff1aefb5ca3c17736cb.tar.gz KVIrc-bd2199bf800ab2709a2f8ff1aefb5ca3c17736cb.tar.bz2 KVIrc-bd2199bf800ab2709a2f8ff1aefb5ca3c17736cb.zip | |
fix for #651
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@3706 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src')
| -rw-r--r-- | src/kvirc/ui/kvi_frame.cpp | 23 | ||||
| -rw-r--r-- | src/kvirc/ui/kvi_frame.h | 1 |
2 files changed, 24 insertions, 0 deletions
diff --git a/src/kvirc/ui/kvi_frame.cpp b/src/kvirc/ui/kvi_frame.cpp index cb9f40e44..233c758fb 100644 --- a/src/kvirc/ui/kvi_frame.cpp +++ b/src/kvirc/ui/kvi_frame.cpp @@ -788,6 +788,29 @@ void KviFrame::childWindowActivated(KviWindow *wnd, bool bForce) KVS_TRIGGER_EVENT_0(KviEvent_OnWindowActivated,wnd); } +void KviFrame::changeEvent(QEvent * e) +{ + if (e->type() == QEvent::ActivationChange) + { + //WINDOW (DE)ACTIVATION + // if we have just been activated by the WM + // then update the active window task bar item + // It will then reset its highlight state + // and hopefully make the dock widget work correctly + // in this case. + // This will also trigger the OnWindowActivated event :) + if(isActiveWindow()) + { + if(g_pActiveWindow) + childWindowActivated(g_pActiveWindow, true); + } else { + if(g_pActiveWindow) + g_pActiveWindow->lostUserFocus(); + } + } + KviTalMainWindow::changeEvent(e); +} + void KviFrame::closeEvent(QCloseEvent *e) { //check if the user just want us to minimize in tray; if we're not the sender diff --git a/src/kvirc/ui/kvi_frame.h b/src/kvirc/ui/kvi_frame.h index 508abd2ae..b415fbfa3 100644 --- a/src/kvirc/ui/kvi_frame.h +++ b/src/kvirc/ui/kvi_frame.h @@ -196,6 +196,7 @@ protected: virtual void resizeEvent(QResizeEvent *e); virtual void moveEvent(QMoveEvent *e); virtual bool focusNextPrevChild(bool next); + virtual void changeEvent(QEvent * event); void updatePseudoTransparency(); void installAccelerators(); |
