D19253: [WIP] Send xdg_output done event only when wl_output does too

Roman Gilg <[email protected]>
Newsgroups gmane.comp.kde.devel.kwin
Message-ID <[email protected]>
romangg created this revision.
romangg added a reviewer: KWin.
Herald added a project: KWin.
Herald added a subscriber: kwin.
romangg requested review of this revision.

REVISION SUMMARY
  XWayland expects the wl_output and xdg_output done calls always to come
  in pairs. But when the wl_output position is not changed our
  KWayland::Server::OutputInterface does not send a done event.
  
  Then the next time a pair is sent before the xdg-output information is
  received XWayland pairs the wl_output data with the data from the previous
  xdg_output data, what breaks XWayland screen bound calculations and by that
  cursor placement.
  
  This preliminary fix makes sure the events are only sent in pairs. Long-term
  it would be nicer to have the synchronization directly in KWayland, such that
  we don't need to check its expected behavior from the outside.
  
  BUG: 404730

TEST PLAN
  Manually in two heads setup:
  
  - Start with two connected monitors of similar resolution.
  - Remove monitor to the right.
  - Reconnect monitor.
  - Switch monitor positions.
  
  Without the fix X cursor on the right monitor is can not reach all area.

REPOSITORY
  R108 KWin

BRANCH
  xdgOutputDone

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

AFFECTED FILES
  abstract_output.cpp

To: romangg, #kwin
Cc: kwin, jraleigh, GB_2, mkulinski, ragreen, jackyalcine, Pitel, iodelay, bwowk, ZrenBot, ngraham, alexeymin, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, 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.