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

Commit 9478c343 authored by Adrian Roos's avatar Adrian Roos Committed by Android Git Automerger
Browse files

am f391b714: am 27c3fb65: am 51cfdd62: Merge "Only dispatch systemUiVisibility...

am f391b714: am 27c3fb65: am 51cfdd62: Merge "Only dispatch systemUiVisibility when it actually changes" into mnc-dev

* commit 'f391b714':
  Only dispatch systemUiVisibility when it actually changes
parents 98229449 f391b714
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -312,6 +312,9 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,
    // tracking calls to View.setSystemUiVisibility()
    int mSystemUiVisibility = View.SYSTEM_UI_FLAG_VISIBLE;

    // last value sent to window manager
    private int mLastDispatchedSystemUiVisibility = ~View.SYSTEM_UI_FLAG_VISIBLE;

    DisplayMetrics mDisplayMetrics = new DisplayMetrics();

    // XXX: gesture research
@@ -2481,7 +2484,10 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,

    private void notifyUiVisibilityChanged(int vis) {
        try {
            if (mLastDispatchedSystemUiVisibility != vis) {
                mWindowManagerService.statusBarVisibilityChanged(vis);
                mLastDispatchedSystemUiVisibility = vis;
            }
        } catch (RemoteException ex) {
        }
    }
+7 −0
Original line number Diff line number Diff line
@@ -512,7 +512,10 @@ public class WindowManagerService extends IWindowManager.Stub

    int mLayoutSeq = 0;

    // Last systemUiVisibility we received from status bar.
    int mLastStatusBarVisibility = 0;
    // Last systemUiVisibility we dispatched to windows.
    int mLastDispatchedSystemUiVisibility = 0;

    // State while inside of layoutAndPlaceSurfacesLocked().
    boolean mFocusMayChange;
@@ -10955,6 +10958,10 @@ public class WindowManagerService extends IWindowManager.Stub

    // TOOD(multidisplay): StatusBar on multiple screens?
    void updateStatusBarVisibilityLocked(int visibility) {
        if (mLastDispatchedSystemUiVisibility == visibility) {
            return;
        }
        mLastDispatchedSystemUiVisibility = visibility;
        mInputManager.setSystemUiVisibility(visibility);
        final WindowList windows = getDefaultWindowListLocked();
        final int N = windows.size();