Tengo que mostrar una página web de un tercero (que no puedo editar) en un WebEngineView (versión 1.3) en mi dispositivo integrado. El dispositivo tiene una pantalla con una resolución fija de 800x480.
Esta página tiene esta metaetiqueta de ventana gráfica que es la causa de mi problema:
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">Una vez que se carga la página, el tamaño del contenido dentro de WebEngineView es correctamente de 800 px. Pero el usuario puede desplazarse horizontalmente y mover el contenido hacia la izquierda. Parece que una vez que el usuario comienza a desplazarse por la página, el ancho del contenido cambia a 3200 px (verificado con alguna impresión de depuración).
Intenté agregar un WebEngineScript para eliminar la metaetiqueta, pero parece que no funciona:
WebEngineScript { id: removeMeta injectionPoint: WebEngineScript.DocumentReady sourceCode: "document.querySelector(\"[name='viewport']\").remove();" } WebEngineView { ind: webview ... userScripts: [ removeMeta ] ... onLoadingChanged: { if (loadRequest.status === WebEngineView.LoadSucceededStatus { var js = "document.documentElement.outerHTML"; webview.runJavaScript(js, function(result){console.log(result);}) } } } Si imprimo el HTML interno de la página cuando se completa el procesamiento, la etiqueta meta no está presente. Si cambio el punto de inyección a WebEngineScript.DocumentCreation la etiqueta permanece.
¿Cómo puedo ignorar la metaetiqueta y evitar el desplazamiento horizontal no deseado?