From 45fdafa1b31477df3a700c7109a7fbf311557509 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=8A?= =?UTF-8?q?=D1=80=20=D0=9A=D1=83=D1=80=D1=82=D0=B0=D0=BA=D0=BE=D0=B2?= Date: Wed, 25 Feb 2026 11:30:21 +0200 Subject: [PATCH] [Gtk4] Fix Browser.setText Disable hardware-acceleration-policy on Gtk 4.x (it is done for Gtk 3.x already) as first frame is never drawn when using accelerated compositing (GPU path). The DOM loads, signals fire, but the view stays blank. Different value compared to Gtk 3 is due to the fact that the setting no longer has always/ondemand/never but just always/never on Gtk 4. --- .../gtk/org/eclipse/swt/browser/WebKit.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java b/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java index cdf5ea6f18..ce98ca76bc 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java +++ b/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java @@ -786,7 +786,11 @@ public void create (Composite parent, int style) { OS.g_object_set (settings, WebKitGTK.enable_developer_extras, 1, 0); //disable hardware acceleration due to https://bugs.webkit.org/show_bug.cgi?id=239429#c11 //even evolution ended up doing the same https://gitlab.gnome.org/GNOME/evolution/-/commit/eb62ccaa28bbbca7668913ce7d8056a6d75f9b05 - if (!GTK.GTK4) { + if (GTK.GTK4) { + // "1" is "never" in webkitgtk6 https://webkitgtk.org/reference/webkitgtk/stable/enum.HardwareAccelerationPolicy.html#never + OS.g_object_set (settings, WebKitGTK.hardware_acceleration_policy, 1, 0); + } else { + // "2" is "never" in webkitgtk4 https://webkitgtk.org/reference/webkit2gtk/stable/enum.HardwareAccelerationPolicy.html#never OS.g_object_set (settings, WebKitGTK.hardware_acceleration_policy, 2, 0); }