Skip to content

Switch to wlroots 0.17.1 and assorted fixups

Guido Günther requested to merge guidog/phoc:wlroots-0.17.1 into main

Bit of a mixed bag: We switch to wlroots 0.171, drop the unused (and broken) surface rotation and fix a damage tracking issue with popups and xdg_shell >= 3.

* view: Declare vars at top of function

  Declaring them midfunction without any assignments makes little sense.
  
* d/control: Bump wlroots dependency to 0.17.0 too

  As we're building with the embeded variant only in CI noone noticed yet.
  
* wlroots: Bump to 0.17.1

* xdg-shell: Set mapped before damaging popup

  Otherwise the following phoc_view_child_damage_whole() will
  always return early as the view isn't mapped yet.
  
* output: Drop support for surface rotation

  We're not using it, it complicates the code and it was broken
  as we generated rotated boxes (e.g. in render_texture() and
  get_surface_box() but never used them.
  
* utils: Remove now unused rotated bounds helpers

  We do this in a separate commit so they can be brought back
  easily if needed.
  
* xdg-shell: Fix popup reposition damage

  Since 40fa76e34f1b4c33c09c377095e7ff9b4897aa55 we don't damage the whole
  view containing a popup but only the popup itself reducing the damage
  submitted. This worked well unitl we switched to xdg-shell >= 3 where
  popups can be repositioned leaving traces of the old popup behind.
  This can clearly be seen with GTK's magnifier when selecting text.
  Damage the parent view on reposition to avoid this. 

Closes: #355 (closed)

Merge request reports