diff options
| author | 2018-01-31 13:23:51 -0800 | |
|---|---|---|
| committer | 2018-01-31 13:23:51 -0800 | |
| commit | f29223e3d92b2e07d2f0701116c1e6e2d10a815c (patch) | |
| tree | 2cedd7474e0700b81b2db66f8603755d38ff33ed | |
| parent | cf40a9ab819a3a6a38e69149d20d76c0d691f9ae (diff) | |
Re-added Dimmer for IME window container
The dimmer was only set for AboveAppWindowContainers so IME couldn't
add a dim layer. Moved Dimmer so all NonAppWindowContainers can add a
dim layer, which includes AboveAppWindowContainers and IME container.
This also fixes the flicker issue from the bug.
Change-Id: I747eb3db4982f820f8a09b7a184d0467d240b335
Fixes: 72645607
Test: Dim layer appears when using search from IME.
Test: go/wm-smoke-auto
| -rw-r--r-- | services/core/java/com/android/server/wm/DisplayContent.java | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java index 7674b5e9ed2c..239e73e347d8 100644 --- a/services/core/java/com/android/server/wm/DisplayContent.java +++ b/services/core/java/com/android/server/wm/DisplayContent.java @@ -3599,8 +3599,6 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo } private final class AboveAppWindowContainers extends NonAppWindowContainers { - private final Dimmer mDimmer = new Dimmer(this); - private final Rect mTmpDimBoundsRect = new Rect(); AboveAppWindowContainers(String name, WindowManagerService service) { super(name, service); } @@ -3632,22 +3630,6 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo imeContainer.assignRelativeLayer(t, getSurfaceControl(), Integer.MAX_VALUE); } } - - @Override - Dimmer getDimmer() { - return mDimmer; - } - - @Override - void prepareSurfaces() { - mDimmer.resetDimStates(); - super.prepareSurfaces(); - getBounds(mTmpDimBoundsRect); - - if (mDimmer.updateDims(getPendingTransaction(), mTmpDimBoundsRect)) { - scheduleAnimation(); - } - } } /** @@ -3679,6 +3661,9 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo }; private final String mName; + private final Dimmer mDimmer = new Dimmer(this); + private final Rect mTmpDimBoundsRect = new Rect(); + NonAppWindowContainers(String name, WindowManagerService service) { super(service); mName = name; @@ -3722,6 +3707,22 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo String getName() { return mName; } + + @Override + Dimmer getDimmer() { + return mDimmer; + } + + @Override + void prepareSurfaces() { + mDimmer.resetDimStates(); + super.prepareSurfaces(); + getBounds(mTmpDimBoundsRect); + + if (mDimmer.updateDims(getPendingTransaction(), mTmpDimBoundsRect)) { + scheduleAnimation(); + } + } } private class NonMagnifiableWindowContainers extends NonAppWindowContainers { |