[PATCH 00/15] weston scaling support
Jason Ekstrand
jason at jlekstrand.net
Wed May 22 18:36:50 PDT 2013
On Wed, May 22, 2013 at 7:57 PM, Kristian Høgsberg <hoegsberg at gmail.com>wrote:
> On Wed, May 22, 2013 at 02:41:24PM +0200, alexl at redhat.com wrote:
> > 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
>
> Two more:
>
> * window.c pre-renders decorations at a fixed 1-to-1 pixel size which
> then get scaled up. The rounded corners look blocky when you use a
> scale > 1.
>
> * Don't send out new wl_output events to clients that bind with
> version 1. For this I think we want to extend wl_resource with an
> int version; field.
>
I hate to rain on the parade, but it's not going to be that simple. I
already tried adding a field to wl_resource and, as it currently stands, it
causes major issues. As a reminder, this is because wl_buffer has a
wl_resource field which means that altering wl_resource breaks binary
compatibility for EGL implementations.
I've been trying to figure out how to do this with my java stuff and I
really think adding a version flag to wl_resource is the way to do it.
Unfortunately, but it's not going to be easy.
> > 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.
>
> I read through the latest wayland protocol patches and the discussion
> around them and didn't seen anything I didn't like. I think the
> approach here is good and agree with the consensus. This patch series
> looks great too and I like the improvements to the pixman renderer and
> the compositor-x11.c optimization.
>
> I've applied both wayland and weston patches. The protocol is not set
> in stone, but the 1.2 release is coming up end of June, and which
> point we lock it down. So we can tweak it further, but at least the
> bulk of the work is now landed.
>
> thanks,
> Kristian
>
> > The series is also availible in the scale branch here: (eventually)
> > http://cgit.freedesktop.org/~alexl/weston/
> >
> > 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(-)
> >
> > --
> > 1.8.1.4
> >
> > _______________________________________________
> > wayland-devel mailing list
> > wayland-devel at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/wayland-devel
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-devel/attachments/20130522/0ebfd816/attachment.html>
More information about the wayland-devel
mailing list