Use device coordinates for geometry in the OpenGL scene

Arjen Hiemstra requested to merge work/ahiemstra/devicegeometry into master

This merge request contains several commits that together combine to make the OpenGL scene use device coordinates for geometry, rather than relying on the projection matrix to handle scaling for us.

The primary reason for this is to make it easier to work with geometry once we're doing snapping for fractional scaling. Additionally, it makes things a little simpler to reason about, since we know what coordinates go into OpenGL and we can check those values if needed. It also reduces some of the differences in rendering compared to how things like QtQuick use OpenGL.

To be fixed:

  • backgroundcontrast
  • blur
  • lookingglass
  • magnifier
  • mouseclick
  • mousemark
  • screentransform
  • showfps
  • showpaint
  • snaphelper
  • touchpoints
  • zoom
  • screenshot
  • overview/presentwindows/desktopgrid
  • pipewire
  • windowthumbnail
Edited by Arjen Hiemstra

Merge request reports