D27788: Implement EGL_KHR_partial_update and EGL_EXT_swap_buffers_with_damage

Vlad Zahorodnii noreply at phabricator.kde.org
Tue Mar 17 08:21:56 GMT 2020


zzag added a comment.


  In D27788#628469 <https://phabricator.kde.org/D27788#628469>, @apol wrote:
  
  > Why too late? everything works, at least in practice.
  
  
  Yes, but it's possible to call aboutToStartPainting() after rendering something, which conceptually doesn't seem right.
  
  Ideally, we would determine the damage region for the next frame by just running prePaintScreen() hooks, but we can't really do that because we need also to run prePaintWindow() hooks, which means we need to run some parts of paintSimpleScreen() and paintGenericScreen().
  
  > We might want to add some API to make sure effects don't paint before they're allowed to but just resigning to have a worse throughput to be able to paint on prepaint feels wrong.
  
  No, we don't need such an API. When a pre-paint hook is called, an effect is allowed only to schedule repaints or update its internal state.
  
  > I don't know what proof looks here.
  
  Heh, it would be a patch where we call eglSetDamageRegionKHR() before any rendering starts and after we ran prePaintScreen() and prePaintWindow() hooks. :-)

REPOSITORY
  R108 KWin

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

To: apol, #kwin, #plasma:_mobile
Cc: mwolff, zzag, davidedmundson, kwin, Orage, cacarry, LeGast00n, The-Feren-OS-Dev, cblack, 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/20200317/409df50a/attachment.html>


More information about the kwin mailing list