From f7215ec61b1c668e1edc577b12acf12a0f5b6122 Mon Sep 17 00:00:00 2001 From: zeljan1 Date: Tue, 14 Jan 2025 09:55:14 +0100 Subject: [PATCH] Gtk3: fixed GetDC() --- lcl/interfaces/gtk3/gtk3winapi.inc | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/lcl/interfaces/gtk3/gtk3winapi.inc b/lcl/interfaces/gtk3/gtk3winapi.inc index 536021bef1..ce8122af43 100644 --- a/lcl/interfaces/gtk3/gtk3winapi.inc +++ b/lcl/interfaces/gtk3/gtk3winapi.inc @@ -2029,8 +2029,11 @@ begin begin Widget := TGtk3Widget(hWnd); Result := Widget.Context; - if Result = 0 then - Result := HDC(Gtk3DefaultContext); + if (Result = 0) then + begin + Result := HDC(TGtk3DeviceContext.Create(Widget.GetContainerWidget, False)); + TGtk3DeviceContext(Result).CanRelease := True; + end; end else Result := HDC(Gtk3ScreenContext); end; @@ -2045,14 +2048,6 @@ begin OriginDiff); end; -function TGtk3WidgetSet.GetDesignerDC(WindowHandle: HWND): HDC; -begin - {$IFDEF GTK3DEBUGNOTIMPLEMENTED} - DebugLn('WARNING: TGtk3WidgetSet.GetDesignerDC not implemented ...'); - {$ENDIF} - Result:=inherited GetDesignerDC(WindowHandle); -end; - function TGtk3WidgetSet.GetDeviceCaps(DC: HDC; Index: Integer): Integer; var pscr: PGdkScreen;