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

Commit b9dfb92b authored by Qiming Shi's avatar Qiming Shi Committed by Rakesh Iyer
Browse files

Add dump function to dump car status bar information.



Issue: 37295298

Test: adb shell dumpstate, no crashes

Change-Id: Id037e2f2af6bb2eb270442ecb741354d98269b6f
Signed-off-by: default avatarbxu10x <bingx.xu@intel.com>
Signed-off-by: default avatarQiming Shi <qiming.shi@intel.com>
parent 842a51d8
Loading
Loading
Loading
Loading
+46 −1
Original line number Diff line number Diff line
@@ -51,7 +51,14 @@ import com.android.systemui.statusbar.phone.NavigationBarView;
import com.android.systemui.statusbar.phone.StatusBar;
import com.android.systemui.statusbar.policy.BatteryController;
import com.android.systemui.statusbar.policy.UserSwitcherController;

import com.android.keyguard.KeyguardUpdateMonitor;
import com.android.systemui.classifier.FalsingLog;
import com.android.systemui.classifier.FalsingManager;
import com.android.systemui.Prefs;

import java.io.FileDescriptor;
import java.io.PrintWriter;
import java.util.Map;
/**
 * A status bar (and navigation bar) tailored for the automotive use case.
 */
@@ -71,6 +78,7 @@ public class CarStatusBar extends StatusBar implements
    private ConnectedDeviceSignalController mConnectedDeviceSignalController;
    private CarNavigationBarView mNavigationBarView;

    private final Object mQueueLock = new Object();
    @Override
    public void start() {
        super.start();
@@ -169,6 +177,43 @@ public class CarStatusBar extends StatusBar implements
        mWindowManager.addView(navigationBarWindow, lp);
    }

    @Override
    public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
        //When executing dump() funciton simultaneously, we need to serialize them
        //to get mStackScroller's position correctly.
        synchronized (mQueueLock) {
            pw.println("  mStackScroller: " + viewInfo(mStackScroller));
            pw.println("  mStackScroller: " + viewInfo(mStackScroller)
                    + " scroll " + mStackScroller.getScrollX()
                    + "," + mStackScroller.getScrollY());
        }

        pw.print("  mTaskStackListener="); pw.println(mTaskStackListener);
        pw.print("  mController=");
        pw.println(mController);
        pw.print("  mFullscreenUserSwitcher="); pw.println(mFullscreenUserSwitcher);
        pw.print("  mCarBatteryController=");
        pw.println(mCarBatteryController);
        pw.print("  mBatteryMeterView=");
        pw.println(mBatteryMeterView);
        pw.print("  mConnectedDeviceSignalController=");
        pw.println(mConnectedDeviceSignalController);
        pw.print("  mNavigationBarView=");
        pw.println(mNavigationBarView);

        if (KeyguardUpdateMonitor.getInstance(mContext) != null) {
            KeyguardUpdateMonitor.getInstance(mContext).dump(fd, pw, args);
        }

        FalsingManager.getInstance(mContext).dump(pw);
        FalsingLog.dump(pw);

        pw.println("SharedPreferences:");
        for (Map.Entry<String, ?> entry : Prefs.getAll(mContext).entrySet()) {
            pw.print("  "); pw.print(entry.getKey()); pw.print("="); pw.println(entry.getValue());
        }
    }

    @Override
    public NavigationBarView getNavigationBarView() {
        return mNavigationBarView;