D26172: Add wp_viewporter support

Roman Gilg noreply at phabricator.kde.org
Mon Dec 23 11:29:54 GMT 2019


romangg added inline comments.

INLINE COMMENTS

> davidedmundson wrote in scene_qpainter.cpp:294
> This will crash on X and internal clients.

QPainter compositing is Wayland only and for internal clients `Toplevel::isClient()` returns false.

The only danger to crash could come from an XWayland window without a surface but with damage. If I remember the XWayland code correctly this can't happen though. Damage is always sent through the surface

We can add a guard of course but since QPainter backend is more our "experimentation field" than our workhorse I would go without precautionary guards. I can add a comment to the code though to explain the rational.

> davidedmundson wrote in scene_qpainter.cpp:308
> In the GL case you implement a crop if we have a sourceRect with a position and an invalid size

In case the source rect is of invalid size there might still be a destination size being specified. That means there is still a difference between vertex positions and texture coordinates what both need to be set correctly in the GL case.

In QPainter we don't deal with texture coordinates so it simplifies to only painting from the image to the buffer geometry.

REPOSITORY
  R108 KWin

REVISION DETAIL
  https://phabricator.kde.org/D26172

To: romangg, #kwin, davidedmundson
Cc: davidedmundson, kwin, LeGast00n, The-Feren-OS-Dev, sbergeron, jraleigh, zachus, fbampaloukas, GB_2, mkulinski, ragreen, jackyalcine, iodelay, crozbo, bwowk, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, hardening, romangg, jensreuterberg, abetts, sebas, apol, ahiemstra, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kwin/attachments/20191223/caae5946/attachment-0001.html>


More information about the kwin mailing list