Branch: refs/heads/webkitglib/2.46 Home: https://github.com/WebKit/WebKit Commit: 42a2de34ce5a330a31a7d3547bfef13743a73a2c https://github.com/WebKit/WebKit/commit/42a2de34ce5a330a31a7d3547bfef13743a73a2c Author: Carlos Garcia Campos <cgar...@igalia.com> Date: 2024-08-21 (Wed, 21 Aug 2024)
Changed paths: M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.cpp M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRView.h Log Message: ----------- Cherry-pick 282550@main (ecae3f6ca830). <bug> Unreviewed. Fix the build with GPU process enabled * Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.cpp: * Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRView.h: Canonical link: https://commits.webkit.org/282550@main Commit: 90abdbe95f82b5d16f52381184b63a3a7ed24475 https://github.com/WebKit/WebKit/commit/90abdbe95f82b5d16f52381184b63a3a7ed24475 Author: Carlos Garcia Campos <cgar...@igalia.com> Date: 2024-08-21 (Wed, 21 Aug 2024) Changed paths: M Source/WebCore/platform/graphics/gbm/GraphicsContextGLGBM.cpp M Source/WebCore/platform/graphics/gbm/GraphicsContextGLGBM.h Log Message: ----------- Cherry-pick 282552@main (32015b7f049e). https://bugs.webkit.org/show_bug.cgi?id=278451 REGRESSION(282416@main): [GTK][WPE] GPU process crashes in PlatformDisplay::shared() https://bugs.webkit.org/show_bug.cgi?id=278451 Reviewed by Miguel Gomez. Since 282416@main the PlatformDisplay needs to be explicitly initialized and the GPU process isn't supposed to use PlatformDisplay (yet) so it doesn't initialize it (yet). But GraphicsContextGLGBM creates a fence in prepareForDisplay() and GLFence uses PlatformDisplay. For now we can remove the fence when GPU process is enabled since it's unused. * Source/WebCore/platform/graphics/gbm/GraphicsContextGLGBM.cpp: (WebCore::GraphicsContextGLGBM::prepareForDisplay): * Source/WebCore/platform/graphics/gbm/GraphicsContextGLGBM.h: Canonical link: https://commits.webkit.org/282552@main Commit: a983309dc0b7ce6f8c20f13ca812fba4acf80e4f https://github.com/WebKit/WebKit/commit/a983309dc0b7ce6f8c20f13ca812fba4acf80e4f Author: Lauro Moura <lmo...@igalia.com> Date: 2024-08-21 (Wed, 21 Aug 2024) Changed paths: M Source/WebDriver/Session.cpp M Source/WebDriver/SessionHost.cpp M Source/WebDriver/SessionHost.h M Source/WebDriver/glib/SessionHostGlib.cpp M Source/WebKit/UIProcess/API/glib/WebKitAutomationSession.cpp M Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp M Source/WebKit/UIProcess/Automation/Automation.json M Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp M Source/WebKit/UIProcess/Automation/WebAutomationSession.h Log Message: ----------- Cherry-pick 282489@main (79271e75c2fe). https://bugs.webkit.org/show_bug.cgi?id=277341 [WebDriver][WPE] Allow reconnections while keeping the view open https://bugs.webkit.org/show_bug.cgi?id=277341 Reviewed by Carlos Garcia Campos. Currently, when we close a session, all open windows are unconditionally closed, while the spec[1] says it's optional. Allowing the window to remain open might be interesting when we connect to an already running browser, another scenario covered by the WebDriver spec[2] and supported by WPEWebKit. For the record, while the usual practice is to let the WebDriver service manage the browser lifetime, in some cases we might want to start the browser in a more controlled way, for example, to enable profiling/debugging, loading a heavy page beforehand, etc. To allow deleting a session and keep the windows open, this commit adds a new `Automation.json` command, "deleteSession", which makes the UIProcess terminate the automation session and thus the RemoteInspector connection between the UIProcess and the WebDriver service. This command also serves as a fallback if somehow the browser fails to close all windows. On the browser-level API, this commit also adds a new signal, `WebKitAutomationSession::will-close` to notify the browser that the WebDriver client disconnected, and the browser is free to either kill or keep the view open for new sessions as required. [1] https://w3c.github.io/webdriver/#dfn-close-the-session (Step 3.5) [2] https://w3c.github.io/webdriver/#new-session (Step 8 note) * Source/WebDriver/Session.cpp: (WebDriver::Session::close): Only close windows for non-remote sessions and issue the new "deleteSession" automation command. * Source/WebDriver/SessionHost.cpp: (WebDriver::SessionHost::isRemoteBrowser const): Added * Source/WebDriver/SessionHost.h: Ditto * Source/WebDriver/glib/SessionHostGlib.cpp: (WebDriver::SessionHost::connectionDidClose): If we lost connection to a non-remote (i.e. managed) browser, kill it. (WebDriver::SessionHost::setTargetList): Check for empty target list. (WebDriver::SessionHost::isRemoteBrowser const): Added * Source/WebKit/UIProcess/API/glib/WebKitAutomationSession.cpp: (webkit_automation_session_class_init): Add new "will-close" signal * Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp: (webkitWebContextWillCloseAutomationSession): Emit the new signal * Source/WebKit/UIProcess/Automation/Automation.json: Added "deleteSession" command. * Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp: (WebKit::WebAutomationSession::deleteSession): Implemented by requesting to terminate the connection between the WebDriver service and the browser. * Source/WebKit/UIProcess/Automation/WebAutomationSession.h: Ditto. Canonical link: https://commits.webkit.org/282489@main Commit: 377ce1120af18cc69d586fe522efa42a23d3cf02 https://github.com/WebKit/WebKit/commit/377ce1120af18cc69d586fe522efa42a23d3cf02 Author: Patrick Griffis <pgrif...@igalia.com> Date: 2024-08-21 (Wed, 21 Aug 2024) Changed paths: M Source/WebCore/platform/graphics/ImagePaintingOptions.h M Source/WebCore/platform/graphics/ImageTypes.h M Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp M Source/WebCore/rendering/RenderImage.cpp Log Message: ----------- Cherry-pick 282492@main (1efcb4f3b8fb). https://bugs.webkit.org/show_bug.cgi?id=274827 [Skia] Fix image filtering not being applied https://bugs.webkit.org/show_bug.cgi?id=274827 Reviewed by Carlos Garcia Campos. Per the docs you need the fast constraint for filtering to be applied: SrcRectConstraint controls the behavior at the edge of source SkRect, provided to drawImageRect() when there is any filtering. If kStrict is set, then extra code is used to ensure it never samples outside of the src-rect. kStrict_SrcRectConstraint disables the use of mipmaps and anisotropic filtering. This change is only applied to rendering of images. * Source/WebCore/platform/graphics/ImagePaintingOptions.h: (WebCore::ImagePaintingOptions::strictImageClamping const): (WebCore::ImagePaintingOptions::setOption): * Source/WebCore/platform/graphics/ImageTypes.h: * Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp: (WebCore::GraphicsContextSkia::drawNativeImageInternal): * Source/WebCore/rendering/RenderImage.cpp: (WebCore::RenderImage::paintIntoRect): * Source/WebCore/rendering/svg/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paintIntoRect): Canonical link: https://commits.webkit.org/282492@main Compare: https://github.com/WebKit/WebKit/compare/39875a245281...377ce1120af1 To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes