Skip to content
  • David Edmundson's avatar
    Introduce client level scale overrides · d70bd243
    David Edmundson authored
    This allows for compositor managed different co-ordinate space between kwin's
    logical co-ordinate space and a client's logical co-ordinate space.
    
    When combined with a modified !1959 this allows us to set a DPI in xrdb and
    mark all xwayland windows as being 2x (or other) and avoid upscales for xwayland
    clients in a way that doesn't impact other wayland clients or require
    third-party changes. Any use of fractional values is in layers we control
    instead of over the wire. kwayland-server is the right place for this
    abstraction as we need Outputs to differ on a per resource basis. Something we
    can't control from within kwin.
    
    Right now only protocols used by Xwayland are covered. If we covered
    remaining protocols we can offer user-control on all remaining clients which
    could open up other possibilities such as a user controlled dynamic resizing,
    or adapt to possible future protocol changes with wayland scaling.
    d70bd243