On 4/1/25 06:15, Ivan Vučica wrote:


On Sun, Mar 2, 2025 at 12:49 AM Ethan C <[email protected]> wrote:

    Ok, I contacted the WPE devs on their Matrix channel
    (#wpe:matrix.org <https://matrix.to/#/%23wpe:matrix.org>, #wpe on
    OFTC if you like IRC better). One of them said that it's pretty
    unlikely that we can use the existing WebKit.framework because it
    probably has lots of dependencies on XNU/Mach/etc. He pointed me
    to the example of integrating with QtQuick (the QML-based OpenGL
    GUI library in Qt6, plasmashell is written in it and so are most
    of the newer KDE apps and all of KDE's mobile apps):
    
https://github.com/WebKit/WebKit/tree/main/Source/WebKit/UIProcess/API/wpe/qt6.

    He said we should use their new WPEPlatform API, but that we would
    need to build WPE from source rather than using release builds.
    Overall, it seems like this is a good way to get a browser engine
    integrated.

[snip screenshot]

I vaguely recall that the student working on the GNUstep port also got some feedback that they don't want the GNUstep port inside WebKit without a strong commitment to continued maintenance.
Yes, this is why I thought we should use WPE instead.

Regarding SVG, if anyone is up for a fun time, just Core Animation itself should be a decent base for implementing a renderer. For just the renderer, this does not require any AppKit integration. There would still be a lot of work (the more you go into "oh this has most of HTML in it", the more trouble you'll end up with), but the basics should be doable: - CA is renderable into any OpenGL context (shaders needed to enable shadow blur, framebuffers needed for render-to-texture to avoid a needless pixel copy),
- some animation stuff in CA is very reminiscent of SVG
- drawing paths is in Opal / Core Graphics

CA implementation does not deal with animating content changes, which is needed, notably, if anyone wants to implement an iPhoneOS 2-through-iOS6 era UINavigationController correctly; I have no opinions on how it works with the flat iOS 7 look. This is what would hurt the ability to implement something like macSVG (homepage has "path animation with stroke-dasharray" as a demo; I don't expect that to be trivial with just CG+CA, especially the cut-down ~compatibility ~layers that are in GS right now).
Oh, interesting!

Reply via email to