am 457bed2b: Merge "fix [3123221] Video sticks playing back upside down following orientation switch" into gingerbread

Merge commit '457bed2bc6561dd67429dde238453fee8602fa9b' into gingerbread-plus-aosp

* commit '457bed2bc6561dd67429dde238453fee8602fa9b':
  fix [3123221] Video sticks playing back upside down following orientation switch
This commit is contained in:
Mathias Agopian
2010-10-25 13:38:15 -07:00
committed by Android Git Automerger
2 changed files with 16 additions and 0 deletions

View File

@@ -132,6 +132,14 @@ void LayerBuffer::unlockPageFlip(const Transform& planeTransform,
LayerBase::unlockPageFlip(planeTransform, outDirtyRegion); LayerBase::unlockPageFlip(planeTransform, outDirtyRegion);
} }
void LayerBuffer::validateVisibility(const Transform& globalTransform)
{
sp<Source> source(getSource());
if (source != 0)
source->onvalidateVisibility(globalTransform);
LayerBase::validateVisibility(globalTransform);
}
void LayerBuffer::drawForSreenShot() const void LayerBuffer::drawForSreenShot() const
{ {
const DisplayHardware& hw(graphicPlane(0).displayHardware()); const DisplayHardware& hw(graphicPlane(0).displayHardware());
@@ -641,6 +649,11 @@ void LayerBuffer::OverlaySource::onTransaction(uint32_t flags)
} }
} }
void LayerBuffer::OverlaySource::onvalidateVisibility(const Transform&)
{
mVisibilityChanged = true;
}
void LayerBuffer::OverlaySource::onVisibilityResolved( void LayerBuffer::OverlaySource::onVisibilityResolved(
const Transform& planeTransform) const Transform& planeTransform)
{ {

View File

@@ -44,6 +44,7 @@ class LayerBuffer : public LayerBaseClient
virtual void onDraw(const Region& clip) const; virtual void onDraw(const Region& clip) const;
virtual void onTransaction(uint32_t flags); virtual void onTransaction(uint32_t flags);
virtual void onVisibilityResolved(const Transform& planeTransform); virtual void onVisibilityResolved(const Transform& planeTransform);
virtual void onvalidateVisibility(const Transform& globalTransform) { }
virtual void postBuffer(ssize_t offset); virtual void postBuffer(ssize_t offset);
virtual void unregisterBuffers(); virtual void unregisterBuffers();
virtual void destroy() { } virtual void destroy() { }
@@ -67,6 +68,7 @@ public:
virtual void drawForSreenShot() const; virtual void drawForSreenShot() const;
virtual uint32_t doTransaction(uint32_t flags); virtual uint32_t doTransaction(uint32_t flags);
virtual void unlockPageFlip(const Transform& planeTransform, Region& outDirtyRegion); virtual void unlockPageFlip(const Transform& planeTransform, Region& outDirtyRegion);
virtual void validateVisibility(const Transform& globalTransform);
status_t registerBuffers(const ISurface::BufferHeap& buffers); status_t registerBuffers(const ISurface::BufferHeap& buffers);
void postBuffer(ssize_t offset); void postBuffer(ssize_t offset);
@@ -153,6 +155,7 @@ private:
virtual void onDraw(const Region& clip) const; virtual void onDraw(const Region& clip) const;
virtual void onTransaction(uint32_t flags); virtual void onTransaction(uint32_t flags);
virtual void onVisibilityResolved(const Transform& planeTransform); virtual void onVisibilityResolved(const Transform& planeTransform);
virtual void onvalidateVisibility(const Transform& globalTransform);
virtual void destroy(); virtual void destroy();
private: private: