diff --git a/lcl/interfaces/gtk2/gtk2winapi.inc b/lcl/interfaces/gtk2/gtk2winapi.inc index a5c247c210..28c7d08b4f 100644 --- a/lcl/interfaces/gtk2/gtk2winapi.inc +++ b/lcl/interfaces/gtk2/gtk2winapi.inc @@ -6536,7 +6536,7 @@ begin if GtkWindow = nil then Exit; - Result := (PGtkWidget(GtkWindow)^.Window<>nil) + Result := (PGtkWidget(GtkWindow)^.Window<>nil) and GDK_IS_WINDOW(PGtkWidget(GtkWindow)^.Window) and (gdk_window_get_state(PGtkWidget(GtkWindow)^.Window) and GDK_WINDOW_STATE_ICONIFIED <> 0); end; @@ -6600,7 +6600,7 @@ begin if GtkWindow = nil then Exit; - Result := gdk_window_get_state(PGtkWidget(GtkWindow)^.Window) and GDK_WINDOW_STATE_MAXIMIZED <> 0; + Result := GDK_IS_WINDOW(PGtkWidget(GtkWindow)^.Window) and (gdk_window_get_state(PGtkWidget(GtkWindow)^.Window) and GDK_WINDOW_STATE_MAXIMIZED <> 0); end; {------------------------------------------------------------------------------ diff --git a/lcl/interfaces/gtk2/gtk2wsforms.pp b/lcl/interfaces/gtk2/gtk2wsforms.pp index 9a2e0b95f4..54f888409c 100644 --- a/lcl/interfaces/gtk2/gtk2wsforms.pp +++ b/lcl/interfaces/gtk2/gtk2wsforms.pp @@ -794,7 +794,7 @@ begin (AForm.PopupParent = nil) then begin TempGdkWindow := {%H-}PGdkWindow(Gtk2WidgetSet.GetForegroundWindow); - if (TempGdkWindow <> nil) and (GdkWindowObject_modal_hint(GDK_WINDOW_OBJECT(TempGdkWindow)^) = 0) then + if (TempGdkWindow <> nil) and GDK_IS_WINDOW(TempGdkWindow) and (GdkWindowObject_modal_hint(GDK_WINDOW_OBJECT(TempGdkWindow)^) = 0) then begin if ((gdk_window_get_state(TempGdkWindow) and GDK_WINDOW_STATE_ABOVE) = GDK_WINDOW_STATE_ABOVE) or GTK2WidgetSet.GetAlwaysOnTopX11(TempGdkWindow) then