@frandavid100 This has worked for me for years and still does.
Despite of its enormous codebase it wasn't that hard to look around and find relevant stuff - the GTK layer is fairly thin. The hardest part was to compile it, but running distcc on a Steam Deck sped it up well 😄
We still need to:
- emit pointercancel when the browser takes the touch gesture over
- not change scrolling targets during scrolling just because a new one "flew" onto the cursor/finger
- have some thresholds to differentiate between vertical and horizontal scrolling
All my #WebKit merge requests have been merged. Now #WebKitGTK supports touch PointerEvent API, touch point coordinates are fractional, synthesized mouse events are unbroken and both WebKitGTK and WPE WebKit handle pointer capture and release according to the spec. This should considerably improve compatibility of #Epiphany (#GNOME Web) with touch interfaces.
There are still some more things to fix in there, maybe someone in #mobilelinux #linuxmobile community would like to give it a try?
@datenwolf Fun fact - you can write a protocol to offload graphics operations over Wayland too, and you'll instantly get about the same adoption of it as that part of X11 has today 😁
With things like QtQuick being basically a big scene-graph canvas to draw you won't get much further than that anyway.
@datenwolf @newbyte @mirabilos @jzb The truth is - these toolkits used to work the way you describe and they have been reworked since for good reasons, which is why we can now do or think about doing things like multi-GPU with GPU hot-(un)plug, split render/display nodes, modifiers, zero-copy, desktop effects (incl. accessibility ones) and lots of other stuff that software from 90s simply did not have to concern itself with.
@datenwolf @newbyte @mirabilos @jzb So now you're saying that to reap the benefits of "old-school graphics system" you need to constrain yourself to very specific bits of software from the past? How is that different to this theoretical non-composited Wayland setup, which could actually be maintainable if anyone cared? What happened to "give the benefits to all applications, without extra effort"? 🤔
@datenwolf @newbyte @mirabilos @jzb Meanwhile in the real world even X11 clients allocate their wholly owned surfaces to be presented with DRI.
@datenwolf @newbyte @mirabilos @jzb Yes, we even had Xvideo. But you know that offloaded surfaces can be efficiently overlaid, underlaid, alpha-composited, transformed? And it works today with device-independent APIs :)
@datenwolf @newbyte @mirabilos @jzb Pretty much all of them these days, as this is handled by dmabuf feedbacks and buffer modifiers, so it works even with split render/display pipelines or with multiple GPUs.
@datenwolf @newbyte @mirabilos @jzb That's just one implementation, at least KWin and Mutter have their own ones: https://gitlab.freedesktop.org/emersion/libliftoff
GTK has GtkGraphicsOffload which is used by several apps out there - and that's just from the top of my head.
@datenwolf @newbyte @mirabilos @jzb Well, these things Just Work™ in several commonly used Wayland compositors and toolkits out there today.
@datenwolf @newbyte @mirabilos @jzb > (and lets face it, that's the only configuration in which you're hitting the display engine)
Far from it! I have some hardware next to me that won't be able to smoothly output 4K video if it goes through the GPU (and not even speaking about CPU), and yet can do it. Display pipelines in modern SoCs are a bit more complex than in 1990s.
Hi, I'm dos. Silly FLOSS games, open smartphones, terrible music and more. 50% of @holypangolin; 100% of dosowisko.net. he/him/any. I don't receive DMs.