D13084: Avoid invalid geometry of internal clients through plasma surface interface
Roman Gilg <[email protected]>
| Newsgroups | gmane.comp.kde.devel.kwin |
|---|---|
| Message-ID | <[email protected]> |
romangg added a comment. In D13084#291552 <https://phabricator.kde.org/D13084#291552>, @davidedmundson wrote: > > One can shield > > shielding means we've already gone wrong, and you'll still get broken shadows on the first tabbox. With this patch shadows work fine on first tabbox. If they are broken elsewhere it might be a different issue. > Propositions for fixing Dialog > > 1. Fix roundtrip in kwin's QPA. Would mean a nested event loop until we hit eventsRead on the connectionThread. Technically correct, technically disgusting. > 2. Have a static/shared client registry that we process in kwin in a safe way ahead of any Dialog construction then port Plasma::Dialog/KWindowSystem et al. to use that. Might be a good idea as it will reduce some pointless traffic. > 3. Move all PlasmaShellSurface code to be in KWindowSystem (and therefore share the same registry). Will probably require new public API, but if we expose setState over this shell, surely it makes sense to expose setPosition over this shell too? Has the potential to clean up Plasma code. If we want to do any of these ideas, this will need more time to figure out which one works and how to do this one then. Since this won't be possible to do for 5.14, we should use the workaround here for this release. Because centered TabBoxes **are not functional at all** on Wayland at the moment. REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D13084 To: romangg, #kwin, davidedmundson Cc: davidedmundson, ngraham, graesslin, kwin, mkulinski, ragreen, jackyalcine, Pitel, iodelay, bwowk, ZrenBot, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart