From f59489a32abf3a70a42a23039ba95cdf69d01f47 Mon Sep 17 00:00:00 2001 From: zeljan1 Date: Tue, 14 Jan 2025 10:25:44 +0100 Subject: [PATCH] Gtk3: create DC from window if possible. --- lcl/interfaces/gtk3/gtk3winapi.inc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lcl/interfaces/gtk3/gtk3winapi.inc b/lcl/interfaces/gtk3/gtk3winapi.inc index 2f6cca3551..8864d251cd 100644 --- a/lcl/interfaces/gtk3/gtk3winapi.inc +++ b/lcl/interfaces/gtk3/gtk3winapi.inc @@ -2031,7 +2031,10 @@ begin Result := Widget.Context; if (Result = 0) then begin - Result := HDC(TGtk3DeviceContext.Create(Widget.GetContainerWidget, False)); + if Gtk3IsGdkWindow(Widget.GetWindow) then + Result := HDC(TGtk3DeviceContext.Create(Widget.GetWindow, True)) + else + Result := HDC(TGtk3DeviceContext.Create(Widget.GetContainerWidget, False)); TGtk3DeviceContext(Result).CanRelease := True; end; end else