Page 1 of 1

WebViewGadget ignores WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS

Posted: Fri Nov 15, 2024 2:07 pm
by mve001
Hi everyone,

I am trying to create a WebViewGadget that honors the settings passed through WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS, specifically "--force-device-scale-factor=1".

Currently, WebGadget does honor the setting, WebViewGadget does not. I am running PureBasic 6.12 LTS on Windows 11.

Code: Select all

If OpenWindow(0, 0, 0, 1024, 1024, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) 
    SetEnvironmentVariable("WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS", "--force-device-scale-factor=1")
    
    ; does respect WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS
    ; WebGadget(0, 0, 0, 1024, 1024, "https://www.purebasic.com", #PB_Web_Edge) 
    
    ; doesn't respect WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS
    WebViewGadget(0, 0, 0, 1024, 1024)
    SetGadgetText(0, "https://www.purebasic.com")

    Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow 
EndIf
Is this a bug or by design?

Re: WebViewGadget ignores WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS

Posted: Fri Nov 15, 2024 2:48 pm
by Fred
It's not really a bug because we also use this env var to setup the WebViewGadget() but I admit it should be better to mix content instead of replacing it.

Re: WebViewGadget ignores WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS

Posted: Fri Nov 15, 2024 2:53 pm
by mve001
Thanks for your swift reply. I'd have no problem using WebGadget over WebViewGadget except WebGadget does not support "BindWebViewCallback" or "WebViewExecuteScript". Does this mean WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS will work with WebViewGadget in a future update?

Re: WebViewGadget ignores WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS

Posted: Fri Nov 15, 2024 3:04 pm
by Fred
I will try to do it

Re: WebViewGadget ignores WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS

Posted: Sat Nov 30, 2024 9:44 am
by mve001
I don't know if it will help you, but I've now slightly modified the code from

viewtopic.php?p=618050&hilit=CreateCore ... ns#p618050

by adding

Code: Select all

SetEnvironmentVariable("WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS", "--force-device-scale-factor=1")

to both

Code: Select all

My_CreateCoreWebView2EnvironmentWithOptions
and

Code: Select all

My_CreateWebViewEnvironmentWithOptionsInternal
Now WebViewGadget respects the setting.