From 376cb466ca2b15c47d9921d29224e07ab6cd4673 Mon Sep 17 00:00:00 2001 From: zeljko Date: Thu, 7 Oct 2010 09:38:55 +0000 Subject: [PATCH] Qt: fixed result of TQtWidgetSet.SetForegroundWindow() git-svn-id: trunk@27599 - --- lcl/interfaces/qt/qtwidgets.pas | 6 ++++++ lcl/interfaces/qt/qtwinapi.inc | 9 ++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/lcl/interfaces/qt/qtwidgets.pas b/lcl/interfaces/qt/qtwidgets.pas index e8ecf5f04a..f6db0dfe05 100644 --- a/lcl/interfaces/qt/qtwidgets.pas +++ b/lcl/interfaces/qt/qtwidgets.pas @@ -222,6 +222,7 @@ type function getWindowState: QtWindowStates; procedure grabMouse; virtual; function hasFocus: Boolean; virtual; + function IsActiveWindow: Boolean; function isMinimized: Boolean; function isMaximized: Boolean; function IsWindow: Boolean; @@ -3535,6 +3536,11 @@ begin Result := QWidget_hasFocus(Widget); end; +function TQtWidget.IsActiveWindow: Boolean; +begin + Result := QWidget_isActiveWindow(Widget); +end; + function TQtWidget.isMinimized: Boolean; begin Result := QWidget_isMinimized(Widget); diff --git a/lcl/interfaces/qt/qtwinapi.inc b/lcl/interfaces/qt/qtwinapi.inc index 4085a3a2a9..c854ff864f 100644 --- a/lcl/interfaces/qt/qtwinapi.inc +++ b/lcl/interfaces/qt/qtwinapi.inc @@ -4898,9 +4898,12 @@ end; function TQtWidgetSet.SetForegroundWindow(HWnd: HWND): boolean; begin - TQtWidget(HWnd).Activate; - - Result := True; + Result := False; + if HWND <> 0 then + begin + Result := TQtWidget(HWND).IsActiveWindow; + TQtWidget(HWnd).Activate; + end; end; function TQtWidgetSet.SetMenu(AWindowHandle: HWND; AMenuHandle: HMENU): Boolean;