mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-20 12:19:20 +02:00
win32: fix AppBringToFront when modal system dialog is visible
git-svn-id: trunk@51800 -
This commit is contained in:
parent
9c843a9ea8
commit
2fc6fbf6fc
@ -243,13 +243,20 @@ procedure TWin32WidgetSet.AppBringToFront;
|
|||||||
var
|
var
|
||||||
Window: HWND;
|
Window: HWND;
|
||||||
begin
|
begin
|
||||||
if Assigned(Screen) and Assigned(Screen.ActiveCustomForm) and Screen.ActiveCustomForm.HandleAllocated then
|
if Application.MainFormOnTaskBar and (Application.MainFormHandle<>0) then
|
||||||
Window := Screen.ActiveCustomForm.Handle
|
Window := GetLastActivePopup(Application.MainFormHandle)
|
||||||
else
|
else
|
||||||
if Assigned(Application) and Application.MainFormOnTaskBar then
|
Window := GetLastActivePopup(AppHandle);
|
||||||
Window := Application.MainFormHandle
|
if not((Window <> 0) and IsWindowVisible(Window) and IsWindowEnabled(Window)) then
|
||||||
else
|
begin
|
||||||
Window := FAppHandle;
|
if Assigned(Screen) and Assigned(Screen.ActiveCustomForm) and Screen.ActiveCustomForm.HandleAllocated then
|
||||||
|
Window := Screen.ActiveCustomForm.Handle
|
||||||
|
else
|
||||||
|
if Assigned(Application) and Application.MainFormOnTaskBar then
|
||||||
|
Window := Application.MainFormHandle
|
||||||
|
else
|
||||||
|
Window := FAppHandle;
|
||||||
|
end;
|
||||||
if (Window <> 0) and IsWindowVisible(Window) and IsWindowEnabled(Window) then
|
if (Window <> 0) and IsWindowVisible(Window) and IsWindowEnabled(Window) then
|
||||||
Windows.SetForegroundWindow(Window);
|
Windows.SetForegroundWindow(Window);
|
||||||
end;
|
end;
|
||||||
|
Loading…
Reference in New Issue
Block a user