[PATCH 00/15] weston scaling support

alexl at redhat.com alexl at redhat.com
Wed May 22 05:41:24 PDT 2013

From: Alexander Larsson <alexl at redhat.com>

This adds support to weston (X11 and DRM backends) for output
scale and buffer_scale. It also contains some work on the
example clients to make them support buffer scaling.

I think the support is fairly comprehensive, although I'm aware of
a few outstanding issues:

* The drm backend doesn't upscale pointers on the DRM backend
* There is no support in the desktop shell for setting up a higher resolution
  cursor image on scaled outputs
* I did not yet look at the screenshoter/read_pixels APIs

Overall I think the approach is working out well, but an obvious issue is how we handle
scaling wrt modes. I'll bring this up in another mail.

The series is also availible in the scale branch here: (eventually)

Alexander Larsson (15):
  window: Support transform in widget_cairo_create()
  transformed: Rely on transformation in widget_cairo_create
  window: Track output scales
  window: allow setting a buffer scale on a window
  window: Apply buffer_scale automatically in widget_cairo_create
  transformed: Use the scale factor from the output
  window: Store server_allocation in surface size
  desktop-shell: Respect output scale and translate
  window: Add window_get_output_scale()
  terminal: Handle output transform
  transformed: Add keyboard shortcuts to change transform
  pixman-renderer: Fix up transform handling
  compositor: Support output/buffer scaling
  compositor-x11: Only repaint the damaged region
  compositor-drm: Support output scaling

 clients/desktop-shell.c   |  75 ++++++--
 clients/terminal.c        |  13 +-
 clients/transformed.c     | 124 ++++++-------
 clients/window.c          | 237 ++++++++++++++++++++++---
 clients/window.h          |  13 ++
 src/compositor-drm.c      |  88 +++++++---
 src/compositor-fbdev.c    |   3 +-
 src/compositor-headless.c |   2 +-
 src/compositor-rpi.c      |   3 +-
 src/compositor-wayland.c  |   2 +-
 src/compositor-x11.c      | 166 ++++++++++++++++--
 src/compositor.c          | 110 +++++++++---
 src/compositor.h          |  18 +-
 src/gl-renderer.c         |  21 +--
 src/pixman-renderer.c     | 436 ++++++++++++++++++++++++++++++----------------
 15 files changed, 977 insertions(+), 334 deletions(-)


More information about the wayland-devel mailing list