Fix Hardware Acceleration Display Anomaly in GtkWebKit on Bookworm

Raspberry PI specific forum
User avatar
mk-soft
Always Here
Always Here
Posts: 6204
Joined: Fri May 12, 2006 6:51 pm
Location: Germany

Fix Hardware Acceleration Display Anomaly in GtkWebKit on Bookworm

Post by mk-soft »

Solution of ...
Link: Hardware Acceleration Display Anomaly in GtkWebKit on Bookworm

Update v1.01.1
- Added WebViewGadget

Code: Select all

;-TOP 
; Fix Linux Bookwork GtkWebkit Hardware Acceleration
; by mk-soft, v1.01.1, 27.01.2024

#WEBKIT_HARDWARE_ACCELERATION_POLICY_ON_DEMAND = 0
#WEBKIT_HARDWARE_ACCELERATION_POLICY_ALWAYS = 1
#WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER = 2

Import ""
  webkit_web_view_get_settings(webview)
  webkit_settings_set_hardware_acceleration_policy(settings, flags)
EndImport

Procedure SetWebViewAcceleration(Gadget, Policy)
  Protected webview, *settings
  Select GadgetType(gadget)
    Case #PB_GadgetType_Web ; WebGadget
      webview = GadgetID(Gadget)
    Case 35; #PB_GadgetType_WebView ; WebViewGadget
      webview = gtk_bin_get_child_(GadgetID(Gadget))
    Default
      ProcedureReturn 0
  EndSelect
  *settings = webkit_web_view_get_settings(webview)
  webkit_settings_set_hardware_acceleration_policy(*settings, Policy)
EndProcedure

; ****

If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  WebGadget(0, 10, 10, 580, 280, "https://www.purebasic.com")
  SetWebViewAcceleration(0, #WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER)
  Repeat 
  Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
My Projects ThreadToGUI / OOP-BaseClass / EventDesigner V3
PB v3.30 / v5.75 - OS Mac Mini OSX 10.xx - VM Window Pro / Linux Ubuntu
Downloads on my Webspace / OneDrive
User avatar
mk-soft
Always Here
Always Here
Posts: 6204
Joined: Fri May 12, 2006 6:51 pm
Location: Germany

Re: Fix Hardware Acceleration Display Anomaly in GtkWebKit on Bookworm

Post by mk-soft »

Update v1.01.1
- Added WebViewGadget

At time missing constant #PB_GadgetType_WebView (35)
My Projects ThreadToGUI / OOP-BaseClass / EventDesigner V3
PB v3.30 / v5.75 - OS Mac Mini OSX 10.xx - VM Window Pro / Linux Ubuntu
Downloads on my Webspace / OneDrive
Post Reply