From 48566d1cda2d109a94496c806286f47b8984166d Mon Sep 17 00:00:00 2001 From: huangcm <1263938474@qq.com> Date: Fri, 11 Apr 2025 08:41:19 +0000 Subject: [PATCH] feat(UI): add status bar & navigation bar control --- android/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java | 14 ++++++++++++-- android/device/softwinner/ceres-c3/ceres_c3.mk | 4 ++++ android/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java | 16 ++++++++++++++-- 3 files changed, 30 insertions(+), 4 deletions(-) diff --git a/android/device/softwinner/ceres-c3/ceres_c3.mk b/android/device/softwinner/ceres-c3/ceres_c3.mk index a84a8a4..97ac18c 100755 --- a/android/device/softwinner/ceres-c3/ceres_c3.mk +++ b/android/device/softwinner/ceres-c3/ceres_c3.mk @@ -274,6 +274,10 @@ persist.sys.bootAppClass=null PRODUCT_PROPERTY_OVERRIDES += \ + persist.sys.ban_nb=false \ + persist.sys.ban_sb=false + +PRODUCT_PROPERTY_OVERRIDES += \ persist.sys.bootonDeviceTest=0 #language pack diff --git a/android/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java b/android/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java index 857b5c2..0a39036 100644 --- a/android/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +++ b/android/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java @@ -1259,6 +1259,11 @@ mNaturalBarHeight = res.getDimensionPixelSize(com.android.internal.R.dimen.status_bar_height); } + boolean ban_sb = SystemProperties.getBoolean("persist.sys.ban_sb", false); + Log.i("HCM", "persist.sys.ban_sb = " + ban_sb); + if (ban_sb) { + mNaturalBarHeight = 0; + } return mNaturalBarHeight; } @@ -2700,8 +2705,15 @@ final Resources res = mContext.getResources(); int oldBarHeight = mNaturalBarHeight; - mNaturalBarHeight = res.getDimensionPixelSize( - com.android.internal.R.dimen.status_bar_height); + boolean ban_sb = SystemProperties.getBoolean("persist.sys.ban_sb", false); + Log.i("HCM", "persist.sys.ban_sb = " + ban_sb); + if (ban_sb) { + mNaturalBarHeight = 0; + } else { + mNaturalBarHeight = res.getDimensionPixelSize( + com.android.internal.R.dimen.status_bar_height); + } + if (mStatusBarWindowController != null && mNaturalBarHeight != oldBarHeight) { mStatusBarWindowController.setBarHeight(mNaturalBarHeight); } diff --git a/android/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java b/android/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java index eb79bae..f297773 100644 --- a/android/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java +++ b/android/frameworks/base/services/core/java/com/android/server/wm/DisplayPolicy.java @@ -733,11 +733,21 @@ } public boolean hasNavigationBar() { - return mHasNavigationBar; + boolean ban_nb = SystemProperties.getBoolean("persist.sys.ban_nb", false); + if (ban_nb) { + return false; + } else { + return mHasNavigationBar; + } } public boolean hasStatusBar() { - return mHasStatusBar; + boolean ban_sb = SystemProperties.getBoolean("persist.sys.ban_sb", false); + if (ban_sb) { + return false; + } else { + return mHasStatusBar; + } } public boolean navigationBarCanMove() { -- Gitblit v1.6.2