Bug 83895 - Simplify/unify Weston's transformation code
Summary: Simplify/unify Weston's transformation code
Alias: None
Product: Wayland
Classification: Unclassified
Component: weston (show other bugs)
Version: unspecified
Hardware: All All
: medium enhancement
Assignee: Wayland bug list
QA Contact:
Depends on: 83989
  Show dependency treegraph
Reported: 2014-09-15 15:26 UTC by Derek Foreman
Modified: 2018-06-08 23:52 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Description Derek Foreman 2014-09-15 15:26:53 UTC
Weston's renderers may use different co-ordinate systems and have conceptually different ways of handling image data (pixman moves the pixels, gl moves the rectangle they're drawn on)

We currently represent transformations with a handful of floats(scale, translation) and an enum(monitor orientations).

This makes the pixman renderer easily broken since a lot of cases (all the monitor orientations) have to be considered for every change.

By creating transformation matrices and reducing as many of these special cases as possible to simple matrix multiplication we should be able to make the pixman renderer more maintainable and simplify a lot of other code as well.

Current work in progress at:

Based on the work started at:
Comment 1 Pekka Paalanen 2015-09-01 11:33:21 UTC
Do we still have something left to push upstream?

Not asking for a rebased patch set, just curious as I have a feeling we've landed at least some of this stuff already.

I recall this series was mostly waiting for the screenshot-based testing to mature, so adding it as a blocker.
Comment 2 Derek Foreman 2015-09-01 22:02:20 UTC
There's a lot left here, about 15 patches.

It was waiting for screenshotting, and a nice output transform test case to help validate it.

I just updated the github branch - the final commit in the series should probably be discarded (and re-implemented differently once atomic lands)
Comment 3 GitLab Migration User 2018-06-08 23:52:49 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/wayland/weston/issues/47.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.