diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/DockedStackExistsListener.java | 7 | ||||
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java | 10 |
2 files changed, 11 insertions, 6 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/DockedStackExistsListener.java b/packages/SystemUI/src/com/android/systemui/DockedStackExistsListener.java index 6296297a81c2..9fe730affbd9 100644 --- a/packages/SystemUI/src/com/android/systemui/DockedStackExistsListener.java +++ b/packages/SystemUI/src/com/android/systemui/DockedStackExistsListener.java @@ -74,8 +74,11 @@ public class DockedStackExistsListener { private static void onDockedStackExistsChanged(boolean exists) { synchronized (sCallbacks) { - sCallbacks.removeIf(wf -> wf.get() == null); - sCallbacks.forEach(wf -> wf.get().accept(exists)); + sCallbacks.removeIf(wf -> { + Consumer<Boolean> l = wf.get(); + if (l != null) l.accept(exists); + return l == null; + }); } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java index 12fa946fad90..7451e82c824c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java @@ -59,6 +59,7 @@ import com.android.systemui.statusbar.policy.KeyButtonDrawable; import java.io.FileDescriptor; import java.io.PrintWriter; +import java.util.function.Consumer; public class NavigationBarView extends FrameLayout implements PluginListener<NavGesture> { final static boolean DEBUG = false; @@ -564,10 +565,7 @@ public class NavigationBarView extends FrameLayout implements PluginListener<Nav getImeSwitchButton().setOnClickListener(mImeSwitcherClickListener); - DockedStackExistsListener.register(exists -> mHandler.post(() -> { - mDockedStackExists = exists; - updateRecentsIcon(); - })); + DockedStackExistsListener.register(mDockedListener); } void updateRotatedViews() { @@ -841,4 +839,8 @@ public class NavigationBarView extends FrameLayout implements PluginListener<Nav void onVerticalChanged(boolean isVertical); } + private final Consumer<Boolean> mDockedListener = exists -> mHandler.post(() -> { + mDockedStackExists = exists; + updateRecentsIcon(); + }); } |