diff options
| author | Mathias Agopian <mathias@google.com> | 2010-10-25 18:29:35 -0700 |
|---|---|---|
| committer | Mathias Agopian <mathias@google.com> | 2010-10-27 18:04:11 -0700 |
| commit | e031ba8d20c39910a42ed58db06c3770bdf32eb7 (patch) | |
| tree | 07ce4cdcf958a7f26c650f58c790f81299fbf9a5 /services/surfaceflinger/LayerBuffer.cpp | |
| parent | 63e5d07ec9941d64c85210a38d569a719e844940 (diff) | |
| download | frameworks_base-e031ba8d20c39910a42ed58db06c3770bdf32eb7.zip frameworks_base-e031ba8d20c39910a42ed58db06c3770bdf32eb7.tar.gz frameworks_base-e031ba8d20c39910a42ed58db06c3770bdf32eb7.tar.bz2 | |
really fix [3118445] Transform * Transform does not work as expected
Two bugs were counter acting each other.
- rotation matrices are on the left-hand side of multiplies
- the transform of the overlay is applied before that of the layer
Change-Id: Ia79bd368e9b719235c89ecf244ea263f01ce906a
Diffstat (limited to 'services/surfaceflinger/LayerBuffer.cpp')
| -rw-r--r-- | services/surfaceflinger/LayerBuffer.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/services/surfaceflinger/LayerBuffer.cpp b/services/surfaceflinger/LayerBuffer.cpp index ccaad51..edc00f1 100644 --- a/services/surfaceflinger/LayerBuffer.cpp +++ b/services/surfaceflinger/LayerBuffer.cpp @@ -676,8 +676,8 @@ void LayerBuffer::OverlaySource::onVisibilityResolved( overlay_dev->setPosition(overlay_dev, mOverlay, x,y,w,h); // we need to combine the layer orientation and the // user-requested orientation. - Transform finalTransform = Transform(mOrientation) * - Transform(mLayer.getOrientation()); + Transform finalTransform(Transform(mLayer.getOrientation()) * + Transform(mOrientation)); overlay_dev->setParameter(overlay_dev, mOverlay, OVERLAY_TRANSFORM, finalTransform.getOrientation()); overlay_dev->commit(overlay_dev, mOverlay); |
