Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eba4009d authored by Android (Google) Code Review's avatar Android (Google) Code Review
Browse files

Merge change 8109

* changes:
  Add a flag to set whether the overlay has been initialized.  Commit needs to be called at least once on each overlay, and it appears that sometimes this doesn't happen because the visibility never changes.  With this change the overlay parameter and position will be committed when either the visibility of the window changes, or on the first call to visibility resolved, if it hasn't already been done.
parents 6bb388e5 10001700
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -575,6 +575,7 @@ LayerBuffer::OverlaySource::OverlaySource(LayerBuffer& layer,
    mFormat = overlay->format; 
    mWidthStride = overlay->w_stride;
    mHeightStride = overlay->h_stride;
    mInitialized = false;

    mOverlayHandle = overlay->getHandleRef(overlay);
    
@@ -614,8 +615,9 @@ void LayerBuffer::OverlaySource::onVisibilityResolved(
    // this code-path must be as tight as possible, it's called each time
    // the screen is composited.
    if (UNLIKELY(mOverlay != 0)) {
        if (mVisibilityChanged) {
        if (mVisibilityChanged || !mInitialized) {
            mVisibilityChanged = false;
            mInitialized = true;
            const Rect& bounds = mLayer.getTransformedBounds();
            int x = bounds.left;
            int y = bounds.top;
+1 −0
Original line number Diff line number Diff line
@@ -175,6 +175,7 @@ private:
        int32_t mWidthStride;
        int32_t mHeightStride;
        mutable Mutex mLock;
        bool mInitialized;
    };