D26311: Handle output logical size changes

David Edmundson <[email protected]>
Newsgroups gmane.comp.kde.devel.kwin
Message-ID <[email protected]>
davidedmundson requested changes to this revision.
davidedmundson added a comment.
This revision now requires changes to proceed.


  Good start, the general approach is ok, but it needs a little tweak.
  
  ---
  
  I don't like OutputDeviceInterface::setLogicalSize.
  
  Currently we have a pixel size and a scale, which gives us the logical size.
  By adding an explicitly setLogicalSize we have this 3 way binding loop that is very confusing.
  
  Having an explicitly set logical size with a scale right now would break that glViewport, and it's semantically confusing as to what the compositor view size is.
  
  ----
  
  I think all of this can be remedied if we change the output device method to be
  OutputDevice::setVirtualMode(QSize)
  
  Which acts as a clip rect for where we render the plane as you have here, then have geometry() can use that instead of pixelSize.
  
  Then scale/positioning etc. will all just work intuitively without extra semantics, egl_gbm_backend.cpp wouldn't need changing.

REPOSITORY
  R108 KWin

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

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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.