Compare commits
No commits in common. "lineage-20-td" and "build_for_cats22flip" have entirely different histories.
lineage-20
...
build_for_
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +0,0 @@
|
||||
/patches_treble_personal/vendor_hardware_overlay
|
@ -0,0 +1,133 @@
|
||||
From f63609cfc0fcc6a488ba7d024a1b1e3853637b09 Mon Sep 17 00:00:00 2001
|
||||
From: jhenrique09 <jhenrique09.mcz@hotmail.com>
|
||||
Date: Sun, 29 Mar 2020 17:38:39 -0300
|
||||
Subject: [PATCH] fwb: Start device specific popup camera service conditionally
|
||||
|
||||
Change-Id: I07f97fe58495ef666fa317d14fa1334389015e11
|
||||
---
|
||||
.../custom/popupcamera/PopUpCameraUtils.java | 20 +++++++++++++++++++
|
||||
core/res/res/values/lineage_config.xml | 3 +++
|
||||
core/res/res/values/lineage_symbols.xml | 3 +++
|
||||
.../server/camera/CameraServiceProxy.java | 20 +++++++++++++++++++
|
||||
4 files changed, 46 insertions(+)
|
||||
create mode 100644 core/java/com/android/internal/util/custom/popupcamera/PopUpCameraUtils.java
|
||||
|
||||
diff --git a/core/java/com/android/internal/util/custom/popupcamera/PopUpCameraUtils.java b/core/java/com/android/internal/util/custom/popupcamera/PopUpCameraUtils.java
|
||||
new file mode 100644
|
||||
index 00000000000..f7988608141
|
||||
--- /dev/null
|
||||
+++ b/core/java/com/android/internal/util/custom/popupcamera/PopUpCameraUtils.java
|
||||
@@ -0,0 +1,20 @@
|
||||
+/*
|
||||
+* Copyright (C) 2019 The Pixel Experience Project
|
||||
+*
|
||||
+* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+* you may not use this file except in compliance with the License.
|
||||
+* You may obtain a copy of the License at
|
||||
+*
|
||||
+* http://www.apache.org/licenses/LICENSE-2.0
|
||||
+*
|
||||
+* Unless required by applicable law or agreed to in writing, software
|
||||
+* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
+* See the License for the specific language governing permissions and
|
||||
+* limitations under the License.
|
||||
+*/
|
||||
+package com.android.internal.util.custom.popupcamera;
|
||||
+
|
||||
+public class PopUpCameraUtils {
|
||||
+ public static String MANAGE_POPUP_CAMERA_SERVICE_PERMISSION = "org.pixelexperience.device.MANAGE_POPUP_CAMERA_SERVICE";
|
||||
+}
|
||||
diff --git a/core/res/res/values/lineage_config.xml b/core/res/res/values/lineage_config.xml
|
||||
index 4b090379f5a..3315de74147 100644
|
||||
--- a/core/res/res/values/lineage_config.xml
|
||||
+++ b/core/res/res/values/lineage_config.xml
|
||||
@@ -34,4 +34,7 @@
|
||||
<!-- The list of components which should be forced to be enabled. -->
|
||||
<string-array name="config_forceEnabledComponents" translatable="false">
|
||||
</string-array>
|
||||
+
|
||||
+ <!-- Component name of popup camera service -->
|
||||
+ <string name="config_popUpCameraServiceComponentName" translatable="false"></string>
|
||||
</resources>
|
||||
diff --git a/core/res/res/values/lineage_symbols.xml b/core/res/res/values/lineage_symbols.xml
|
||||
index 155da4479fb..c7e58b3943f 100644
|
||||
--- a/core/res/res/values/lineage_symbols.xml
|
||||
+++ b/core/res/res/values/lineage_symbols.xml
|
||||
@@ -25,4 +25,7 @@
|
||||
<java-symbol type="array" name="config_deviceDisabledComponents" />
|
||||
<java-symbol type="array" name="config_globallyDisabledComponents" />
|
||||
<java-symbol type="array" name="config_forceEnabledComponents" />
|
||||
+
|
||||
+ <!-- Component name of popup camera service -->
|
||||
+ <java-symbol type="string" name="config_popUpCameraServiceComponentName" />
|
||||
</resources>
|
||||
diff --git a/services/core/java/com/android/server/camera/CameraServiceProxy.java b/services/core/java/com/android/server/camera/CameraServiceProxy.java
|
||||
index 5f7a72c8512..9e72fa09993 100644
|
||||
--- a/services/core/java/com/android/server/camera/CameraServiceProxy.java
|
||||
+++ b/services/core/java/com/android/server/camera/CameraServiceProxy.java
|
||||
@@ -16,6 +16,7 @@
|
||||
package com.android.server.camera;
|
||||
|
||||
import android.content.BroadcastReceiver;
|
||||
+import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
@@ -32,6 +33,7 @@ import android.os.Process;
|
||||
import android.os.RemoteException;
|
||||
import android.os.SystemClock;
|
||||
import android.os.SystemProperties;
|
||||
+import android.os.UserHandle;
|
||||
import android.os.UserManager;
|
||||
import android.util.ArrayMap;
|
||||
import android.util.ArraySet;
|
||||
@@ -53,6 +55,8 @@ import java.util.Set;
|
||||
import java.util.concurrent.ScheduledThreadPoolExecutor;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
+import com.android.internal.util.custom.popupcamera.PopUpCameraUtils;
|
||||
+
|
||||
/**
|
||||
* CameraServiceProxy is the system_server analog to the camera service running in cameraserver.
|
||||
*
|
||||
@@ -106,6 +110,8 @@ public class CameraServiceProxy extends SystemService
|
||||
private final boolean mNotifyNfc;
|
||||
private final boolean mAllowMediaUid;
|
||||
|
||||
+ private final String mPopUpCameraServiceComponentName;
|
||||
+
|
||||
private ScheduledThreadPoolExecutor mLogWriterService = new ScheduledThreadPoolExecutor(
|
||||
/*corePoolSize*/ 1);
|
||||
|
||||
@@ -218,6 +224,8 @@ public class CameraServiceProxy extends SystemService
|
||||
// Don't keep any extra logging threads if not needed
|
||||
mLogWriterService.setKeepAliveTime(1, TimeUnit.SECONDS);
|
||||
mLogWriterService.allowCoreThreadTimeOut(true);
|
||||
+ mPopUpCameraServiceComponentName = mContext.getResources().getString(
|
||||
+ com.android.internal.R.string.config_popUpCameraServiceComponentName);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -338,6 +346,18 @@ public class CameraServiceProxy extends SystemService
|
||||
}
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public void onBootPhase(int phase) {
|
||||
+ if (phase == PHASE_BOOT_COMPLETED &&
|
||||
+ !mPopUpCameraServiceComponentName.equals("")) {
|
||||
+ String perm = PopUpCameraUtils.MANAGE_POPUP_CAMERA_SERVICE_PERMISSION;
|
||||
+ mContext.enforceCallingOrSelfPermission(perm, "Missing or invalid popup camera service permission: " + perm);
|
||||
+ Intent i = new Intent();
|
||||
+ i.setComponent(ComponentName.unflattenFromString(mPopUpCameraServiceComponentName));
|
||||
+ mContext.startServiceAsUser(i, UserHandle.SYSTEM);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
/**
|
||||
* Dump camera usage events to log.
|
||||
* Package-private
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,69 @@
|
||||
From 9b7fb863d5b8ed266574f5bbd73dd896f8534f89 Mon Sep 17 00:00:00 2001
|
||||
From: XiNGRZ <chenxingyu92@gmail.com>
|
||||
Date: Thu, 13 Feb 2020 20:19:22 +0800
|
||||
Subject: [PATCH] build: Add support of generating kernel includes for prebuilt
|
||||
kernels
|
||||
|
||||
For prebuilt kernels, point TARGET_KERNEL_HEADER_SOURCE to the dummy
|
||||
kernel source used to generate headers for HALs.
|
||||
|
||||
Change-Id: I8dbbe3760230ae32f4252e99d1c777a029046d39
|
||||
---
|
||||
build/soong/Android.bp | 4 ++--
|
||||
config/BoardConfigKernel.mk | 4 ++++
|
||||
config/BoardConfigSoong.mk | 2 +-
|
||||
3 files changed, 7 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/build/soong/Android.bp b/build/soong/Android.bp
|
||||
index ee68c11e..03006e44 100644
|
||||
--- a/build/soong/Android.bp
|
||||
+++ b/build/soong/Android.bp
|
||||
@@ -21,7 +21,7 @@ lineage_generator {
|
||||
name: "generated_kernel_includes",
|
||||
|
||||
// The headers make command
|
||||
- cmd: "$(PATH_OVERRIDE_SOONG) $(KERNEL_MAKE_CMD) $(KERNEL_MAKE_FLAGS) -C $(TARGET_KERNEL_SOURCE) O=$(KERNEL_BUILD_OUT_PREFIX)$(genDir) ARCH=$(KERNEL_ARCH) $(KERNEL_CROSS_COMPILE) headers_install",
|
||||
+ cmd: "$(PATH_OVERRIDE_SOONG) $(KERNEL_MAKE_CMD) $(KERNEL_MAKE_FLAGS) -C $(TARGET_KERNEL_HEADER_SOURCE) O=$(KERNEL_BUILD_OUT_PREFIX)$(genDir) ARCH=$(KERNEL_ARCH) $(KERNEL_CROSS_COMPILE) headers_install",
|
||||
|
||||
// Directories that can be imported by a cc_* module generated_headers property
|
||||
export_include_dirs: [
|
||||
@@ -32,7 +32,7 @@ lineage_generator {
|
||||
],
|
||||
|
||||
// Sources for dependency tracking
|
||||
- dep_root: "$(TARGET_KERNEL_SOURCE)",
|
||||
+ dep_root: "$(TARGET_KERNEL_HEADER_SOURCE)",
|
||||
dep_files: [
|
||||
"Makefile",
|
||||
"include/**/*",
|
||||
diff --git a/config/BoardConfigKernel.mk b/config/BoardConfigKernel.mk
|
||||
index 8479369a..508927fd 100644
|
||||
--- a/config/BoardConfigKernel.mk
|
||||
+++ b/config/BoardConfigKernel.mk
|
||||
@@ -52,6 +52,10 @@ else
|
||||
KERNEL_ARCH := $(TARGET_KERNEL_ARCH)
|
||||
endif
|
||||
|
||||
+ifneq ($(TARGET_KERNEL_SOURCE),)
|
||||
+TARGET_KERNEL_HEADER_SOURCE := $(TARGET_KERNEL_SOURCE)
|
||||
+endif
|
||||
+
|
||||
CLANG_PREBUILTS := $(BUILD_TOP)/prebuilts/clang/host/$(HOST_PREBUILT_TAG)/clang-r383902b
|
||||
GCC_PREBUILTS := $(BUILD_TOP)/prebuilts/gcc/$(HOST_PREBUILT_TAG)
|
||||
# arm64 toolchain
|
||||
diff --git a/config/BoardConfigSoong.mk b/config/BoardConfigSoong.mk
|
||||
index c0b01674..aacc8c56 100644
|
||||
--- a/config/BoardConfigSoong.mk
|
||||
+++ b/config/BoardConfigSoong.mk
|
||||
@@ -9,7 +9,7 @@ EXPORT_TO_SOONG := \
|
||||
KERNEL_MAKE_FLAGS \
|
||||
PATH_OVERRIDE_SOONG \
|
||||
TARGET_KERNEL_CONFIG \
|
||||
- TARGET_KERNEL_SOURCE
|
||||
+ TARGET_KERNEL_HEADER_SOURCE
|
||||
|
||||
# Setup SOONG_CONFIG_* vars to export the vars listed above.
|
||||
# Documentation here:
|
||||
--
|
||||
2.25.1
|
||||
|
0
patches_device_personal/frameworks_base/placeholder
Normal file
0
patches_device_personal/frameworks_base/placeholder
Normal file
@ -0,0 +1,28 @@
|
||||
From 7ff66a5a2479b490ae553781be0cf19ac5cf9010 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Koskovich <zvnexus@outlook.com>
|
||||
Date: Sat, 3 Oct 2020 14:28:35 -0700
|
||||
Subject: [PATCH 1/2] Make broken copy headers the default.
|
||||
|
||||
* Do not take this for S unless needed, this is a hack
|
||||
for this cycle.
|
||||
|
||||
Change-Id: I55c8897d7d4d5c2a9e62b1a931b3856b2e38956e
|
||||
---
|
||||
core/board_config.mk | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/core/board_config.mk b/core/board_config.mk
|
||||
index 86162b6f3..d152bdff6 100644
|
||||
--- a/core/board_config.mk
|
||||
+++ b/core/board_config.mk
|
||||
@@ -113,6 +113,7 @@ endif
|
||||
# ###############################################################
|
||||
$(foreach v,$(_build_broken_var_list),$(eval $(v) :=))
|
||||
BUILD_BROKEN_NINJA_USES_ENV_VARS :=
|
||||
+BUILD_BROKEN_USES_BUILD_COPY_HEADERS := true
|
||||
|
||||
# Boards may be defined under $(SRC_TARGET_DIR)/board/$(TARGET_DEVICE)
|
||||
# or under vendor/*/$(TARGET_DEVICE). Search in both places, but
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,27 +0,0 @@
|
||||
From 90eaa68455703e85c5f97d0b13945bd04351e24c Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 14 Oct 2021 12:20:52 +0000
|
||||
Subject: [PATCH] build: Remove llkd
|
||||
|
||||
...until someone figures out why Genshin Impact fails it
|
||||
|
||||
Change-Id: I29384a820a0c07b29d3f11d7039bed40eeaee926
|
||||
---
|
||||
target/product/base_system.mk | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/target/product/base_system.mk b/target/product/base_system.mk
|
||||
index b5b41f3be..c18a6dc03 100644
|
||||
--- a/target/product/base_system.mk
|
||||
+++ b/target/product/base_system.mk
|
||||
@@ -195,7 +195,6 @@ PRODUCT_PACKAGES += \
|
||||
libwilhelm \
|
||||
linker \
|
||||
linkerconfig \
|
||||
- llkd \
|
||||
lmkd \
|
||||
LocalTransport \
|
||||
locksettings \
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,42 @@
|
||||
From bd52c99f0fb44194a420df337f23639af8c26db9 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 5 Sep 2021 00:22:49 +0000
|
||||
Subject: [PATCH 2/2] Revert "Add llkd to mainline_system"
|
||||
|
||||
This reverts commit 8879840c52b2647c000dffee0935bb5af662998a.
|
||||
---
|
||||
target/product/mainline_system.mk | 9 ++++-----
|
||||
1 file changed, 4 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/target/product/mainline_system.mk b/target/product/mainline_system.mk
|
||||
index a787707a0..4653207b3 100644
|
||||
--- a/target/product/mainline_system.mk
|
||||
+++ b/target/product/mainline_system.mk
|
||||
@@ -39,9 +39,6 @@ PRODUCT_PACKAGES += \
|
||||
Tag \
|
||||
TimeZoneUpdater \
|
||||
|
||||
-# Binaries
|
||||
-PRODUCT_PACKAGES += llkd
|
||||
-
|
||||
# OTA support
|
||||
PRODUCT_PACKAGES += \
|
||||
recovery-refresh \
|
||||
@@ -49,10 +46,12 @@ PRODUCT_PACKAGES += \
|
||||
update_verifier \
|
||||
|
||||
# Wrapped net utils for /vendor access.
|
||||
-PRODUCT_PACKAGES += netutils-wrapper-1.0
|
||||
+PRODUCT_PACKAGES += \
|
||||
+ netutils-wrapper-1.0 \
|
||||
|
||||
# Charger images
|
||||
-PRODUCT_PACKAGES += charger_res_images
|
||||
+PRODUCT_PACKAGES += \
|
||||
+ charger_res_images \
|
||||
|
||||
# system_other support
|
||||
PRODUCT_PACKAGES += \
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,76 +0,0 @@
|
||||
From fdfbffda2815c0ac2270eae0efd0c31eb19e2dda Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Fri, 22 Mar 2019 00:41:20 +0800
|
||||
Subject: [PATCH 01/22] Disable FP lockouts optionally
|
||||
|
||||
Both timed and permanent lockouts - GET THE FUCK OUT
|
||||
Now targeting LockoutFramework, introduced in Android 12
|
||||
Now controlled by property "persist.sys.fp.lockouts.disable"
|
||||
|
||||
Change-Id: I2d4b091f3546d4d7903bfb4d5585629212dc9915
|
||||
---
|
||||
.../hidl/LockoutFrameworkImpl.java | 28 +++++++++++--------
|
||||
1 file changed, 17 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/LockoutFrameworkImpl.java b/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/LockoutFrameworkImpl.java
|
||||
index a0befea8e085..48c4ded9f5ca 100644
|
||||
--- a/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/LockoutFrameworkImpl.java
|
||||
+++ b/services/core/java/com/android/server/biometrics/sensors/fingerprint/hidl/LockoutFrameworkImpl.java
|
||||
@@ -25,6 +25,7 @@ import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.os.SystemClock;
|
||||
+import android.os.SystemProperties;
|
||||
import android.util.Slog;
|
||||
import android.util.SparseBooleanArray;
|
||||
import android.util.SparseIntArray;
|
||||
@@ -44,6 +45,7 @@ public class LockoutFrameworkImpl implements LockoutTracker {
|
||||
private static final int MAX_FAILED_ATTEMPTS_LOCKOUT_PERMANENT = 20;
|
||||
private static final long FAIL_LOCKOUT_TIMEOUT_MS = 30 * 1000;
|
||||
private static final String KEY_LOCKOUT_RESET_USER = "lockout_reset_user";
|
||||
+ private static final String DISABLE_FP_LOCKOUTS_PROPERTY = "persist.sys.fp.lockouts.disable";
|
||||
|
||||
private final class LockoutReceiver extends BroadcastReceiver {
|
||||
@Override
|
||||
@@ -101,23 +103,27 @@ public class LockoutFrameworkImpl implements LockoutTracker {
|
||||
}
|
||||
|
||||
void addFailedAttemptForUser(int userId) {
|
||||
- mFailedAttempts.put(userId, mFailedAttempts.get(userId, 0) + 1);
|
||||
- mTimedLockoutCleared.put(userId, false);
|
||||
+ if (!SystemProperties.getBoolean(DISABLE_FP_LOCKOUTS_PROPERTY, false)) {
|
||||
+ mFailedAttempts.put(userId, mFailedAttempts.get(userId, 0) + 1);
|
||||
+ mTimedLockoutCleared.put(userId, false);
|
||||
|
||||
- if (getLockoutModeForUser(userId) != LOCKOUT_NONE) {
|
||||
- scheduleLockoutResetForUser(userId);
|
||||
+ if (getLockoutModeForUser(userId) != LOCKOUT_NONE) {
|
||||
+ scheduleLockoutResetForUser(userId);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public @LockoutMode int getLockoutModeForUser(int userId) {
|
||||
- final int failedAttempts = mFailedAttempts.get(userId, 0);
|
||||
- if (failedAttempts >= MAX_FAILED_ATTEMPTS_LOCKOUT_PERMANENT) {
|
||||
- return LOCKOUT_PERMANENT;
|
||||
- } else if (failedAttempts > 0
|
||||
- && !mTimedLockoutCleared.get(userId, false)
|
||||
- && (failedAttempts % MAX_FAILED_ATTEMPTS_LOCKOUT_TIMED == 0)) {
|
||||
- return LOCKOUT_TIMED;
|
||||
+ if (!SystemProperties.getBoolean(DISABLE_FP_LOCKOUTS_PROPERTY, false)) {
|
||||
+ final int failedAttempts = mFailedAttempts.get(userId, 0);
|
||||
+ if (failedAttempts >= MAX_FAILED_ATTEMPTS_LOCKOUT_PERMANENT) {
|
||||
+ return LOCKOUT_PERMANENT;
|
||||
+ } else if (failedAttempts > 0
|
||||
+ && !mTimedLockoutCleared.get(userId, false)
|
||||
+ && (failedAttempts % MAX_FAILED_ATTEMPTS_LOCKOUT_TIMED == 0)) {
|
||||
+ return LOCKOUT_TIMED;
|
||||
+ }
|
||||
}
|
||||
return LOCKOUT_NONE;
|
||||
}
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,29 +1,29 @@
|
||||
From 31f4647fa3e8662e372a3dacb08a64765f29915f Mon Sep 17 00:00:00 2001
|
||||
From 0353d82691df67c3497cc0df021d8a0850b6cfec Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 6 Oct 2020 01:41:16 +0000
|
||||
Subject: [PATCH 10/22] UI: Revive navbar layout tuning via sysui_nav_bar
|
||||
tunable
|
||||
Subject: [PATCH 1/3] UI: Revive navbar layout tuning via sysui_nav_bar tunable
|
||||
|
||||
Google keeps fixing what ain't broken.
|
||||
This partially undoes https://github.com/LineageOS/android_frameworks_base/commit/e0d5ccd331e694afdc3c8462a1b845df329de2b8 and https://github.com/LineageOS/android_frameworks_base/commit/d34b4e8d278386b85a00018c502bd21d00f8813b
|
||||
|
||||
Change-Id: Ied7d7859e50fd0fcc346219964e747c5d5f4c352
|
||||
---
|
||||
.../navigationbar/NavigationBarInflaterView.java | 15 +++++++++++++++
|
||||
1 file changed, 15 insertions(+)
|
||||
.../statusbar/phone/NavigationBarInflaterView.java | 14 ++++++++++++++
|
||||
1 file changed, 14 insertions(+)
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarInflaterView.java b/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarInflaterView.java
|
||||
index 51feed875337..5f0f9a220c31 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarInflaterView.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarInflaterView.java
|
||||
@@ -118,6 +118,7 @@ public class NavigationBarInflaterView extends FrameLayout
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.java
|
||||
index 047cb702c55..e4b3395f57a 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.java
|
||||
@@ -108,6 +108,7 @@ public class NavigationBarInflaterView extends FrameLayout
|
||||
|
||||
private boolean mInverseLayout;
|
||||
private boolean mIsHintEnabled;
|
||||
private boolean mIsVertical;
|
||||
private boolean mAlternativeOrder;
|
||||
+ private boolean mUsingCustomLayout;
|
||||
|
||||
public NavigationBarInflaterView(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
@@ -177,6 +178,7 @@ public class NavigationBarInflaterView extends FrameLayout
|
||||
private OverviewProxyService mOverviewProxyService;
|
||||
private int mNavBarMode = NAV_BAR_MODE_3BUTTON;
|
||||
@@ -173,6 +174,7 @@ public class NavigationBarInflaterView extends FrameLayout
|
||||
super.onAttachedToWindow();
|
||||
Dependency.get(TunerService.class).addTunable(this, NAV_BAR_INVERSE);
|
||||
Dependency.get(TunerService.class).addTunable(this, KEY_NAVIGATION_HINT);
|
||||
@ -31,7 +31,7 @@ index 51feed875337..5f0f9a220c31 100644
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -195,6 +197,8 @@ public class NavigationBarInflaterView extends FrameLayout
|
||||
@@ -191,6 +193,8 @@ public class NavigationBarInflaterView extends FrameLayout
|
||||
mIsHintEnabled = TunerService.parseIntegerSwitch(newValue, true);
|
||||
updateHint();
|
||||
onLikelyDefaultLayoutChange();
|
||||
@ -40,7 +40,7 @@ index 51feed875337..5f0f9a220c31 100644
|
||||
}
|
||||
}
|
||||
|
||||
@@ -204,7 +208,18 @@ public class NavigationBarInflaterView extends FrameLayout
|
||||
@@ -200,7 +204,17 @@ public class NavigationBarInflaterView extends FrameLayout
|
||||
updateLayoutInversion();
|
||||
}
|
||||
|
||||
@ -55,10 +55,9 @@ index 51feed875337..5f0f9a220c31 100644
|
||||
public void onLikelyDefaultLayoutChange() {
|
||||
+ // Don't override custom layouts
|
||||
+ if (mUsingCustomLayout) return;
|
||||
+
|
||||
|
||||
// Reevaluate new layout
|
||||
final String newValue = getDefaultLayout();
|
||||
if (!Objects.equals(mCurrentLayout, newValue)) {
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 09662a87b7db9b520aa5f996c5b837717fadfdec Mon Sep 17 00:00:00 2001
|
||||
From 6fdadb36add6aa2f8c6c3d25c4ff8135278a9919 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 10 Jan 2021 11:44:29 +0000
|
||||
Subject: [PATCH 05/22] UI: Disable wallpaper zoom
|
||||
Subject: [PATCH 2/3] UI: Disable wallpaper zoom
|
||||
|
||||
It does little more than inducing motion sickness
|
||||
|
||||
@ -11,18 +11,18 @@ Change-Id: I78cc5484930b27f172cd8d8a5bd9042dce3478d0
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
|
||||
index f015b485dfa6..77045ea11775 100644
|
||||
index 51b461e7949..f761d28e68d 100644
|
||||
--- a/core/res/res/values/config.xml
|
||||
+++ b/core/res/res/values/config.xml
|
||||
@@ -5206,7 +5206,7 @@
|
||||
<item name="config_wallpaperMinScale" format="float" type="dimen">1</item>
|
||||
@@ -4384,7 +4384,7 @@
|
||||
<string name="config_customSessionPolicyProvider"></string>
|
||||
|
||||
<!-- The max scale for the wallpaper when it's zoomed in -->
|
||||
- <item name="config_wallpaperMaxScale" format="float" type="dimen">1.10</item>
|
||||
+ <item name="config_wallpaperMaxScale" format="float" type="dimen">1</item>
|
||||
|
||||
<!-- If true, the wallpaper will scale regardless of the value of shouldZoomOutWallpaper() -->
|
||||
<bool name="config_alwaysScaleWallpaper">false</bool>
|
||||
<!-- Package name that will receive an explicit manifest broadcast for
|
||||
android.os.action.POWER_SAVE_MODE_CHANGED. -->
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
@ -1,7 +1,7 @@
|
||||
From f48a8e1bb482cde1c1e0a628aea218796586130a Mon Sep 17 00:00:00 2001
|
||||
From 2fba4148047720a307d88013f20dbb87e389a751 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 5 Apr 2018 10:01:19 +0800
|
||||
Subject: [PATCH 02/22] Disable vendor mismatch warning
|
||||
Subject: [PATCH 3/3] Disable vendor mismatch warning
|
||||
|
||||
Change-Id: Ieb8fe91e2f02462f074312ed0f4885d183e9780b
|
||||
---
|
||||
@ -9,10 +9,10 @@ Change-Id: Ieb8fe91e2f02462f074312ed0f4885d183e9780b
|
||||
1 file changed, 2 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
|
||||
index ca45e087b60c..1d1da07f2942 100644
|
||||
index ec178a4b543..f1d9cd968bc 100644
|
||||
--- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
|
||||
+++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
|
||||
@@ -5875,20 +5875,8 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
|
||||
@@ -6494,20 +6494,8 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
|
||||
}
|
||||
|
||||
if (!Build.isBuildConsistent()) {
|
||||
@ -36,5 +36,5 @@ index ca45e087b60c..1d1da07f2942 100644
|
||||
}
|
||||
}
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
@ -1,47 +0,0 @@
|
||||
From d8dea7b3e03976fa4ab292f3d6fdcae84e039196 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 17 Jan 2023 17:19:19 +0000
|
||||
Subject: [PATCH 03/22] Keyguard: Fix colors of slices not updating on doze
|
||||
|
||||
Slices were invisible (black) in doze when using light wallpapers
|
||||
Introduced in https://github.com/LineageOS/android_frameworks_base/commit/a19e59d717ec6d573c11c7e8277bba3c4de189c2
|
||||
|
||||
Change-Id: I06abd8bf2e28655cc9e6d81366fd82a13454ec5a
|
||||
---
|
||||
.../com/android/keyguard/KeyguardStatusViewController.java | 7 +++++++
|
||||
.../systemui/shade/NotificationPanelViewController.java | 1 +
|
||||
2 files changed, 8 insertions(+)
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java
|
||||
index f4c581552bc4..c0f983551877 100644
|
||||
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java
|
||||
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java
|
||||
@@ -97,6 +97,13 @@ public class KeyguardStatusViewController extends ViewController<KeyguardStatusV
|
||||
mKeyguardSliceViewController.refresh();
|
||||
}
|
||||
|
||||
+ /**
|
||||
+ * The amount we're in doze.
|
||||
+ */
|
||||
+ public void setDarkAmount(float darkAmount) {
|
||||
+ mView.setDarkAmount(darkAmount);
|
||||
+ }
|
||||
+
|
||||
/**
|
||||
* Set which clock should be displayed on the keyguard. The other one will be automatically
|
||||
* hidden.
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
|
||||
index 1394c68ceeb7..6cb1da129b60 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/shade/NotificationPanelViewController.java
|
||||
@@ -4422,6 +4422,7 @@ public final class NotificationPanelViewController implements Dumpable {
|
||||
public void onDozeAmountChanged(float linearAmount, float amount) {
|
||||
mInterpolatedDarkAmount = amount;
|
||||
mLinearDarkAmount = linearAmount;
|
||||
+ mKeyguardStatusViewController.setDarkAmount(mInterpolatedDarkAmount);
|
||||
positionClockAndNotifications();
|
||||
}
|
||||
}
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,62 +0,0 @@
|
||||
From b92f1ca708133033601f8f0e70a872c5a30052df Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 16 Oct 2021 02:23:48 +0000
|
||||
Subject: [PATCH 04/22] UI: Adjust default navbar layouts
|
||||
|
||||
- Slightly tighten nodpi layout
|
||||
- Remove sw372dp layout - looks terrible, probably meant for legacy phablets, but most modern phones qualify
|
||||
|
||||
Change-Id: Ia32f5d92e6c9e36560c53e7dffce7d2c29a81fe5
|
||||
---
|
||||
.../SystemUI/res/values-sw372dp/config.xml | 25 -------------------
|
||||
packages/SystemUI/res/values/config.xml | 2 +-
|
||||
2 files changed, 1 insertion(+), 26 deletions(-)
|
||||
delete mode 100644 packages/SystemUI/res/values-sw372dp/config.xml
|
||||
|
||||
diff --git a/packages/SystemUI/res/values-sw372dp/config.xml b/packages/SystemUI/res/values-sw372dp/config.xml
|
||||
deleted file mode 100644
|
||||
index 07b797a32428..000000000000
|
||||
--- a/packages/SystemUI/res/values-sw372dp/config.xml
|
||||
+++ /dev/null
|
||||
@@ -1,25 +0,0 @@
|
||||
-<?xml version="1.0" encoding="utf-8"?>
|
||||
-<!--
|
||||
-/*
|
||||
-** Copyright 2017, The Android Open Source Project
|
||||
-**
|
||||
-** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
-** you may not use this file except in compliance with the License.
|
||||
-** You may obtain a copy of the License at
|
||||
-**
|
||||
-** http://www.apache.org/licenses/LICENSE-2.0
|
||||
-**
|
||||
-** Unless required by applicable law or agreed to in writing, software
|
||||
-** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
-** See the License for the specific language governing permissions and
|
||||
-** limitations under the License.
|
||||
-*/
|
||||
--->
|
||||
-
|
||||
-<!-- These resources are around just to allow their values to be customized
|
||||
- for different hardware and product builds. -->
|
||||
-<resources>
|
||||
- <!-- Nav bar button default ordering/layout -->
|
||||
- <string name="config_navBarLayout" translatable="false">left[.25W],back[.5WC];home;recent[.5WC],right[.25W]</string>
|
||||
-</resources>
|
||||
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
|
||||
index 99f21ed21d15..4c386f78a27a 100644
|
||||
--- a/packages/SystemUI/res/values/config.xml
|
||||
+++ b/packages/SystemUI/res/values/config.xml
|
||||
@@ -301,7 +301,7 @@
|
||||
</string-array>
|
||||
|
||||
<!-- Nav bar button default ordering/layout -->
|
||||
- <string name="config_navBarLayout" translatable="false">left[.5W],back[1WC];home;recent[1WC],right[.5W]</string>
|
||||
+ <string name="config_navBarLayout" translatable="false">left[.6W],back[1WC];home;recent[1WC],right[.6W]</string>
|
||||
<string name="config_navBarLayoutQuickstep" translatable="false">back[1.7WC];home;menu_ime[1.7WC]</string>
|
||||
<string name="config_navBarLayoutHandle" translatable="false">back[70AC];home_handle;ime_switcher[70AC]</string>
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,39 +0,0 @@
|
||||
From 6662339ff0a5507899d0f8bca883dbef8f748f1b Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 25 Sep 2022 02:20:52 +0000
|
||||
Subject: [PATCH 06/22] UI: Follow Monet and light/dark theme in user 1 icon
|
||||
|
||||
Change-Id: I755077c6003c39ddc9428da1defe6a6ddd0e5ff8
|
||||
---
|
||||
core/res/res/values-night/colors.xml | 1 +
|
||||
core/res/res/values/colors.xml | 2 +-
|
||||
2 files changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/core/res/res/values-night/colors.xml b/core/res/res/values-night/colors.xml
|
||||
index ffaccd3ddc57..e2a955b89c77 100644
|
||||
--- a/core/res/res/values-night/colors.xml
|
||||
+++ b/core/res/res/values-night/colors.xml
|
||||
@@ -33,6 +33,7 @@
|
||||
|
||||
<color name="overview_background">@color/overview_background_dark</color>
|
||||
|
||||
+ <color name="user_icon_1">@color/system_accent1_100</color>
|
||||
<color name="user_icon_4">#fff439a0</color><!-- pink -->
|
||||
<color name="user_icon_6">#ff4ecde6</color><!-- cyan -->
|
||||
<color name="user_icon_7">#fffbbc04</color><!-- yellow -->
|
||||
diff --git a/core/res/res/values/colors.xml b/core/res/res/values/colors.xml
|
||||
index b83d3b4ea298..7586684ea936 100644
|
||||
--- a/core/res/res/values/colors.xml
|
||||
+++ b/core/res/res/values/colors.xml
|
||||
@@ -176,7 +176,7 @@
|
||||
<color name="system_notification_accent_color">#00000000</color>
|
||||
|
||||
<!-- Default user icon colors -->
|
||||
- <color name="user_icon_1">#ffe46962</color><!-- red -->
|
||||
+ <color name="user_icon_1">@color/system_accent1_600</color>
|
||||
<color name="user_icon_2">#ffaf5cf7</color><!-- purple -->
|
||||
<color name="user_icon_3">#ff4c8df6</color><!-- blue -->
|
||||
<color name="user_icon_4">#fff439a0</color><!-- pink -->
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,35 +0,0 @@
|
||||
From 2249465d16cea6251df69dd13d331ed2fae270f0 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 3 Jun 2020 01:31:34 +0000
|
||||
Subject: [PATCH 07/22] UI: Increase default status bar height
|
||||
|
||||
Change-Id: Ibbcf63159e19bb2bb2b1094ea07ab85917630b07
|
||||
---
|
||||
core/res/res/values/dimens.xml | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml
|
||||
index 2542268a153a..099a6badc034 100644
|
||||
--- a/core/res/res/values/dimens.xml
|
||||
+++ b/core/res/res/values/dimens.xml
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
<!-- The default height of the status bar used in {@link SystemBarUtils#getStatusBarHeight} to
|
||||
calculate the status bar height. -->
|
||||
- <dimen name="status_bar_height_default">24dp</dimen>
|
||||
+ <dimen name="status_bar_height_default">28dp</dimen>
|
||||
<!-- Height of the status bar.
|
||||
Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead.
|
||||
-->
|
||||
@@ -49,7 +49,7 @@
|
||||
<!-- Height of the status bar in portrait.
|
||||
Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead.
|
||||
-->
|
||||
- <dimen name="status_bar_height_portrait">24dp</dimen>
|
||||
+ <dimen name="status_bar_height_portrait">28dp</dimen>
|
||||
<!-- Height of the status bar in landscape.
|
||||
Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead.
|
||||
-->
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,25 +0,0 @@
|
||||
From 380d8dff252dcde3b490cc3080bd56d2e3d21ec4 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 25 Sep 2022 02:20:20 +0000
|
||||
Subject: [PATCH 08/22] UI: Remove QS footer background
|
||||
|
||||
Change-Id: I68e82e0c5e3eddb2d3f767fe792b1436eae506ef
|
||||
---
|
||||
packages/SystemUI/res-keyguard/layout/footer_actions.xml | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res-keyguard/layout/footer_actions.xml b/packages/SystemUI/res-keyguard/layout/footer_actions.xml
|
||||
index 544d0299060d..d45744961f59 100644
|
||||
--- a/packages/SystemUI/res-keyguard/layout/footer_actions.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/layout/footer_actions.xml
|
||||
@@ -23,7 +23,6 @@
|
||||
android:elevation="@dimen/qs_panel_elevation"
|
||||
android:paddingTop="@dimen/qs_footer_actions_top_padding"
|
||||
android:paddingBottom="@dimen/qs_footer_actions_bottom_padding"
|
||||
- android:background="@drawable/qs_footer_actions_background"
|
||||
android:gravity="center_vertical|end"
|
||||
android:layout_gravity="bottom"
|
||||
/>
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,89 +0,0 @@
|
||||
From 9f047b03021034b2cb21e7b8c2845eb8dfd577d1 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 19 Mar 2022 09:22:24 +0000
|
||||
Subject: [PATCH 09/22] UI: Restore split-screen divider to pre-Sv2 looks
|
||||
|
||||
- Kill rounded corners - where two rectangles collide should be perfectly straight
|
||||
- Make it black again - taskbar should mind its own business
|
||||
|
||||
Change-Id: I240b627793b615c82bd07ebd77638cde180ef80f
|
||||
---
|
||||
.../Shell/res/values-sw600dp/colors.xml | 21 +++++++++++++++++++
|
||||
.../WindowManager/Shell/res/values/colors.xml | 2 +-
|
||||
.../wm/shell/common/split/SplitLayout.java | 19 ++---------------
|
||||
3 files changed, 24 insertions(+), 18 deletions(-)
|
||||
create mode 100644 libs/WindowManager/Shell/res/values-sw600dp/colors.xml
|
||||
|
||||
diff --git a/libs/WindowManager/Shell/res/values-sw600dp/colors.xml b/libs/WindowManager/Shell/res/values-sw600dp/colors.xml
|
||||
new file mode 100644
|
||||
index 000000000000..79db59cad3c2
|
||||
--- /dev/null
|
||||
+++ b/libs/WindowManager/Shell/res/values-sw600dp/colors.xml
|
||||
@@ -0,0 +1,21 @@
|
||||
+<?xml version="1.0" encoding="utf-8"?>
|
||||
+<!--
|
||||
+/*
|
||||
+ * Copyright 2020, The Android Open Source Project
|
||||
+ *
|
||||
+ * Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+ * you may not use this file except in compliance with the License.
|
||||
+ * You may obtain a copy of the License at
|
||||
+ *
|
||||
+ * http://www.apache.org/licenses/LICENSE-2.0
|
||||
+ *
|
||||
+ * Unless required by applicable law or agreed to in writing, software
|
||||
+ * distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
+ * See the License for the specific language governing permissions and
|
||||
+ * limitations under the License.
|
||||
+ */
|
||||
+-->
|
||||
+<resources>
|
||||
+ <color name="split_divider_background">@color/taskbar_background</color>
|
||||
+</resources>
|
||||
diff --git a/libs/WindowManager/Shell/res/values/colors.xml b/libs/WindowManager/Shell/res/values/colors.xml
|
||||
index 6fb70006e67f..906dc71d623a 100644
|
||||
--- a/libs/WindowManager/Shell/res/values/colors.xml
|
||||
+++ b/libs/WindowManager/Shell/res/values/colors.xml
|
||||
@@ -18,7 +18,7 @@
|
||||
-->
|
||||
<resources>
|
||||
<color name="docked_divider_handle">#000000</color>
|
||||
- <color name="split_divider_background">@color/taskbar_background</color>
|
||||
+ <color name="split_divider_background">@android:color/black</color>
|
||||
<drawable name="forced_resizable_background">#59000000</drawable>
|
||||
<color name="minimize_dock_shadow_start">#60000000</color>
|
||||
<color name="minimize_dock_shadow_end">#00000000</color>
|
||||
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitLayout.java b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitLayout.java
|
||||
index ffc56b6f6106..fa7d70e34dd1 100644
|
||||
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitLayout.java
|
||||
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitLayout.java
|
||||
@@ -154,23 +154,8 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange
|
||||
}
|
||||
|
||||
private void updateDividerConfig(Context context) {
|
||||
- final Resources resources = context.getResources();
|
||||
- final Display display = context.getDisplay();
|
||||
- final int dividerInset = resources.getDimensionPixelSize(
|
||||
- com.android.internal.R.dimen.docked_stack_divider_insets);
|
||||
- int radius = 0;
|
||||
- RoundedCorner corner = display.getRoundedCorner(RoundedCorner.POSITION_TOP_LEFT);
|
||||
- radius = corner != null ? Math.max(radius, corner.getRadius()) : radius;
|
||||
- corner = display.getRoundedCorner(RoundedCorner.POSITION_TOP_RIGHT);
|
||||
- radius = corner != null ? Math.max(radius, corner.getRadius()) : radius;
|
||||
- corner = display.getRoundedCorner(RoundedCorner.POSITION_BOTTOM_RIGHT);
|
||||
- radius = corner != null ? Math.max(radius, corner.getRadius()) : radius;
|
||||
- corner = display.getRoundedCorner(RoundedCorner.POSITION_BOTTOM_LEFT);
|
||||
- radius = corner != null ? Math.max(radius, corner.getRadius()) : radius;
|
||||
-
|
||||
- mDividerInsets = Math.max(dividerInset, radius);
|
||||
- mDividerSize = resources.getDimensionPixelSize(R.dimen.split_divider_bar_width);
|
||||
- mDividerWindowWidth = mDividerSize + 2 * mDividerInsets;
|
||||
+ mDividerWindowWidth = context.getResources().getDimensionPixelSize(
|
||||
+ R.dimen.split_divider_bar_width);
|
||||
}
|
||||
|
||||
/** Gets bounds of the primary split with screen based coordinate. */
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,31 +0,0 @@
|
||||
From a1b87f1cc52bd1d906554b94657634976b9fb776 Mon Sep 17 00:00:00 2001
|
||||
From: Danny Lin <danny@kdrag0n.dev>
|
||||
Date: Tue, 3 Nov 2020 22:43:12 -0800
|
||||
Subject: [PATCH 12/22] core: Remove old app target SDK dialog
|
||||
|
||||
If an app is old, users should already know that, and there's usually no
|
||||
point in warning them about it because they would already be using a
|
||||
newer version if one existed. Sometimes, using an old app is necessary
|
||||
for one reason or another, so remove this annoyance and let the user use
|
||||
their old app in peace.
|
||||
|
||||
Change-Id: I1a3021f0f9bec1ab6ff7641776391e1bd4c3cc49
|
||||
---
|
||||
services/core/java/com/android/server/wm/AppWarnings.java | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/services/core/java/com/android/server/wm/AppWarnings.java b/services/core/java/com/android/server/wm/AppWarnings.java
|
||||
index 994f07959f3b..6749ae78c09c 100644
|
||||
--- a/services/core/java/com/android/server/wm/AppWarnings.java
|
||||
+++ b/services/core/java/com/android/server/wm/AppWarnings.java
|
||||
@@ -168,7 +168,6 @@ class AppWarnings {
|
||||
public void onStartActivity(ActivityRecord r) {
|
||||
showUnsupportedCompileSdkDialogIfNeeded(r);
|
||||
showUnsupportedDisplaySizeDialogIfNeeded(r);
|
||||
- showDeprecatedTargetDialogIfNeeded(r);
|
||||
}
|
||||
|
||||
/**
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,41 +0,0 @@
|
||||
From 8b17b1dc3b1f373a0ae8a44d16a8adec599915b3 Mon Sep 17 00:00:00 2001
|
||||
From: Danny Lin <danny@kdrag0n.dev>
|
||||
Date: Tue, 5 Oct 2021 21:01:50 -0700
|
||||
Subject: [PATCH 13/22] Paint: Enable subpixel text positioning by default
|
||||
|
||||
On desktop Linux, subpixel text positioning is necessary to avoid
|
||||
kerning issues, and Android is no different. Even though most phone
|
||||
displays have relatively high DPIs, the lack of subpixel text
|
||||
positioning is only unnoticeable on high-end devices such as the Pixel 4
|
||||
XL (1440x3040 @ 6.3 in => 537 dpi).
|
||||
|
||||
For example, on the Pixel 5 (1080 x 2340 @ 6.0 in => 432 dpi),
|
||||
horizontally-scrolling labels in QS tiles can be seen "jittering"
|
||||
slightly upon close observation. This was tested with the Google Sans
|
||||
font on Google's stock OS. At this lower DPI, there is still a need for
|
||||
subpixel text positioning (at least in some cases).
|
||||
|
||||
Enable subpixel text positioning by default to fix occasional kerning
|
||||
issues and jittering when text is in motion.
|
||||
|
||||
Change-Id: I8d71e5848a745c5a2d457a28c68458920928ee09
|
||||
---
|
||||
graphics/java/android/graphics/Paint.java | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/graphics/java/android/graphics/Paint.java b/graphics/java/android/graphics/Paint.java
|
||||
index f438a03b1434..6621d1f23166 100644
|
||||
--- a/graphics/java/android/graphics/Paint.java
|
||||
+++ b/graphics/java/android/graphics/Paint.java
|
||||
@@ -260,7 +260,7 @@ public class Paint {
|
||||
|
||||
// These flags are always set on a new/reset paint, even if flags 0 is passed.
|
||||
static final int HIDDEN_DEFAULT_PAINT_FLAGS = DEV_KERN_TEXT_FLAG | EMBEDDED_BITMAP_TEXT_FLAG
|
||||
- | FILTER_BITMAP_FLAG;
|
||||
+ | FILTER_BITMAP_FLAG | SUBPIXEL_TEXT_FLAG;
|
||||
|
||||
/**
|
||||
* Font hinter option that disables font hinting.
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,113 +0,0 @@
|
||||
From db27d27f48658841c6a74e55f543f417ddb16e76 Mon Sep 17 00:00:00 2001
|
||||
From: Danny Lin <danny@kdrag0n.dev>
|
||||
Date: Mon, 11 Oct 2021 19:59:51 -0700
|
||||
Subject: [PATCH 15/22] Spoof product name for Google Play Services
|
||||
|
||||
NB: This code is under the gmscompat package, but it does not depend on
|
||||
any code from gmscompat.
|
||||
|
||||
Change-Id: Ic018c0d7abe4573143c3b92301a2625b91e6673a
|
||||
---
|
||||
core/java/android/app/Instrumentation.java | 4 ++
|
||||
.../internal/gmscompat/AttestationHooks.java | 60 +++++++++++++++++++
|
||||
2 files changed, 64 insertions(+)
|
||||
create mode 100644 core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
|
||||
diff --git a/core/java/android/app/Instrumentation.java b/core/java/android/app/Instrumentation.java
|
||||
index 556058b567f9..44449588bbab 100644
|
||||
--- a/core/java/android/app/Instrumentation.java
|
||||
+++ b/core/java/android/app/Instrumentation.java
|
||||
@@ -57,6 +57,8 @@ import android.view.WindowManagerGlobal;
|
||||
|
||||
import com.android.internal.content.ReferrerIntent;
|
||||
|
||||
+import com.android.internal.gmscompat.AttestationHooks;
|
||||
+
|
||||
import java.io.File;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
@@ -1242,6 +1244,7 @@ public class Instrumentation {
|
||||
Application app = getFactory(context.getPackageName())
|
||||
.instantiateApplication(cl, className);
|
||||
app.attach(context);
|
||||
+ AttestationHooks.initApplicationBeforeOnCreate(app);
|
||||
return app;
|
||||
}
|
||||
|
||||
@@ -1259,6 +1262,7 @@ public class Instrumentation {
|
||||
ClassNotFoundException {
|
||||
Application app = (Application)clazz.newInstance();
|
||||
app.attach(context);
|
||||
+ AttestationHooks.initApplicationBeforeOnCreate(app);
|
||||
return app;
|
||||
}
|
||||
|
||||
diff --git a/core/java/com/android/internal/gmscompat/AttestationHooks.java b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
new file mode 100644
|
||||
index 000000000000..55db97dc28a1
|
||||
--- /dev/null
|
||||
+++ b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
@@ -0,0 +1,60 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2021 The Android Open Source Project
|
||||
+ *
|
||||
+ * Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+ * you may not use this file except in compliance with the License.
|
||||
+ * You may obtain a copy of the License at
|
||||
+ *
|
||||
+ * http://www.apache.org/licenses/LICENSE-2.0
|
||||
+ *
|
||||
+ * Unless required by applicable law or agreed to in writing, software
|
||||
+ * distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
+ * See the License for the specific language governing permissions and
|
||||
+ * limitations under the License.
|
||||
+ */
|
||||
+
|
||||
+package com.android.internal.gmscompat;
|
||||
+
|
||||
+import android.app.Application;
|
||||
+import android.os.Build;
|
||||
+import android.os.SystemProperties;
|
||||
+import android.util.Log;
|
||||
+
|
||||
+import java.lang.reflect.Field;
|
||||
+
|
||||
+/** @hide */
|
||||
+public final class AttestationHooks {
|
||||
+ private static final String TAG = "GmsCompat/Attestation";
|
||||
+
|
||||
+ private static final String PACKAGE_GMS = "com.google.android.gms";
|
||||
+
|
||||
+ private AttestationHooks() { }
|
||||
+
|
||||
+ private static void setBuildField(String key, String value) {
|
||||
+ try {
|
||||
+ // Unlock
|
||||
+ Field field = Build.class.getDeclaredField(key);
|
||||
+ field.setAccessible(true);
|
||||
+
|
||||
+ // Edit
|
||||
+ field.set(null, value);
|
||||
+
|
||||
+ // Lock
|
||||
+ field.setAccessible(false);
|
||||
+ } catch (NoSuchFieldException | IllegalAccessException e) {
|
||||
+ Log.e(TAG, "Failed to spoof Build." + key, e);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ private static void spoofBuildGms() {
|
||||
+ // Alter model name to avoid hardware attestation enforcement
|
||||
+ setBuildField("MODEL", "Pixel 5a");
|
||||
+ }
|
||||
+
|
||||
+ public static void initApplicationBeforeOnCreate(Application app) {
|
||||
+ if (PACKAGE_GMS.equals(app.getPackageName())) {
|
||||
+ spoofBuildGms();
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,93 +0,0 @@
|
||||
From dc4bd0f140c6946e01e0a3c31bfc71c884138981 Mon Sep 17 00:00:00 2001
|
||||
From: Danny Lin <danny@kdrag0n.dev>
|
||||
Date: Mon, 11 Oct 2021 20:00:44 -0700
|
||||
Subject: [PATCH 16/22] keystore: Block key attestation for SafetyNet
|
||||
|
||||
SafetyNet (part of Google Play Services) opportunistically uses
|
||||
hardware-backed key attestation via KeyStore as a strong integrity
|
||||
check. This causes SafetyNet to fail on custom ROMs because the verified
|
||||
boot key and bootloader unlock state can be detected from attestation
|
||||
certificates.
|
||||
|
||||
As a workaround, we can take advantage of the fact that SafetyNet's
|
||||
usage of key attestation is opportunistic (i.e. falls back to basic
|
||||
integrity checks if it fails) and prevent it from getting the
|
||||
attestation certificate chain from KeyStore. This is done by checking
|
||||
the stack for DroidGuard, which is the codename for SafetyNet, and
|
||||
pretending that the device doesn't support key attestation.
|
||||
|
||||
Key attestation has only been blocked for SafetyNet specifically, as
|
||||
Google Play Services and other apps have many valid reasons to use it.
|
||||
For example, it appears to be involved in Google's mobile security key
|
||||
ferature.
|
||||
|
||||
Change-Id: I5146439d47f42dc6231cb45c4dab9f61540056f6
|
||||
---
|
||||
.../internal/gmscompat/AttestationHooks.java | 15 +++++++++++++++
|
||||
.../security/keystore2/AndroidKeyStoreSpi.java | 3 +++
|
||||
2 files changed, 18 insertions(+)
|
||||
|
||||
diff --git a/core/java/com/android/internal/gmscompat/AttestationHooks.java b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
index 55db97dc28a1..f2c85c82821f 100644
|
||||
--- a/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
+++ b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
@@ -22,12 +22,14 @@ import android.os.SystemProperties;
|
||||
import android.util.Log;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
+import java.util.Arrays;
|
||||
|
||||
/** @hide */
|
||||
public final class AttestationHooks {
|
||||
private static final String TAG = "GmsCompat/Attestation";
|
||||
|
||||
private static final String PACKAGE_GMS = "com.google.android.gms";
|
||||
+ private static volatile boolean sIsGms = false;
|
||||
|
||||
private AttestationHooks() { }
|
||||
|
||||
@@ -54,7 +56,20 @@ public final class AttestationHooks {
|
||||
|
||||
public static void initApplicationBeforeOnCreate(Application app) {
|
||||
if (PACKAGE_GMS.equals(app.getPackageName())) {
|
||||
+ sIsGms = true;
|
||||
spoofBuildGms();
|
||||
}
|
||||
}
|
||||
+
|
||||
+ private static boolean isCallerSafetyNet() {
|
||||
+ return Arrays.stream(Thread.currentThread().getStackTrace())
|
||||
+ .anyMatch(elem -> elem.getClassName().contains("DroidGuard"));
|
||||
+ }
|
||||
+
|
||||
+ public static void onEngineGetCertificateChain() {
|
||||
+ // Check stack for SafetyNet
|
||||
+ if (sIsGms && isCallerSafetyNet()) {
|
||||
+ throw new UnsupportedOperationException();
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
diff --git a/keystore/java/android/security/keystore2/AndroidKeyStoreSpi.java b/keystore/java/android/security/keystore2/AndroidKeyStoreSpi.java
|
||||
index 33411e1ec5b9..133a4094d434 100644
|
||||
--- a/keystore/java/android/security/keystore2/AndroidKeyStoreSpi.java
|
||||
+++ b/keystore/java/android/security/keystore2/AndroidKeyStoreSpi.java
|
||||
@@ -42,6 +42,7 @@ import android.system.keystore2.ResponseCode;
|
||||
import android.util.Log;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
+import com.android.internal.gmscompat.AttestationHooks;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.IOException;
|
||||
@@ -164,6 +165,8 @@ public class AndroidKeyStoreSpi extends KeyStoreSpi {
|
||||
|
||||
@Override
|
||||
public Certificate[] engineGetCertificateChain(String alias) {
|
||||
+ AttestationHooks.onEngineGetCertificateChain();
|
||||
+
|
||||
KeyEntryResponse response = getKeyMetadata(alias);
|
||||
|
||||
if (response == null || response.metadata.certificate == null) {
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,42 +0,0 @@
|
||||
From 05bc5fa10b4e2ebc539c32db04abbc995906ff05 Mon Sep 17 00:00:00 2001
|
||||
From: Danny Lin <danny@kdrag0n.dev>
|
||||
Date: Mon, 1 Nov 2021 20:06:48 -0700
|
||||
Subject: [PATCH 17/22] Limit SafetyNet workarounds to unstable GMS process
|
||||
|
||||
The unstable process is where SafetyNet attestation actually runs, so
|
||||
we only need to spoof the model in that process. Leaving other processes
|
||||
fixes various issues caused by model detection and flag provisioning,
|
||||
including screen-off Voice Match in Google Assistant, broken At a Glance
|
||||
weather and settings on Android 12, and more.
|
||||
|
||||
Change-Id: Idcf663907a6c3d0408dbd45b1ac53c9eb4200df8
|
||||
---
|
||||
.../com/android/internal/gmscompat/AttestationHooks.java | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/core/java/com/android/internal/gmscompat/AttestationHooks.java b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
index f2c85c82821f..37ce8c946de6 100644
|
||||
--- a/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
+++ b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
@@ -29,6 +29,8 @@ public final class AttestationHooks {
|
||||
private static final String TAG = "GmsCompat/Attestation";
|
||||
|
||||
private static final String PACKAGE_GMS = "com.google.android.gms";
|
||||
+ private static final String PROCESS_UNSTABLE = "com.google.android.gms.unstable";
|
||||
+
|
||||
private static volatile boolean sIsGms = false;
|
||||
|
||||
private AttestationHooks() { }
|
||||
@@ -55,7 +57,8 @@ public final class AttestationHooks {
|
||||
}
|
||||
|
||||
public static void initApplicationBeforeOnCreate(Application app) {
|
||||
- if (PACKAGE_GMS.equals(app.getPackageName())) {
|
||||
+ if (PACKAGE_GMS.equals(app.getPackageName()) &&
|
||||
+ PROCESS_UNSTABLE.equals(Application.getProcessName())) {
|
||||
sIsGms = true;
|
||||
spoofBuildGms();
|
||||
}
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,59 +0,0 @@
|
||||
From ace6036332743c6f1a5614b2fd573464ddbffef7 Mon Sep 17 00:00:00 2001
|
||||
From: Dyneteve <dyneteve@hentaios.com>
|
||||
Date: Tue, 23 Aug 2022 18:57:05 +0200
|
||||
Subject: [PATCH 18/22] gmscompat: Apply the SafetyNet workaround to Play Store
|
||||
aswell
|
||||
|
||||
Play Store is used for the new Play Integrity API, extend the hack
|
||||
to it aswell
|
||||
|
||||
Test: Device Integrity and Basic Integrity passes.
|
||||
|
||||
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
|
||||
Change-Id: Id607cdff0b902f285a6c1b769c0a4ee4202842b1
|
||||
---
|
||||
.../android/internal/gmscompat/AttestationHooks.java | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/core/java/com/android/internal/gmscompat/AttestationHooks.java b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
index 37ce8c946de6..65469239a0c6 100644
|
||||
--- a/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
+++ b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
@@ -29,9 +29,11 @@ public final class AttestationHooks {
|
||||
private static final String TAG = "GmsCompat/Attestation";
|
||||
|
||||
private static final String PACKAGE_GMS = "com.google.android.gms";
|
||||
+ private static final String PACKAGE_FINSKY = "com.android.vending";
|
||||
private static final String PROCESS_UNSTABLE = "com.google.android.gms.unstable";
|
||||
|
||||
private static volatile boolean sIsGms = false;
|
||||
+ private static volatile boolean sIsFinsky = false;
|
||||
|
||||
private AttestationHooks() { }
|
||||
|
||||
@@ -62,6 +64,11 @@ public final class AttestationHooks {
|
||||
sIsGms = true;
|
||||
spoofBuildGms();
|
||||
}
|
||||
+
|
||||
+ if (PACKAGE_FINSKY.equals(app.getPackageName())) {
|
||||
+ sIsFinsky = true;
|
||||
+ spoofBuildGms();
|
||||
+ }
|
||||
}
|
||||
|
||||
private static boolean isCallerSafetyNet() {
|
||||
@@ -74,5 +81,10 @@ public final class AttestationHooks {
|
||||
if (sIsGms && isCallerSafetyNet()) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
+
|
||||
+ // Check stack for PlayIntegrity
|
||||
+ if (sIsFinsky) {
|
||||
+ throw new UnsupportedOperationException();
|
||||
+ }
|
||||
}
|
||||
}
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,46 +0,0 @@
|
||||
From d67897a23c6e182294d6a6d137d7ccc430a1abe0 Mon Sep 17 00:00:00 2001
|
||||
From: Dyneteve <dyneteve@hentaios.com>
|
||||
Date: Thu, 8 Sep 2022 14:39:52 +0200
|
||||
Subject: [PATCH 19/22] gmscompat: Use Nexus 6P fingerprint for CTS/Integrity
|
||||
|
||||
Google seems to have patched the KM block to Play Store in record time,
|
||||
but is still not enforced for anything under android N.
|
||||
|
||||
Since we moved to angler FP we don't need to spoof model to Play Store
|
||||
anymore, however the KM block is still needed.
|
||||
|
||||
Test: Run Play Intregrity Attestation
|
||||
|
||||
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
|
||||
Change-Id: Ic2401a6e40ddfc4318a1d0faa87e42eb118ac3d1
|
||||
---
|
||||
.../com/android/internal/gmscompat/AttestationHooks.java | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/core/java/com/android/internal/gmscompat/AttestationHooks.java b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
index 65469239a0c6..328d9777b2a2 100644
|
||||
--- a/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
+++ b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
@@ -54,8 +54,9 @@ public final class AttestationHooks {
|
||||
}
|
||||
|
||||
private static void spoofBuildGms() {
|
||||
- // Alter model name to avoid hardware attestation enforcement
|
||||
- setBuildField("MODEL", "Pixel 5a");
|
||||
+ // Alter model name and fingerprint to avoid hardware attestation enforcement
|
||||
+ setBuildField("FINGERPRINT", "google/angler/angler:6.0/MDB08L/2343525:user/release-keys");
|
||||
+ setBuildField("MODEL", "Nexus 6P");
|
||||
}
|
||||
|
||||
public static void initApplicationBeforeOnCreate(Application app) {
|
||||
@@ -67,7 +68,6 @@ public final class AttestationHooks {
|
||||
|
||||
if (PACKAGE_FINSKY.equals(app.getPackageName())) {
|
||||
sIsFinsky = true;
|
||||
- spoofBuildGms();
|
||||
}
|
||||
}
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,27 +0,0 @@
|
||||
From 7893f246007a1989420583ab8728a5ced89e944d Mon Sep 17 00:00:00 2001
|
||||
From: Dyneteve <dyneteve@hentaios.com>
|
||||
Date: Tue, 6 Dec 2022 15:59:08 +0100
|
||||
Subject: [PATCH 20/22] gmscompat: Use actual device model name
|
||||
|
||||
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
|
||||
Change-Id: I454654d87b3ea6286e12e9a9f5ed120f06cb2aa6
|
||||
---
|
||||
core/java/com/android/internal/gmscompat/AttestationHooks.java | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/core/java/com/android/internal/gmscompat/AttestationHooks.java b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
index 328d9777b2a2..7649bb6533da 100644
|
||||
--- a/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
+++ b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
@@ -56,7 +56,7 @@ public final class AttestationHooks {
|
||||
private static void spoofBuildGms() {
|
||||
// Alter model name and fingerprint to avoid hardware attestation enforcement
|
||||
setBuildField("FINGERPRINT", "google/angler/angler:6.0/MDB08L/2343525:user/release-keys");
|
||||
- setBuildField("MODEL", "Nexus 6P");
|
||||
+ setBuildField("MODEL", Build.MODEL + "\u200b");
|
||||
}
|
||||
|
||||
public static void initApplicationBeforeOnCreate(Application app) {
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,57 +0,0 @@
|
||||
From dd5e4484df6868958941773ac310396b281e5ceb Mon Sep 17 00:00:00 2001
|
||||
From: Anirudh Gupta <anirudhgupta109@aosip.dev>
|
||||
Date: Wed, 4 Jan 2023 18:20:56 +0000
|
||||
Subject: [PATCH 21/22] gmscompat: Set shipping level to 32 for devices >=33
|
||||
|
||||
If ro.product.first_api_level is 33, its forced to use HW attestation even though the safteynet checker app shows BASIC
|
||||
setting it to 32 allows for software attestation and passing CTS
|
||||
|
||||
Change-Id: Ie7326eaac48424cdea3d9633ebe13c65053ef6c1
|
||||
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
|
||||
---
|
||||
.../internal/gmscompat/AttestationHooks.java | 18 ++++++++++++++++++
|
||||
1 file changed, 18 insertions(+)
|
||||
|
||||
diff --git a/core/java/com/android/internal/gmscompat/AttestationHooks.java b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
index 7649bb6533da..d2b1d2879c9c 100644
|
||||
--- a/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
+++ b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
@@ -18,6 +18,7 @@ package com.android.internal.gmscompat;
|
||||
|
||||
import android.app.Application;
|
||||
import android.os.Build;
|
||||
+import android.os.Build.VERSION;
|
||||
import android.os.SystemProperties;
|
||||
import android.util.Log;
|
||||
|
||||
@@ -53,10 +54,27 @@ public final class AttestationHooks {
|
||||
}
|
||||
}
|
||||
|
||||
+ private static void setVersionField(String key, Integer value) {
|
||||
+ try {
|
||||
+ // Unlock
|
||||
+ Field field = Build.VERSION.class.getDeclaredField(key);
|
||||
+ field.setAccessible(true);
|
||||
+
|
||||
+ // Edit
|
||||
+ field.set(null, value);
|
||||
+
|
||||
+ // Lock
|
||||
+ field.setAccessible(false);
|
||||
+ } catch (NoSuchFieldException | IllegalAccessException e) {
|
||||
+ Log.e(TAG, "Failed to spoof Build." + key, e);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
private static void spoofBuildGms() {
|
||||
// Alter model name and fingerprint to avoid hardware attestation enforcement
|
||||
setBuildField("FINGERPRINT", "google/angler/angler:6.0/MDB08L/2343525:user/release-keys");
|
||||
setBuildField("MODEL", Build.MODEL + "\u200b");
|
||||
+ setVersionField("DEVICE_INITIAL_SDK_INT", Build.VERSION_CODES.S);
|
||||
}
|
||||
|
||||
public static void initApplicationBeforeOnCreate(Application app) {
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,65 +0,0 @@
|
||||
From 4ffed064b21d9662631ee70d20dfd8441fcec574 Mon Sep 17 00:00:00 2001
|
||||
From: Dyneteve <dyneteve@hentaios.com>
|
||||
Date: Wed, 8 Feb 2023 15:21:01 +0000
|
||||
Subject: [PATCH 22/22] gmscompat: Make CTS/Play Integrity pass again
|
||||
|
||||
The logic behind CTS and Play Integrity has been updated today it now
|
||||
checks the product and model names against the fingerprint and if
|
||||
they do not match the CTS profile will fail.
|
||||
|
||||
Also while we are at it use a newer FP from Pixel XL and add logging
|
||||
for key attestation blocking for debugging.
|
||||
|
||||
Test: Boot, check for CTS and Play Integrity
|
||||
|
||||
Change-Id: I089d5ef935bba40338e10c795ea7d181103ffd15
|
||||
Signed-off-by: Dyneteve <dyneteve@hentaios.com>
|
||||
---
|
||||
.../internal/gmscompat/AttestationHooks.java | 20 +++++++++----------
|
||||
1 file changed, 9 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/core/java/com/android/internal/gmscompat/AttestationHooks.java b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
index d2b1d2879c9c..ef7a308a25bc 100644
|
||||
--- a/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
+++ b/core/java/com/android/internal/gmscompat/AttestationHooks.java
|
||||
@@ -72,9 +72,11 @@ public final class AttestationHooks {
|
||||
|
||||
private static void spoofBuildGms() {
|
||||
// Alter model name and fingerprint to avoid hardware attestation enforcement
|
||||
- setBuildField("FINGERPRINT", "google/angler/angler:6.0/MDB08L/2343525:user/release-keys");
|
||||
- setBuildField("MODEL", Build.MODEL + "\u200b");
|
||||
- setVersionField("DEVICE_INITIAL_SDK_INT", Build.VERSION_CODES.S);
|
||||
+ setBuildField("FINGERPRINT", "google/marlin/marlin:7.1.2/NJH47F/4146041:user/release-keys");
|
||||
+ setBuildField("PRODUCT", "marlin");
|
||||
+ setBuildField("DEVICE", "marlin");
|
||||
+ setBuildField("MODEL", "Pixel XL");
|
||||
+ setVersionField("DEVICE_INITIAL_SDK_INT", Build.VERSION_CODES.N_MR1);
|
||||
}
|
||||
|
||||
public static void initApplicationBeforeOnCreate(Application app) {
|
||||
@@ -90,18 +92,14 @@ public final class AttestationHooks {
|
||||
}
|
||||
|
||||
private static boolean isCallerSafetyNet() {
|
||||
- return Arrays.stream(Thread.currentThread().getStackTrace())
|
||||
+ return sIsGms && Arrays.stream(Thread.currentThread().getStackTrace())
|
||||
.anyMatch(elem -> elem.getClassName().contains("DroidGuard"));
|
||||
}
|
||||
|
||||
public static void onEngineGetCertificateChain() {
|
||||
- // Check stack for SafetyNet
|
||||
- if (sIsGms && isCallerSafetyNet()) {
|
||||
- throw new UnsupportedOperationException();
|
||||
- }
|
||||
-
|
||||
- // Check stack for PlayIntegrity
|
||||
- if (sIsFinsky) {
|
||||
+ // Check stack for SafetyNet or Play Integrity
|
||||
+ if (isCallerSafetyNet() || sIsFinsky) {
|
||||
+ Log.i(TAG, "Blocked key attestation sIsGms=" + sIsGms + " sIsFinsky=" + sIsFinsky);
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
}
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 3dda22bc6cad9da7d937218f157fe762dafb5d7d Mon Sep 17 00:00:00 2001
|
||||
From 47bf5612cec98931ee3076c307247ac58d07ccff Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 13 Jan 2019 21:44:48 +0800
|
||||
Subject: [PATCH] LineageParts: Invert per-app stretch-to-fullscreen
|
||||
@ -14,10 +14,10 @@ Change-Id: Icb02c8dfd84882f736e37d6cd92c35e5eb288faa
|
||||
6 files changed, 11 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/res/layout/long_screen_layout.xml b/res/layout/long_screen_layout.xml
|
||||
index 3252c10..ed4efd9 100644
|
||||
index 40d0938..1119cef 100644
|
||||
--- a/res/layout/long_screen_layout.xml
|
||||
+++ b/res/layout/long_screen_layout.xml
|
||||
@@ -25,7 +25,7 @@
|
||||
@@ -36,7 +36,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerInParent="true"
|
||||
@ -27,13 +27,13 @@ index 3252c10..ed4efd9 100644
|
||||
android:visibility="gone" />
|
||||
|
||||
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
|
||||
index 9823209..a15a439 100644
|
||||
index ee5f7f9..eeed571 100644
|
||||
--- a/res/values-zh-rCN/strings.xml
|
||||
+++ b/res/values-zh-rCN/strings.xml
|
||||
@@ -456,9 +456,9 @@
|
||||
<string name="display_rotation_90_title">90 度</string>
|
||||
<string name="display_rotation_180_title">180 度</string>
|
||||
<string name="display_rotation_270_title">270 度</string>
|
||||
@@ -448,9 +448,9 @@
|
||||
<string name="auto_power_save_summary_on">电量 %s 时自动启用省电</string>
|
||||
<string name="auto_power_save_summary_off">不要自动启用省电</string>
|
||||
<string name="auto_power_save_never">永不</string>
|
||||
- <string name="long_screen_settings_title">全屏应用</string>
|
||||
- <string name="long_screen_settings_summary">强制旧式应用程序使用全屏长宽比</string>
|
||||
- <string name="long_screen_settings_no_apps">无应用</string>
|
||||
@ -41,14 +41,14 @@ index 9823209..a15a439 100644
|
||||
+ <string name="inverse_long_screen_settings_summary">对选定的应用禁用拉伸全屏</string>
|
||||
+ <string name="inverse_long_screen_settings_no_apps">无应用</string>
|
||||
<string name="charging_sounds_settings_title">充电提示音</string>
|
||||
<string name="charging_sounds_enable_title">启用充电提示音</string>
|
||||
<string name="charging_sounds_summary">连接或断开电源时发出声音</string>
|
||||
<string name="charging_sounds_enabled_title">启用</string>
|
||||
<string name="charging_sounds_enabled_summary">连接或断开电源时发出声音</string>
|
||||
diff --git a/res/values/strings.xml b/res/values/strings.xml
|
||||
index 0358a7e..5996a8f 100644
|
||||
index 65d799a..ff23ae9 100644
|
||||
--- a/res/values/strings.xml
|
||||
+++ b/res/values/strings.xml
|
||||
@@ -579,9 +579,9 @@
|
||||
<string name="display_rotation_270_title">270 degrees</string>
|
||||
<string name="auto_power_save_never">Never</string>
|
||||
|
||||
<!-- Applications: Long screen -->
|
||||
- <string name="long_screen_settings_title">Full screen apps</string>
|
||||
@ -61,23 +61,23 @@ index 0358a7e..5996a8f 100644
|
||||
<!-- Sounds: Charging sounds -->
|
||||
<string name="charging_sounds_settings_title">Charging sounds</string>
|
||||
diff --git a/res/xml/long_screen_prefs.xml b/res/xml/long_screen_prefs.xml
|
||||
index 9a4f7bb..ece52c9 100644
|
||||
index ec947fa..20da90a 100644
|
||||
--- a/res/xml/long_screen_prefs.xml
|
||||
+++ b/res/xml/long_screen_prefs.xml
|
||||
@@ -6,6 +6,6 @@
|
||||
<PreferenceScreen
|
||||
@@ -18,6 +18,6 @@
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:lineage="http://schemas.android.com/apk/res/org.lineageos.lineageparts"
|
||||
android:key="long_screen_settings"
|
||||
- android:title="@string/long_screen_settings_title">
|
||||
+ android:title="@string/inverse_long_screen_settings_title">
|
||||
|
||||
</PreferenceScreen>
|
||||
diff --git a/res/xml/parts_catalog.xml b/res/xml/parts_catalog.xml
|
||||
index d6b19c0..6e65a31 100644
|
||||
index a4346c7..e21d7d5 100644
|
||||
--- a/res/xml/parts_catalog.xml
|
||||
+++ b/res/xml/parts_catalog.xml
|
||||
@@ -75,8 +75,8 @@
|
||||
lineage:xmlRes="@xml/power_menu_settings" />
|
||||
@@ -92,8 +92,8 @@
|
||||
lineage:xmlRes="@xml/perf_profile_settings" />
|
||||
|
||||
<part android:key="long_screen_settings"
|
||||
- android:title="@string/long_screen_settings_title"
|
||||
@ -88,10 +88,10 @@ index d6b19c0..6e65a31 100644
|
||||
lineage:xmlRes="@xml/long_screen_prefs" />
|
||||
|
||||
diff --git a/src/org/lineageos/lineageparts/applications/LongScreenSettings.java b/src/org/lineageos/lineageparts/applications/LongScreenSettings.java
|
||||
index 7155e12..4b89260 100644
|
||||
index ac04058..50ff8f6 100644
|
||||
--- a/src/org/lineageos/lineageparts/applications/LongScreenSettings.java
|
||||
+++ b/src/org/lineageos/lineageparts/applications/LongScreenSettings.java
|
||||
@@ -222,7 +222,7 @@ public class LongScreenSettings extends SettingsPreferenceFragment
|
||||
@@ -246,7 +246,7 @@ public class LongScreenSettings extends SettingsPreferenceFragment
|
||||
mApplicationsState.ensureIcon(entry);
|
||||
holder.icon.setImageDrawable(entry.icon);
|
||||
holder.state.setTag(entry);
|
||||
@ -101,5 +101,5 @@ index 7155e12..4b89260 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.34.1
|
||||
2.17.1
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From c93f729acb568f290085cea4014fbe384ec40289 Mon Sep 17 00:00:00 2001
|
||||
From 3f7f3f9546f9f23d66381f7dff887cd562285ce6 Mon Sep 17 00:00:00 2001
|
||||
From: Paul Keith <javelinanddart@gmail.com>
|
||||
Date: Tue, 30 Oct 2018 15:46:18 +0100
|
||||
Subject: [PATCH] Messaging: Add "Mark as read" quick action for message
|
||||
@ -7,7 +7,6 @@ Subject: [PATCH] Messaging: Add "Mark as read" quick action for message
|
||||
Change-Id: I7194dca022e5062926fa35709de282721ca64320
|
||||
---
|
||||
res/drawable/ic_wear_read.xml | 9 +++++++++
|
||||
res/values-zh-rCN/cm_strings.xml | 1 +
|
||||
res/values/cm_strings.xml | 3 +++
|
||||
.../messaging/datamodel/BugleNotifications.java | 14 ++++++++++++++
|
||||
.../datamodel/MessageNotificationState.java | 8 ++++++++
|
||||
@ -15,7 +14,7 @@ Change-Id: I7194dca022e5062926fa35709de282721ca64320
|
||||
.../messaging/receiver/NotificationReceiver.java | 12 +++++++++++-
|
||||
src/com/android/messaging/ui/UIIntents.java | 11 +++++++++++
|
||||
src/com/android/messaging/ui/UIIntentsImpl.java | 14 ++++++++++++++
|
||||
9 files changed, 82 insertions(+), 2 deletions(-)
|
||||
8 files changed, 81 insertions(+), 2 deletions(-)
|
||||
create mode 100644 res/drawable/ic_wear_read.xml
|
||||
|
||||
diff --git a/res/drawable/ic_wear_read.xml b/res/drawable/ic_wear_read.xml
|
||||
@ -33,17 +32,6 @@ index 0000000..9d017e6
|
||||
+ android:fillColor="#ffffff"
|
||||
+ android:pathData="M0.41,13.41L6,19L7.41,17.58L1.83,12M22.24,5.58L11.66,16.17L7.5,12L6.07,13.41L11.66,19L23.66,7M18,7L16.59,5.58L10.24,11.93L11.66,13.34L18,7Z" />
|
||||
+</vector>
|
||||
diff --git a/res/values-zh-rCN/cm_strings.xml b/res/values-zh-rCN/cm_strings.xml
|
||||
index 3cfebff..f1ffeab 100644
|
||||
--- a/res/values-zh-rCN/cm_strings.xml
|
||||
+++ b/res/values-zh-rCN/cm_strings.xml
|
||||
@@ -19,5 +19,6 @@
|
||||
<string name="swipe_to_delete_conversation_pref_summary">向右滑动以删除会话</string>
|
||||
<string name="show_emoticons_pref_title">访问表情符号</string>
|
||||
<string name="show_emoticons_pref_summary">在键盘上显示表情符号键</string>
|
||||
+ <string name="notification_mark_as_read">标记为已读</string>
|
||||
<string name="notification_channel_messages_title">短信</string>
|
||||
</resources>
|
||||
diff --git a/res/values/cm_strings.xml b/res/values/cm_strings.xml
|
||||
index f285555..858f093 100644
|
||||
--- a/res/values/cm_strings.xml
|
||||
@ -231,5 +219,5 @@ index d64082d..9281899 100644
|
||||
* Gets a PendingIntent associated with an Intent to start an Activity. All notifications
|
||||
* that starts an Activity must use this method to get a PendingIntent, which achieves two
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
||||
|
@ -1,31 +1,368 @@
|
||||
From 316e6779dde5db01258fcf5139e1d4a33933b114 Mon Sep 17 00:00:00 2001
|
||||
From 69e5c49e18b9f33cebde3d54c69477ef2c18a756 Mon Sep 17 00:00:00 2001
|
||||
From: Vachounet <vachounet@live.fr>
|
||||
Date: Mon, 26 Oct 2020 17:05:18 +0100
|
||||
Date: Tue, 24 Nov 2020 05:49:46 +0000
|
||||
Subject: [PATCH] Trebuchet: Move clear all button to actions view
|
||||
|
||||
@AndyCGYan: Instead of removing the original, hide it in a simple way
|
||||
|
||||
Change-Id: I7a0b2729c163169f7606ad4644870d07d5165e8e
|
||||
Change-Id: I9d13247501ca8e1610c17adc204ad64dd4a04cec
|
||||
---
|
||||
.../res/drawable/ic_recents_clear_all.xml | 18 ++++++++++++++++++
|
||||
.../res/layout/overview_actions_container.xml | 17 ++++++++++++++++-
|
||||
.../quickstep/fallback/RecentsState.java | 2 +-
|
||||
.../quickstep/views/LauncherRecentsView.java | 3 +--
|
||||
.../android/quickstep/views/RecentsView.java | 6 +++++-
|
||||
5 files changed, 41 insertions(+), 5 deletions(-)
|
||||
create mode 100644 quickstep/res/drawable/ic_recents_clear_all.xml
|
||||
.../RecentsViewStateController.java | 3 -
|
||||
.../FallbackRecentsStateController.java | 3 -
|
||||
.../quickstep/views/ClearAllButton.java | 112 ------------------
|
||||
.../android/quickstep/views/RecentsView.java | 52 ++------
|
||||
.../res/drawable/ic_clear_all_recents.xml | 21 ++++
|
||||
.../res/layout/overview_actions_container.xml | 17 ++-
|
||||
.../res/layout/overview_clear_all_button.xml | 27 -----
|
||||
7 files changed, 44 insertions(+), 191 deletions(-)
|
||||
delete mode 100644 quickstep/recents_ui_overrides/src/com/android/quickstep/views/ClearAllButton.java
|
||||
create mode 100644 quickstep/res/drawable/ic_clear_all_recents.xml
|
||||
delete mode 100644 quickstep/res/layout/overview_clear_all_button.xml
|
||||
|
||||
diff --git a/quickstep/res/drawable/ic_recents_clear_all.xml b/quickstep/res/drawable/ic_recents_clear_all.xml
|
||||
diff --git a/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/RecentsViewStateController.java b/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/RecentsViewStateController.java
|
||||
index 5ccc1e868..bc47c5a00 100644
|
||||
--- a/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/RecentsViewStateController.java
|
||||
+++ b/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/RecentsViewStateController.java
|
||||
@@ -35,7 +35,6 @@ import com.android.launcher3.anim.PendingAnimation;
|
||||
import com.android.launcher3.anim.PropertySetter;
|
||||
import com.android.launcher3.states.StateAnimationConfig;
|
||||
import com.android.launcher3.util.MultiValueAlpha;
|
||||
-import com.android.quickstep.views.ClearAllButton;
|
||||
import com.android.quickstep.views.LauncherRecentsView;
|
||||
import com.android.quickstep.views.RecentsView;
|
||||
|
||||
@@ -84,8 +83,6 @@ public final class RecentsViewStateController extends
|
||||
private void setAlphas(PropertySetter propertySetter, StateAnimationConfig config,
|
||||
LauncherState state) {
|
||||
float buttonAlpha = (state.getVisibleElements(mLauncher) & OVERVIEW_BUTTONS) != 0 ? 1 : 0;
|
||||
- propertySetter.setFloat(mRecentsView.getClearAllButton(), ClearAllButton.VISIBILITY_ALPHA,
|
||||
- buttonAlpha, LINEAR);
|
||||
propertySetter.setFloat(mLauncher.getActionsView().getVisibilityAlpha(),
|
||||
MultiValueAlpha.VALUE, buttonAlpha, config.getInterpolator(
|
||||
ANIM_OVERVIEW_ACTIONS_FADE, LINEAR));
|
||||
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/fallback/FallbackRecentsStateController.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/fallback/FallbackRecentsStateController.java
|
||||
index 24a761066..7af77ef60 100644
|
||||
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/fallback/FallbackRecentsStateController.java
|
||||
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/fallback/FallbackRecentsStateController.java
|
||||
@@ -35,7 +35,6 @@ import com.android.launcher3.statemanager.StateManager.StateHandler;
|
||||
import com.android.launcher3.states.StateAnimationConfig;
|
||||
import com.android.launcher3.util.MultiValueAlpha;
|
||||
import com.android.quickstep.RecentsActivity;
|
||||
-import com.android.quickstep.views.ClearAllButton;
|
||||
|
||||
/**
|
||||
* State controller for fallback recents activity
|
||||
@@ -78,8 +77,6 @@ public class FallbackRecentsStateController implements StateHandler<RecentsState
|
||||
private void setProperties(RecentsState state, StateAnimationConfig config,
|
||||
PropertySetter setter) {
|
||||
float buttonAlpha = state.hasButtons() ? 1 : 0;
|
||||
- setter.setFloat(mRecentsView.getClearAllButton(), ClearAllButton.VISIBILITY_ALPHA,
|
||||
- buttonAlpha, LINEAR);
|
||||
setter.setFloat(mActivity.getActionsView().getVisibilityAlpha(),
|
||||
MultiValueAlpha.VALUE, buttonAlpha, LINEAR);
|
||||
|
||||
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/views/ClearAllButton.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/views/ClearAllButton.java
|
||||
deleted file mode 100644
|
||||
index fd74357f3..000000000
|
||||
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/views/ClearAllButton.java
|
||||
+++ /dev/null
|
||||
@@ -1,112 +0,0 @@
|
||||
-/*
|
||||
- * Copyright (C) 2018 The Android Open Source Project
|
||||
- *
|
||||
- * Licensed under the Apache License, Version 2.0 (the "License");
|
||||
- * you may not use this file except in compliance with the License.
|
||||
- * You may obtain a copy of the License at
|
||||
- *
|
||||
- * http://www.apache.org/licenses/LICENSE-2.0
|
||||
- *
|
||||
- * Unless required by applicable law or agreed to in writing, software
|
||||
- * distributed under the License is distributed on an "AS IS" BASIS,
|
||||
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
- * See the License for the specific language governing permissions and
|
||||
- * limitations under the License.
|
||||
- */
|
||||
-
|
||||
-package com.android.quickstep.views;
|
||||
-
|
||||
-import android.content.Context;
|
||||
-import android.util.AttributeSet;
|
||||
-import android.util.FloatProperty;
|
||||
-import android.widget.Button;
|
||||
-
|
||||
-import com.android.launcher3.touch.PagedOrientationHandler;
|
||||
-import com.android.quickstep.views.RecentsView.PageCallbacks;
|
||||
-import com.android.quickstep.views.RecentsView.ScrollState;
|
||||
-
|
||||
-public class ClearAllButton extends Button implements PageCallbacks {
|
||||
-
|
||||
- public static final FloatProperty<ClearAllButton> VISIBILITY_ALPHA =
|
||||
- new FloatProperty<ClearAllButton>("visibilityAlpha") {
|
||||
- @Override
|
||||
- public Float get(ClearAllButton view) {
|
||||
- return view.mVisibilityAlpha;
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- public void setValue(ClearAllButton view, float v) {
|
||||
- view.setVisibilityAlpha(v);
|
||||
- }
|
||||
- };
|
||||
-
|
||||
- private float mScrollAlpha = 1;
|
||||
- private float mContentAlpha = 1;
|
||||
- private float mVisibilityAlpha = 1;
|
||||
-
|
||||
- private boolean mIsRtl;
|
||||
-
|
||||
- private int mScrollOffset;
|
||||
-
|
||||
- public ClearAllButton(Context context, AttributeSet attrs) {
|
||||
- super(context, attrs);
|
||||
- mIsRtl = getLayoutDirection() == LAYOUT_DIRECTION_RTL;
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
|
||||
- super.onLayout(changed, left, top, right, bottom);
|
||||
- PagedOrientationHandler orientationHandler = getRecentsView().getPagedOrientationHandler();
|
||||
- mScrollOffset = orientationHandler.getClearAllScrollOffset(getRecentsView(), mIsRtl);
|
||||
- }
|
||||
-
|
||||
- private RecentsView getRecentsView() {
|
||||
- return (RecentsView) getParent();
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- public void onRtlPropertiesChanged(int layoutDirection) {
|
||||
- super.onRtlPropertiesChanged(layoutDirection);
|
||||
- mIsRtl = getLayoutDirection() == LAYOUT_DIRECTION_RTL;
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- public boolean hasOverlappingRendering() {
|
||||
- return false;
|
||||
- }
|
||||
-
|
||||
- public void setContentAlpha(float alpha) {
|
||||
- if (mContentAlpha != alpha) {
|
||||
- mContentAlpha = alpha;
|
||||
- updateAlpha();
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- public void setVisibilityAlpha(float alpha) {
|
||||
- if (mVisibilityAlpha != alpha) {
|
||||
- mVisibilityAlpha = alpha;
|
||||
- updateAlpha();
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- public void onPageScroll(ScrollState scrollState) {
|
||||
- PagedOrientationHandler orientationHandler = getRecentsView().getPagedOrientationHandler();
|
||||
- float orientationSize = orientationHandler.getPrimaryValue(getWidth(), getHeight());
|
||||
- if (orientationSize == 0) {
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- float shift = Math.min(scrollState.scrollFromEdge, orientationSize);
|
||||
- float translation = mIsRtl ? (mScrollOffset - shift) : (mScrollOffset + shift);
|
||||
- orientationHandler.setPrimaryAndResetSecondaryTranslate(this, translation);
|
||||
- mScrollAlpha = 1 - shift / orientationSize;
|
||||
- updateAlpha();
|
||||
- }
|
||||
-
|
||||
- private void updateAlpha() {
|
||||
- final float alpha = mScrollAlpha * mContentAlpha * mVisibilityAlpha;
|
||||
- setAlpha(alpha);
|
||||
- setClickable(alpha == 1);
|
||||
- }
|
||||
-}
|
||||
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/views/RecentsView.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/views/RecentsView.java
|
||||
index 0130cae47..bfdd79e5f 100644
|
||||
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/views/RecentsView.java
|
||||
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/views/RecentsView.java
|
||||
@@ -85,6 +85,7 @@ import android.view.ViewGroup;
|
||||
import android.view.accessibility.AccessibilityEvent;
|
||||
import android.view.accessibility.AccessibilityNodeInfo;
|
||||
import android.view.animation.Interpolator;
|
||||
+import android.widget.Button;
|
||||
import android.widget.ListView;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
@@ -268,8 +269,7 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
private final float mFastFlingVelocity;
|
||||
private final RecentsModel mModel;
|
||||
private final int mTaskTopMargin;
|
||||
- private final ClearAllButton mClearAllButton;
|
||||
- private final Rect mClearAllButtonDeadZoneRect = new Rect();
|
||||
+ private Button mClearAllButton;
|
||||
private final Rect mTaskViewDeadZoneRect = new Rect();
|
||||
|
||||
private final ScrollState mScrollState = new ScrollState();
|
||||
@@ -442,9 +442,6 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
mModel = RecentsModel.INSTANCE.get(context);
|
||||
mIdp = InvariantDeviceProfile.INSTANCE.get(context);
|
||||
|
||||
- mClearAllButton = (ClearAllButton) LayoutInflater.from(context)
|
||||
- .inflate(R.layout.overview_clear_all_button, this, false);
|
||||
- mClearAllButton.setOnClickListener(this::dismissAllTasks);
|
||||
mTaskViewPool = new ViewPool<>(context, this, R.layout.task, 20 /* max size */,
|
||||
10 /* initial size */);
|
||||
|
||||
@@ -550,6 +547,8 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
public void init(OverviewActionsView actionsView) {
|
||||
mActionsView = actionsView;
|
||||
mActionsView.updateHiddenFlags(HIDDEN_NO_TASKS, getTaskViewCount() == 0);
|
||||
+ mClearAllButton = (Button) mActionsView.findViewById(R.id.clear_all);
|
||||
+ mClearAllButton.setOnClickListener(this::dismissAllTasks);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -620,7 +619,7 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
}
|
||||
|
||||
private void updateTaskStartIndex(View affectingView) {
|
||||
- if (!(affectingView instanceof TaskView) && !(affectingView instanceof ClearAllButton)) {
|
||||
+ if (!(affectingView instanceof TaskView)) {
|
||||
int childCount = getChildCount();
|
||||
|
||||
mTaskViewStartIndex = 0;
|
||||
@@ -674,7 +673,7 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
* button fully visible, center page is Clear All button.
|
||||
*/
|
||||
public boolean isClearAllHidden() {
|
||||
- return mClearAllButton.getAlpha() != 1f;
|
||||
+ return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -732,11 +731,8 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
mTouchDownToStartHome = true;
|
||||
} else {
|
||||
updateDeadZoneRects();
|
||||
- final boolean clearAllButtonDeadZoneConsumed =
|
||||
- mClearAllButton.getAlpha() == 1
|
||||
- && mClearAllButtonDeadZoneRect.contains(x, y);
|
||||
final boolean cameFromNavBar = (ev.getEdgeFlags() & EDGE_NAV_BAR) != 0;
|
||||
- if (!clearAllButtonDeadZoneConsumed && !cameFromNavBar
|
||||
+ if (!cameFromNavBar
|
||||
&& !mTaskViewDeadZoneRect.contains(x + getScrollX(), y)) {
|
||||
mTouchDownToStartHome = true;
|
||||
}
|
||||
@@ -783,18 +779,12 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
|
||||
final int requiredTaskCount = tasks.size();
|
||||
if (getTaskViewCount() != requiredTaskCount) {
|
||||
- if (indexOfChild(mClearAllButton) != -1) {
|
||||
- removeView(mClearAllButton);
|
||||
- }
|
||||
for (int i = getTaskViewCount(); i < requiredTaskCount; i++) {
|
||||
addView(mTaskViewPool.getView());
|
||||
}
|
||||
while (getTaskViewCount() > requiredTaskCount) {
|
||||
removeView(getChildAt(getChildCount() - 1));
|
||||
}
|
||||
- if (requiredTaskCount > 0) {
|
||||
- addView(mClearAllButton);
|
||||
- }
|
||||
}
|
||||
|
||||
// Rebind and reset all task views
|
||||
@@ -834,16 +824,10 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
for (int i = getTaskViewCount() - 1; i >= 0; i--) {
|
||||
removeView(getTaskViewAt(i));
|
||||
}
|
||||
- if (indexOfChild(mClearAllButton) != -1) {
|
||||
- removeView(mClearAllButton);
|
||||
- }
|
||||
}
|
||||
|
||||
public int getTaskViewCount() {
|
||||
int taskViewCount = getChildCount() - mTaskViewStartIndex;
|
||||
- if (indexOfChild(mClearAllButton) != -1) {
|
||||
- taskViewCount--;
|
||||
- }
|
||||
return taskViewCount;
|
||||
}
|
||||
|
||||
@@ -1199,9 +1183,6 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
// Add an empty view for now until the task plan is loaded and applied
|
||||
final TaskView taskView = mTaskViewPool.getView();
|
||||
addView(taskView, mTaskViewStartIndex);
|
||||
- if (wasEmpty) {
|
||||
- addView(mClearAllButton);
|
||||
- }
|
||||
// The temporary running task is only used for the duration between the start of the
|
||||
// gesture and the task list is loaded and applied
|
||||
mTmpRunningTask = Task.from(new TaskKey(runningTaskInfo), runningTaskInfo, false);
|
||||
@@ -1538,7 +1519,6 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
removeViewInLayout(taskView);
|
||||
|
||||
if (getTaskViewCount() == 0) {
|
||||
- removeViewInLayout(mClearAllButton);
|
||||
startHome();
|
||||
} else {
|
||||
snapToPageImmediately(pageToSnapTo);
|
||||
@@ -1677,7 +1657,6 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
child.setStableAlpha(alpha);
|
||||
}
|
||||
}
|
||||
- mClearAllButton.setContentAlpha(mContentAlpha);
|
||||
int alphaInt = Math.round(alpha * 255);
|
||||
mEmptyMessagePaint.setAlpha(alphaInt);
|
||||
mEmptyIcon.setAlpha(alphaInt);
|
||||
@@ -1740,10 +1719,6 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
setLayoutDirection(mIsRtl
|
||||
? View.LAYOUT_DIRECTION_RTL
|
||||
: View.LAYOUT_DIRECTION_LTR);
|
||||
- mClearAllButton.setLayoutDirection(mIsRtl
|
||||
- ? View.LAYOUT_DIRECTION_LTR
|
||||
- : View.LAYOUT_DIRECTION_RTL);
|
||||
- mClearAllButton.setRotation(mOrientationHandler.getDegreesRotated());
|
||||
mActivity.getDragLayer().recreateControllers();
|
||||
boolean isInLandscape = mOrientationState.getTouchRotation() != ROTATION_0
|
||||
|| mOrientationState.getRecentsActivityRotation() != ROTATION_0;
|
||||
@@ -1963,15 +1938,6 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
}
|
||||
|
||||
private void updateDeadZoneRects() {
|
||||
- // Get the deadzone rect surrounding the clear all button to not dismiss overview to home
|
||||
- mClearAllButtonDeadZoneRect.setEmpty();
|
||||
- if (mClearAllButton.getWidth() > 0) {
|
||||
- int verticalMargin = getResources()
|
||||
- .getDimensionPixelSize(R.dimen.recents_clear_all_deadzone_vertical_margin);
|
||||
- mClearAllButton.getHitRect(mClearAllButtonDeadZoneRect);
|
||||
- mClearAllButtonDeadZoneRect.inset(-getPaddingRight() / 2, -verticalMargin);
|
||||
- }
|
||||
-
|
||||
// Get the deadzone rect between the task views
|
||||
mTaskViewDeadZoneRect.setEmpty();
|
||||
int count = getTaskViewCount();
|
||||
@@ -2304,10 +2270,6 @@ public abstract class RecentsView<T extends StatefulActivity> extends PagedView
|
||||
return super.computeMaxScroll();
|
||||
}
|
||||
|
||||
- public ClearAllButton getClearAllButton() {
|
||||
- return mClearAllButton;
|
||||
- }
|
||||
-
|
||||
@Override
|
||||
protected boolean onOverscroll(int amount) {
|
||||
// overscroll should only be accepted on -1 direction (for clear all button)
|
||||
diff --git a/quickstep/res/drawable/ic_clear_all_recents.xml b/quickstep/res/drawable/ic_clear_all_recents.xml
|
||||
new file mode 100644
|
||||
index 0000000000..2ad0bb824d
|
||||
index 000000000..7cba0220b
|
||||
--- /dev/null
|
||||
+++ b/quickstep/res/drawable/ic_recents_clear_all.xml
|
||||
@@ -0,0 +1,18 @@
|
||||
+++ b/quickstep/res/drawable/ic_clear_all_recents.xml
|
||||
@@ -0,0 +1,21 @@
|
||||
+<!-- Copyright (C) 2020 The Android Open Source Project
|
||||
+
|
||||
+ Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+ you may not use this file except in compliance with the License.
|
||||
+ You may obtain a copy of the License at
|
||||
+
|
||||
+ http://www.apache.org/licenses/LICENSE-2.0
|
||||
+
|
||||
+ Unless required by applicable law or agreed to in writing, software
|
||||
+ distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
@ -40,103 +377,72 @@ index 0000000000..2ad0bb824d
|
||||
+ <path android:fillColor="#FF000000" android:pathData="M5,13H19V11H5M3,17H17V15H3M7,7V9H21V7" />
|
||||
+</vector>
|
||||
diff --git a/quickstep/res/layout/overview_actions_container.xml b/quickstep/res/layout/overview_actions_container.xml
|
||||
index 0fda0bf8d4..9a6f5ae062 100644
|
||||
index 258f24a54..302cabf8a 100644
|
||||
--- a/quickstep/res/layout/overview_actions_container.xml
|
||||
+++ b/quickstep/res/layout/overview_actions_container.xml
|
||||
@@ -40,6 +40,21 @@
|
||||
android:text="@string/action_screenshot"
|
||||
android:theme="@style/ThemeControlHighlightWorkspaceColor" />
|
||||
@@ -45,6 +45,21 @@
|
||||
android:layout_height="1dp"
|
||||
android:layout_weight="1" />
|
||||
|
||||
+ <Space
|
||||
+ android:id="@+id/action_clear_all_space"
|
||||
+ android:layout_width="@dimen/overview_actions_button_spacing"
|
||||
+ android:layout_height="1dp" />
|
||||
+
|
||||
+ <Button
|
||||
+ android:id="@+id/action_clear_all"
|
||||
+ style="@style/OverviewActionButton"
|
||||
+ android:id="@+id/clear_all"
|
||||
+ android:layout_width="wrap_content"
|
||||
+ android:layout_height="wrap_content"
|
||||
+ android:drawableStart="@drawable/ic_recents_clear_all"
|
||||
+ android:text="@string/recents_clear_all"
|
||||
+ android:theme="@style/ThemeControlHighlightWorkspaceColor"
|
||||
+ android:drawableStart="@drawable/ic_clear_all_recents"
|
||||
+ />
|
||||
+
|
||||
<Space
|
||||
android:id="@+id/action_split_space"
|
||||
android:layout_width="@dimen/overview_actions_button_spacing"
|
||||
@@ -68,4 +83,4 @@
|
||||
+ <Space
|
||||
+ android:layout_width="0dp"
|
||||
+ android:layout_height="1dp"
|
||||
+ android:layout_weight="1" />
|
||||
+
|
||||
<Button
|
||||
android:id="@+id/action_share"
|
||||
style="@style/OverviewActionButton"
|
||||
@@ -63,4 +78,4 @@
|
||||
android:visibility="gone" />
|
||||
</LinearLayout>
|
||||
|
||||
-</com.android.quickstep.views.OverviewActionsView>
|
||||
\ No newline at end of file
|
||||
+</com.android.quickstep.views.OverviewActionsView>
|
||||
diff --git a/quickstep/src/com/android/quickstep/fallback/RecentsState.java b/quickstep/src/com/android/quickstep/fallback/RecentsState.java
|
||||
index 8b5f091e11..601021b5bf 100644
|
||||
--- a/quickstep/src/com/android/quickstep/fallback/RecentsState.java
|
||||
+++ b/quickstep/src/com/android/quickstep/fallback/RecentsState.java
|
||||
@@ -106,7 +106,7 @@ public class RecentsState implements BaseState<RecentsState> {
|
||||
* For this state, whether clear all button should be shown.
|
||||
*/
|
||||
public boolean hasClearAllButton() {
|
||||
- return hasFlag(FLAG_CLEAR_ALL_BUTTON);
|
||||
+ return false;
|
||||
}
|
||||
|
||||
/**
|
||||
diff --git a/quickstep/src/com/android/quickstep/views/LauncherRecentsView.java b/quickstep/src/com/android/quickstep/views/LauncherRecentsView.java
|
||||
index 6c27587058..dbaf180e68 100644
|
||||
--- a/quickstep/src/com/android/quickstep/views/LauncherRecentsView.java
|
||||
+++ b/quickstep/src/com/android/quickstep/views/LauncherRecentsView.java
|
||||
@@ -143,8 +143,7 @@ public class LauncherRecentsView extends RecentsView<QuickstepLauncher, Launcher
|
||||
super.setOverviewStateEnabled(enabled);
|
||||
if (enabled) {
|
||||
LauncherState state = mActivity.getStateManager().getState();
|
||||
- boolean hasClearAllButton = (state.getVisibleElements(mActivity)
|
||||
- & CLEAR_ALL_BUTTON) != 0;
|
||||
+ boolean hasClearAllButton = false;
|
||||
setDisallowScrollToClearAll(!hasClearAllButton);
|
||||
}
|
||||
if (mActivity.getDesktopVisibilityController() != null) {
|
||||
diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java
|
||||
index 5e645ea917..0dc0b3b62e 100644
|
||||
--- a/quickstep/src/com/android/quickstep/views/RecentsView.java
|
||||
+++ b/quickstep/src/com/android/quickstep/views/RecentsView.java
|
||||
@@ -117,6 +117,7 @@ import android.view.ViewTreeObserver.OnScrollChangedListener;
|
||||
import android.view.accessibility.AccessibilityEvent;
|
||||
import android.view.accessibility.AccessibilityNodeInfo;
|
||||
import android.view.animation.Interpolator;
|
||||
+import android.widget.Button;
|
||||
import android.widget.ListView;
|
||||
import android.widget.OverScroller;
|
||||
import android.widget.Toast;
|
||||
@@ -472,6 +473,7 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
|
||||
private final RecentsModel mModel;
|
||||
private final int mSplitPlaceholderSize;
|
||||
private final int mSplitPlaceholderInset;
|
||||
+ private Button mActionClearAllButton;
|
||||
private final ClearAllButton mClearAllButton;
|
||||
private final Rect mClearAllButtonDeadZoneRect = new Rect();
|
||||
private final Rect mTaskViewDeadZoneRect = new Rect();
|
||||
@@ -976,6 +978,8 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
|
||||
mActionsView = actionsView;
|
||||
mActionsView.updateHiddenFlags(HIDDEN_NO_TASKS, getTaskViewCount() == 0);
|
||||
mSplitSelectStateController = splitController;
|
||||
+ mActionClearAllButton = (Button) mActionsView.findViewById(R.id.action_clear_all);
|
||||
+ mActionClearAllButton.setOnClickListener(this::dismissAllTasks);
|
||||
}
|
||||
|
||||
public SplitSelectStateController getSplitSelectController() {
|
||||
@@ -1342,7 +1346,7 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
|
||||
* button fully visible, center page is Clear All button.
|
||||
*/
|
||||
public boolean isClearAllHidden() {
|
||||
- return mClearAllButton.getAlpha() != 1f;
|
||||
+ return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
diff --git a/quickstep/res/layout/overview_clear_all_button.xml b/quickstep/res/layout/overview_clear_all_button.xml
|
||||
deleted file mode 100644
|
||||
index fc06ba057..000000000
|
||||
--- a/quickstep/res/layout/overview_clear_all_button.xml
|
||||
+++ /dev/null
|
||||
@@ -1,27 +0,0 @@
|
||||
-<?xml version="1.0" encoding="utf-8"?>
|
||||
-<!--
|
||||
- Copyright (C) 2018 The Android Open Source Project
|
||||
-
|
||||
- Licensed under the Apache License, Version 2.0 (the "License");
|
||||
- you may not use this file except in compliance with the License.
|
||||
- You may obtain a copy of the License at
|
||||
-
|
||||
- http://www.apache.org/licenses/LICENSE-2.0
|
||||
-
|
||||
- Unless required by applicable law or agreed to in writing, software
|
||||
- distributed under the License is distributed on an "AS IS" BASIS,
|
||||
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
- See the License for the specific language governing permissions and
|
||||
- limitations under the License.
|
||||
--->
|
||||
-<com.android.quickstep.views.ClearAllButton
|
||||
- xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
- style="@android:style/Widget.DeviceDefault.Button.Borderless"
|
||||
- android:id="@+id/clear_all"
|
||||
- android:layout_width="wrap_content"
|
||||
- android:layout_height="wrap_content"
|
||||
- android:text="@string/recents_clear_all"
|
||||
- android:textColor="?attr/workspaceTextColor"
|
||||
- android:textSize="14sp"
|
||||
- android:translationY="@dimen/task_thumbnail_half_top_margin"
|
||||
- />
|
||||
\ No newline at end of file
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
From 80d66b7f255176e7cf761ce9c62c436cb729df71 Mon Sep 17 00:00:00 2001
|
||||
From 7a633a53d8e20e2d976597a332bf5ba855ec1f75 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 5 Sep 2019 02:08:22 +0000
|
||||
Subject: [PATCH 1/2] vendor_lineage: Log privapp-permissions whitelist
|
||||
violations instead
|
||||
Subject: [PATCH] vendor_lineage: Log privapp-permissions whitelist violations
|
||||
instead
|
||||
|
||||
Change-Id: I49dba61f332253e291a65e79ca70d9a07d45bb07
|
||||
---
|
||||
@ -10,12 +10,12 @@ Change-Id: I49dba61f332253e291a65e79ca70d9a07d45bb07
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/config/common.mk b/config/common.mk
|
||||
index 7048c9cb..9dc5c710 100644
|
||||
index 2fe9cb01..7d971bba 100644
|
||||
--- a/config/common.mk
|
||||
+++ b/config/common.mk
|
||||
@@ -74,9 +74,9 @@ PRODUCT_COPY_FILES += \
|
||||
@@ -70,9 +70,9 @@ PRODUCT_COPY_FILES += \
|
||||
PRODUCT_COPY_FILES += \
|
||||
vendor/lineage/config/permissions/org.lineageos.android.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/org.lineageos.android.xml
|
||||
vendor/lineage/config/permissions/org.lineageos.android.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/org.lineageos.android.xml
|
||||
|
||||
-# Enforce privapp-permissions whitelist
|
||||
+# Log privapp-permissions whitelist violations
|
||||
@ -23,8 +23,8 @@ index 7048c9cb..9dc5c710 100644
|
||||
- ro.control_privapp_permissions=enforce
|
||||
+ ro.control_privapp_permissions=log
|
||||
|
||||
ifneq ($(TARGET_DISABLE_LINEAGE_SDK), true)
|
||||
# Lineage SDK
|
||||
# Include AOSP audio files
|
||||
include vendor/lineage/config/aosp_audio.mk
|
||||
--
|
||||
2.25.1
|
||||
2.17.1
|
||||
|
||||
|
@ -1,34 +0,0 @@
|
||||
From 9218670153d5aa40fd05f51d89240fc7859293a2 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Mon, 14 Mar 2022 03:44:59 +0000
|
||||
Subject: [PATCH 2/2] Revert "overlay: Default to night mode"
|
||||
|
||||
This reverts commit 4d4e39a845d54e37b20728f1448ae6e3fde4b97d.
|
||||
|
||||
Change-Id: I036bdd576e536392cf41e3c536d5ca2eb04e5a0f
|
||||
---
|
||||
.../common/frameworks/base/core/res/res/values/config.xml | 8 --------
|
||||
1 file changed, 8 deletions(-)
|
||||
|
||||
diff --git a/overlay/common/frameworks/base/core/res/res/values/config.xml b/overlay/common/frameworks/base/core/res/res/values/config.xml
|
||||
index 94687fe1..579b98f7 100644
|
||||
--- a/overlay/common/frameworks/base/core/res/res/values/config.xml
|
||||
+++ b/overlay/common/frameworks/base/core/res/res/values/config.xml
|
||||
@@ -146,14 +146,6 @@
|
||||
<!-- Whether this device is supporting the camera toggle -->
|
||||
<bool name="config_supportsCamToggle">true</bool>
|
||||
|
||||
- <!-- Control the default night mode to use when there is no other mode override set.
|
||||
- One of the following values (see UiModeManager.java):
|
||||
- 0 - MODE_NIGHT_AUTO
|
||||
- 1 - MODE_NIGHT_NO
|
||||
- 2 - MODE_NIGHT_YES
|
||||
- -->
|
||||
- <integer name="config_defaultNightMode">2</integer>
|
||||
-
|
||||
<!-- Boolean indicating whether the HWC setColorTransform function can be performed efficiently
|
||||
in hardware. -->
|
||||
<bool name="config_setColorTransformAccelerated">true</bool>
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,25 +0,0 @@
|
||||
From 9218670153d5aa40fd05f51d89240fc7859293a2 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Mon, 14 Mar 2022 03:44:59 +0000
|
||||
Subject: [PATCH 5/5] Fix APN on CatS22Flip
|
||||
|
||||
This reverts commit I2833bc1764a311eef7ebc170cfa1e25cbefb3737.
|
||||
|
||||
Change-Id: I036bdd576e536392cf41e3c536d5ca2eb04e5a02
|
||||
---
|
||||
.../prebuild/common/etc/apns-conf.xml | 2 --------
|
||||
1 file changed, 2 insertion(-)
|
||||
|
||||
diff --git a/prebuilt/common/etc/apns-conf.xml b/prebuilt/common/etc/apns-conf.xml
|
||||
index a7c9e2d8..81716d39 100644
|
||||
--- a/prebuilt/common/etc/apns-conf.xml
|
||||
+++ b/prebuilt/common/etc/apns-conf.xml
|
||||
@@ -22,6 +22,8 @@
|
||||
<!-- This version must agree with that in apps/common/res/apns.xml -->
|
||||
<!-- Possible values for auth_type: 0 (None), 1 (PAP), 2 (CHAP), 3 (PAP or CHAP) -->
|
||||
<apns version="8">
|
||||
+ <apn carrier="PHH IMS" mcc="310" mnc="240" apn="ims" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
|
||||
+ <apn carrier="Boost Mobile" mcc="310" mnc="240" apn="wireless.dish.com" mmsc="http://wholesale.mmsmvno.com/mms/wapenc" protocol="IPV4V6" roaming_protocol="IPV4V6" type="default,admin,fota,mms,supl,hipri,internet,dun" mvno_type="gid" mvno_match_data="6430" />
|
||||
<apn carrier="Test Internet" mcc="001" mnc="01" apn="VZWINTERNET" type="default,dun,supl" protocol="IPV4V6" roaming_protocol="IPV4V6" />
|
||||
<apn carrier="Test FOTA" mcc="001" mnc="01" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
|
||||
<apn carrier="Test IMS" mcc="001" mnc="01" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
|
@ -0,0 +1,57 @@
|
||||
From 54ae0f29ba89e7dc79b69540f78cdabdd943a0d3 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 30 Nov 2021 12:58:00 +0000
|
||||
Subject: [PATCH] SearchLauncher: Adapt to Trebuchet
|
||||
|
||||
---
|
||||
apps/SearchLauncher/Android.mk | 4 ++--
|
||||
apps/SearchLauncher/AndroidManifest.xml | 4 +++-
|
||||
2 files changed, 5 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/apps/SearchLauncher/Android.mk b/apps/SearchLauncher/Android.mk
|
||||
index 0b7f7d4..91da3c8 100644
|
||||
--- a/apps/SearchLauncher/Android.mk
|
||||
+++ b/apps/SearchLauncher/Android.mk
|
||||
@@ -23,7 +23,7 @@ LOCAL_USE_AAPT2 := true
|
||||
LOCAL_AAPT2_ONLY := true
|
||||
|
||||
# Relative path for AOSP Launcher3 directory
|
||||
-LAUNCHER_PATH := ../../../../packages/apps/Launcher3
|
||||
+LAUNCHER_PATH := ../../../../packages/apps/Trebuchet
|
||||
|
||||
LOCAL_STATIC_ANDROID_LIBRARIES := Launcher3CommonDepsLib
|
||||
LOCAL_STATIC_JAVA_LIBRARIES := lib_launcherClient
|
||||
@@ -60,7 +60,7 @@ LOCAL_USE_AAPT2 := true
|
||||
LOCAL_AAPT2_ONLY := true
|
||||
|
||||
# Relative path for AOSP Launcher3 directory
|
||||
-LAUNCHER_PATH := ../../../../packages/apps/Launcher3
|
||||
+LAUNCHER_PATH := ../../../../packages/apps/Trebuchet
|
||||
|
||||
LOCAL_STATIC_ANDROID_LIBRARIES := Launcher3CommonDepsLib
|
||||
LOCAL_STATIC_JAVA_LIBRARIES := \
|
||||
diff --git a/apps/SearchLauncher/AndroidManifest.xml b/apps/SearchLauncher/AndroidManifest.xml
|
||||
index 6f48d23..f8ca8e3 100644
|
||||
--- a/apps/SearchLauncher/AndroidManifest.xml
|
||||
+++ b/apps/SearchLauncher/AndroidManifest.xml
|
||||
@@ -19,6 +19,7 @@
|
||||
-->
|
||||
<manifest
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
+ xmlns:tools="http://schemas.android.com/tools"
|
||||
package="com.android.launcher3">
|
||||
<uses-sdk android:targetSdkVersion="29" android:minSdkVersion="25"/>
|
||||
<!--
|
||||
@@ -36,7 +37,8 @@
|
||||
android:theme="@style/AppTheme"
|
||||
android:largeHeap="@bool/config_largeHeap"
|
||||
android:restoreAnyVersion="true"
|
||||
- android:supportsRtl="true" >
|
||||
+ android:supportsRtl="true"
|
||||
+ tools:replace="android:icon" >
|
||||
|
||||
<!--
|
||||
Main launcher activity. When extending only change the name, and keep all the
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 45ce666776f48f82151a4fc3c8a3219f3e4c210f Mon Sep 17 00:00:00 2001
|
||||
From f451664bce7527eb460615dfba0a5e4ad14a1847 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 20 Jun 2021 09:08:43 +0000
|
||||
Subject: [PATCH 1/2] build: Integrate prop modifications (1/2)
|
||||
Subject: [PATCH] build: Integrate prop modifications (1/2)
|
||||
|
||||
Change-Id: I24f54937e3e542b7c29ea86d24e3f523583a0c61
|
||||
---
|
||||
@ -9,19 +9,19 @@ Change-Id: I24f54937e3e542b7c29ea86d24e3f523583a0c61
|
||||
1 file changed, 7 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/tools/buildinfo.sh b/tools/buildinfo.sh
|
||||
index c00e1e98b..490d15215 100755
|
||||
index 954a01fb2..b3705cb6b 100755
|
||||
--- a/tools/buildinfo.sh
|
||||
+++ b/tools/buildinfo.sh
|
||||
@@ -9,7 +9,7 @@ if [ "$BOARD_USE_VBMETA_DIGTEST_IN_FINGERPRINT" = "true" ] ; then
|
||||
else
|
||||
@@ -4,7 +4,7 @@ echo "# begin build properties"
|
||||
echo "# autogenerated by buildinfo.sh"
|
||||
|
||||
echo "ro.build.id=$BUILD_ID"
|
||||
fi
|
||||
-echo "ro.build.display.id=$BUILD_DISPLAY_ID"
|
||||
+echo "ro.build.display.id=$BUILD_ID"
|
||||
echo "ro.build.version.incremental=$BUILD_NUMBER"
|
||||
echo "ro.build.version.sdk=$PLATFORM_SDK_VERSION"
|
||||
echo "ro.build.version.preview_sdk=$PLATFORM_PREVIEW_SDK_VERSION"
|
||||
@@ -23,7 +23,7 @@ echo "ro.build.version.release_or_preview_display=$PLATFORM_DISPLAY_VERSION"
|
||||
@@ -16,7 +16,7 @@ echo "ro.build.version.release_or_codename=$PLATFORM_VERSION"
|
||||
echo "ro.build.version.security_patch=$PLATFORM_SECURITY_PATCH"
|
||||
echo "ro.build.version.base_os=$PLATFORM_BASE_OS"
|
||||
echo "ro.build.version.min_supported_target_sdk=$PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION"
|
||||
@ -30,13 +30,13 @@ index c00e1e98b..490d15215 100755
|
||||
echo "ro.build.date.utc=`$DATE +%s`"
|
||||
echo "ro.build.type=$TARGET_BUILD_TYPE"
|
||||
echo "ro.build.user=$BUILD_USERNAME"
|
||||
@@ -58,5 +58,10 @@ if [ -n "$BUILD_THUMBPRINT" ] ; then
|
||||
@@ -54,5 +54,10 @@ if [ -n "$BUILD_THUMBPRINT" ] ; then
|
||||
fi
|
||||
|
||||
echo "ro.lineage.device=$LINEAGE_DEVICE"
|
||||
+echo "ro.lineage.version=LineageOS 20 Self-built CGMod"
|
||||
+echo "ro.lineage.display.version=LineageOS 20 Self-built CGMod"
|
||||
+echo "ro.modversion=LineageOS 20 Self-built CGMod"
|
||||
+echo "ro.lineage.version=LineageOS 18.1 Self-built CGMod"
|
||||
+echo "ro.lineage.display.version=LineageOS 18.1 Self-built CGMod"
|
||||
+echo "ro.modversion=LineageOS 18.1 Self-built CGMod"
|
||||
+
|
||||
+echo "lockscreen.rot_override=true"
|
||||
|
||||
|
@ -1,25 +0,0 @@
|
||||
From 1c0c37fd29fb20537eca319cd5c3874127414d8a Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 16 Oct 2021 00:39:15 +0000
|
||||
Subject: [PATCH 2/2] build: Remove Stk (1/2)
|
||||
|
||||
Change-Id: I24ef17c74c3137a11b463cde96c74d0edc853edd
|
||||
---
|
||||
target/product/generic_system.mk | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/target/product/generic_system.mk b/target/product/generic_system.mk
|
||||
index 1a639ef71..49a080076 100644
|
||||
--- a/target/product/generic_system.mk
|
||||
+++ b/target/product/generic_system.mk
|
||||
@@ -32,7 +32,6 @@ PRODUCT_PACKAGES += \
|
||||
PRODUCT_PACKAGES += \
|
||||
LiveWallpapersPicker \
|
||||
PartnerBookmarksProvider \
|
||||
- Stk \
|
||||
Tag \
|
||||
|
||||
# OTA support
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,52 +0,0 @@
|
||||
From 64c0e12dc7a4eb6add7631a84dda17e2012f687c Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 18 Jun 2023 19:33:27 +0800
|
||||
Subject: [PATCH 01/21] Add keylayout for Backbone One for Android, with AB/XY
|
||||
keys swapped
|
||||
|
||||
Change-Id: Ia057c084099015b544c926cd57c37b4ac314867a
|
||||
---
|
||||
data/keyboards/Vendor_358a_Product_0201.kl | 31 ++++++++++++++++++++++
|
||||
1 file changed, 31 insertions(+)
|
||||
create mode 100644 data/keyboards/Vendor_358a_Product_0201.kl
|
||||
|
||||
diff --git a/data/keyboards/Vendor_358a_Product_0201.kl b/data/keyboards/Vendor_358a_Product_0201.kl
|
||||
new file mode 100644
|
||||
index 000000000000..e15907f9c6f2
|
||||
--- /dev/null
|
||||
+++ b/data/keyboards/Vendor_358a_Product_0201.kl
|
||||
@@ -0,0 +1,31 @@
|
||||
+#
|
||||
+# Backbone One for Android
|
||||
+#
|
||||
+
|
||||
+# AB/XY swapped
|
||||
+key 305 BUTTON_A
|
||||
+key 304 BUTTON_B
|
||||
+key 308 BUTTON_X
|
||||
+key 307 BUTTON_Y
|
||||
+
|
||||
+key 310 BUTTON_L1
|
||||
+key 311 BUTTON_R1
|
||||
+key 312 BUTTON_L2
|
||||
+key 313 BUTTON_R2
|
||||
+
|
||||
+key 317 BUTTON_THUMBL
|
||||
+key 318 BUTTON_THUMBR
|
||||
+
|
||||
+axis 0x00 X flat 4096
|
||||
+axis 0x01 Y flat 4096
|
||||
+axis 0x02 Z flat 4096
|
||||
+axis 0x05 RZ flat 4096
|
||||
+
|
||||
+axis 0x0a LTRIGGER
|
||||
+axis 0x09 RTRIGGER
|
||||
+
|
||||
+axis 0x10 HAT_X
|
||||
+axis 0x11 HAT_Y
|
||||
+
|
||||
+key 315 BUTTON_START
|
||||
+key 314 BUTTON_SELECT
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,57 @@
|
||||
From 2743f5130c127f18977c83c7fa2401a0776ec478 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Fri, 9 Mar 2018 15:41:26 +0800
|
||||
Subject: [PATCH 01/18] UI: Disable left (seascape) navigation bar optionally
|
||||
|
||||
Toggle this behaviour with property "persist.ui.seascape.disable"
|
||||
|
||||
Change-Id: Ieb58efa4b59feeb0c4ac70e497f4c59aa04210d6
|
||||
---
|
||||
.../systemui/statusbar/phone/ReverseLinearLayout.java | 6 ++++++
|
||||
services/core/java/com/android/server/wm/DisplayPolicy.java | 5 +++--
|
||||
2 files changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ReverseLinearLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ReverseLinearLayout.java
|
||||
index d3ec187ef20..01d87cd12f7 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ReverseLinearLayout.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ReverseLinearLayout.java
|
||||
@@ -16,6 +16,7 @@ package com.android.systemui.statusbar.phone;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
import android.content.Context;
|
||||
+import android.os.SystemProperties;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.Gravity;
|
||||
import android.view.View;
|
||||
@@ -86,6 +87,11 @@ public class ReverseLinearLayout extends LinearLayout {
|
||||
boolean isLayoutRtl = getLayoutDirection() == LAYOUT_DIRECTION_RTL;
|
||||
boolean isLayoutReverse = isLayoutRtl ^ mIsAlternativeOrder;
|
||||
|
||||
+ boolean isSeascapeDisabled = SystemProperties.getBoolean("persist.ui.seascape.disable", false);
|
||||
+ if (isSeascapeDisabled) {
|
||||
+ isLayoutReverse = isLayoutRtl ^ true;
|
||||
+ }
|
||||
+
|
||||
if (mIsLayoutReverse != isLayoutReverse) {
|
||||
// reversity changed, swap the order of all views.
|
||||
int childCount = getChildCount();
|
||||
diff --git a/services/core/java/com/android/server/wm/DisplayPolicy.java b/services/core/java/com/android/server/wm/DisplayPolicy.java
|
||||
index 97e4a9595da..18119560cd1 100644
|
||||
--- a/services/core/java/com/android/server/wm/DisplayPolicy.java
|
||||
+++ b/services/core/java/com/android/server/wm/DisplayPolicy.java
|
||||
@@ -3413,9 +3413,10 @@ public class DisplayPolicy {
|
||||
@NavigationBarPosition
|
||||
int navigationBarPosition(int displayWidth, int displayHeight, int displayRotation) {
|
||||
if (navigationBarCanMove() && displayWidth > displayHeight) {
|
||||
- if (displayRotation == Surface.ROTATION_270) {
|
||||
+ boolean isSeascapeDisabled = SystemProperties.getBoolean("persist.ui.seascape.disable", false);
|
||||
+ if (displayRotation == Surface.ROTATION_270 && !isSeascapeDisabled) {
|
||||
return NAV_BAR_LEFT;
|
||||
- } else if (displayRotation == Surface.ROTATION_90) {
|
||||
+ } else {
|
||||
return NAV_BAR_RIGHT;
|
||||
}
|
||||
}
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,7 +1,7 @@
|
||||
From d81745ad081c1e8bbabd346deb3fa5cb3b3a1017 Mon Sep 17 00:00:00 2001
|
||||
From 46a9bb999137ed1a0722f119970524cbce496183 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 26 Apr 2020 08:56:13 +0000
|
||||
Subject: [PATCH 11/22] UI: Use SNAP_FIXED_RATIO for multi-window globally
|
||||
Subject: [PATCH 02/18] UI: Use SNAP_FIXED_RATIO for multi-window globally
|
||||
|
||||
Enables multiple snap targets under landscape for phone UI
|
||||
|
||||
@ -15,7 +15,7 @@ Change-Id: I36e08f1e277dca0b0f9f99418671026e61b01496
|
||||
|
||||
diff --git a/core/res/res/values-land/config.xml b/core/res/res/values-land/config.xml
|
||||
deleted file mode 100644
|
||||
index 7308dc5882c1..000000000000
|
||||
index 7308dc5882c..00000000000
|
||||
--- a/core/res/res/values-land/config.xml
|
||||
+++ /dev/null
|
||||
@@ -1,19 +0,0 @@
|
||||
@ -40,7 +40,7 @@ index 7308dc5882c1..000000000000
|
||||
-</resources>
|
||||
\ No newline at end of file
|
||||
diff --git a/core/res/res/values-sw600dp/config.xml b/core/res/res/values-sw600dp/config.xml
|
||||
index 34b6a54be493..3921c9edfeac 100644
|
||||
index 34b6a54be49..3921c9edfea 100644
|
||||
--- a/core/res/res/values-sw600dp/config.xml
|
||||
+++ b/core/res/res/values-sw600dp/config.xml
|
||||
@@ -3,16 +3,16 @@
|
||||
@ -78,10 +78,10 @@ index 34b6a54be493..3921c9edfeac 100644
|
||||
Only applies if the device display is not square. -->
|
||||
<bool name="config_navBarCanMove">false</bool>
|
||||
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
|
||||
index 77045ea11775..5c9cad656654 100644
|
||||
index f761d28e68d..b1ee670fc6a 100644
|
||||
--- a/core/res/res/values/config.xml
|
||||
+++ b/core/res/res/values/config.xml
|
||||
@@ -3885,7 +3885,7 @@
|
||||
@@ -3313,7 +3313,7 @@
|
||||
1 - 3 snap targets: fixed ratio, 1:1, (1 - fixed ratio)
|
||||
2 - 1 snap target: 1:1
|
||||
-->
|
||||
@ -91,5 +91,5 @@ index 77045ea11775..5c9cad656654 100644
|
||||
<!-- The maximum aspect ratio (longerSide/shorterSide) that is treated as close-to-square. The
|
||||
orientation requests from apps would be ignored if the display is close-to-square. -->
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
@ -1,26 +0,0 @@
|
||||
From cf35535a94712e9f81d9532fa4a494a8628b4641 Mon Sep 17 00:00:00 2001
|
||||
From: Hikari-no-Tenshi <kyryljan.serhij@gmail.com>
|
||||
Date: Thu, 30 Jan 2020 22:20:54 +0200
|
||||
Subject: [PATCH 03/21] Disable Bluetooth by default
|
||||
|
||||
Change-Id: Iea5d24f977928bf01cd7a46b98c75c0a4bd6a23c
|
||||
---
|
||||
packages/SettingsProvider/res/values/defaults.xml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/packages/SettingsProvider/res/values/defaults.xml b/packages/SettingsProvider/res/values/defaults.xml
|
||||
index 99b15db780dc..cff3e668f053 100644
|
||||
--- a/packages/SettingsProvider/res/values/defaults.xml
|
||||
+++ b/packages/SettingsProvider/res/values/defaults.xml
|
||||
@@ -36,7 +36,7 @@
|
||||
<fraction name="def_window_transition_scale">100%</fraction>
|
||||
<bool name="def_haptic_feedback">true</bool>
|
||||
|
||||
- <bool name="def_bluetooth_on">true</bool>
|
||||
+ <bool name="def_bluetooth_on">false</bool>
|
||||
<bool name="def_wifi_display_on">false</bool>
|
||||
<bool name="def_install_non_market_apps">false</bool>
|
||||
<!-- 0 == off, 3 == on -->
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,26 @@
|
||||
From dcbba0a8db63f78730b01606462a92653ef18ae3 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 3 Jun 2020 01:31:34 +0000
|
||||
Subject: [PATCH 03/18] UI: Increase default status bar height
|
||||
|
||||
Change-Id: Ibbcf63159e19bb2bb2b1094ea07ab85917630b07
|
||||
---
|
||||
core/res/res/values/dimens.xml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml
|
||||
index d165930d3c9..eb537474b97 100644
|
||||
--- a/core/res/res/values/dimens.xml
|
||||
+++ b/core/res/res/values/dimens.xml
|
||||
@@ -35,7 +35,7 @@
|
||||
<dimen name="status_bar_height">@dimen/status_bar_height_portrait</dimen>
|
||||
<!-- Height of the status bar in portrait. The height should be
|
||||
Max((status bar content height + waterfall top size), top cutout size) -->
|
||||
- <dimen name="status_bar_height_portrait">24dp</dimen>
|
||||
+ <dimen name="status_bar_height_portrait">28dp</dimen>
|
||||
<!-- Height of the status bar in landscape. The height should be
|
||||
Max((status bar content height + waterfall top size), top cutout size) -->
|
||||
<dimen name="status_bar_height_landscape">@dimen/status_bar_height_portrait</dimen>
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,28 +0,0 @@
|
||||
From 8201fef9ab532374796549c938ea2fc172bf20f5 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Mon, 27 Sep 2021 16:30:00 +0000
|
||||
Subject: [PATCH 04/21] Disable cursor drag by default for editable TextViews
|
||||
|
||||
Requested by @TadiT7
|
||||
|
||||
Change-Id: Id54e38ee418174af8cde4113c849bc292f5fc96d
|
||||
---
|
||||
core/java/android/widget/WidgetFlags.java | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/core/java/android/widget/WidgetFlags.java b/core/java/android/widget/WidgetFlags.java
|
||||
index fb40ee5ec843..c0c6fb6e9431 100644
|
||||
--- a/core/java/android/widget/WidgetFlags.java
|
||||
+++ b/core/java/android/widget/WidgetFlags.java
|
||||
@@ -38,7 +38,7 @@ public final class WidgetFlags {
|
||||
/**
|
||||
* Default value for the flag {@link #ENABLE_CURSOR_DRAG_FROM_ANYWHERE}.
|
||||
*/
|
||||
- public static final boolean ENABLE_CURSOR_DRAG_FROM_ANYWHERE_DEFAULT = true;
|
||||
+ public static final boolean ENABLE_CURSOR_DRAG_FROM_ANYWHERE_DEFAULT = false;
|
||||
|
||||
/**
|
||||
* Threshold for the direction of a swipe gesture in order for it to be handled as a cursor drag
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,46 @@
|
||||
From 39e612fc6c8c818da613564cb284d6881b53603e Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 7 Oct 2020 14:00:35 +0000
|
||||
Subject: [PATCH 04/18] UI: Always render windows into cutouts
|
||||
|
||||
Eliminates black/white letterboxing
|
||||
Quick and dirty way to do the latter - wait for proper fix from Google
|
||||
|
||||
Change-Id: I4661c7979bfa7de453329fcddbaeefc2009e2da3
|
||||
---
|
||||
services/core/java/com/android/server/wm/DisplayPolicy.java | 5 +----
|
||||
1 file changed, 1 insertion(+), 4 deletions(-)
|
||||
|
||||
diff --git a/services/core/java/com/android/server/wm/DisplayPolicy.java b/services/core/java/com/android/server/wm/DisplayPolicy.java
|
||||
index 18119560cd1..6f18d102019 100644
|
||||
--- a/services/core/java/com/android/server/wm/DisplayPolicy.java
|
||||
+++ b/services/core/java/com/android/server/wm/DisplayPolicy.java
|
||||
@@ -1702,7 +1702,6 @@ public class DisplayPolicy {
|
||||
void simulateLayoutDisplay(DisplayFrames displayFrames, InsetsState insetsState,
|
||||
SparseArray<Rect> barContentFrames) {
|
||||
displayFrames.onBeginLayout();
|
||||
- updateInsetsStateForDisplayCutout(displayFrames, insetsState);
|
||||
insetsState.setDisplayFrame(displayFrames.mUnrestricted);
|
||||
final WindowFrames simulatedWindowFrames = new WindowFrames();
|
||||
if (mNavigationBar != null) {
|
||||
@@ -1731,8 +1730,6 @@ public class DisplayPolicy {
|
||||
*/
|
||||
public void beginLayoutLw(DisplayFrames displayFrames, int uiMode) {
|
||||
displayFrames.onBeginLayout();
|
||||
- updateInsetsStateForDisplayCutout(displayFrames,
|
||||
- mDisplayContent.getInsetsStateController().getRawInsetsState());
|
||||
mSystemGestures.screenWidth = displayFrames.mUnrestricted.width();
|
||||
mSystemGestures.screenHeight = displayFrames.mUnrestricted.height();
|
||||
|
||||
@@ -2593,7 +2590,7 @@ public class DisplayPolicy {
|
||||
}
|
||||
}
|
||||
|
||||
- final int cutoutMode = attrs.layoutInDisplayCutoutMode;
|
||||
+ final int cutoutMode = LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
|
||||
final boolean attachedInParent = attached != null && !layoutInScreen;
|
||||
final boolean requestedFullscreen = (fl & FLAG_FULLSCREEN) != 0
|
||||
|| (requestedSysUiFl & View.SYSTEM_UI_FLAG_FULLSCREEN) != 0
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,44 +0,0 @@
|
||||
From 0dba3680960846702881fed2b3e716825af92d58 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 3 Jul 2022 00:08:42 +0000
|
||||
Subject: [PATCH 05/21] Disable "RESTRICTED bucket" toast
|
||||
|
||||
Change-Id: I20a328d3c77962f3a6095bfca42d0b165a093ce8
|
||||
---
|
||||
.../server/usage/AppStandbyController.java | 20 +------------------
|
||||
1 file changed, 1 insertion(+), 19 deletions(-)
|
||||
|
||||
diff --git a/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java b/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java
|
||||
index b27ff411dd58..5ce49bd98c5c 100644
|
||||
--- a/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java
|
||||
+++ b/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java
|
||||
@@ -1792,25 +1792,7 @@ public class AppStandbyController
|
||||
.noteRestrictionAttempt(packageName, userId, elapsedRealtime, reason);
|
||||
|
||||
if (isForcedByUser) {
|
||||
- // Only user force can bypass the delay restriction. If the user forced the
|
||||
- // app into the RESTRICTED bucket, then a toast confirming the action
|
||||
- // shouldn't be surprising.
|
||||
- // Exclude REASON_SUB_FORCED_USER_FLAG_INTERACTION since the RESTRICTED bucket
|
||||
- // isn't directly visible in that flow.
|
||||
- if (Build.IS_DEBUGGABLE
|
||||
- && (reason & REASON_SUB_MASK)
|
||||
- != REASON_SUB_FORCED_USER_FLAG_INTERACTION) {
|
||||
- Toast.makeText(mContext,
|
||||
- // Since AppStandbyController sits low in the lock hierarchy,
|
||||
- // make sure not to call out with the lock held.
|
||||
- mHandler.getLooper(),
|
||||
- mContext.getResources().getString(
|
||||
- R.string.as_app_forced_to_restricted_bucket, packageName),
|
||||
- Toast.LENGTH_SHORT)
|
||||
- .show();
|
||||
- } else {
|
||||
- Slog.i(TAG, packageName + " restricted by user");
|
||||
- }
|
||||
+ Slog.i(TAG, packageName + " restricted by user");
|
||||
} else {
|
||||
final long timeUntilRestrictPossibleMs = app.lastUsedByUserElapsedTime
|
||||
+ mInjector.getAutoRestrictedBucketDelayMs() - elapsedRealtime;
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,34 @@
|
||||
From 9a8d7eada09d1940b3e12dcbbb95b1e6cfdafb18 Mon Sep 17 00:00:00 2001
|
||||
From: Vachounet <vachounet@live.fr>
|
||||
Date: Wed, 14 Oct 2020 11:43:10 +0200
|
||||
Subject: [PATCH 05/18] UI: Remove black background from power menu
|
||||
|
||||
Change-Id: I87092d57ea457e6d6783c87b8a64b4e69dec2d8a
|
||||
---
|
||||
.../android/systemui/globalactions/GlobalActionsDialog.java | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java b/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java
|
||||
index f8f94b0bff6..04d35341c41 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java
|
||||
@@ -2696,7 +2696,7 @@ public class GlobalActionsDialog implements DialogInterface.OnDismissListener,
|
||||
initializeWalletView();
|
||||
if (mBackgroundDrawable == null) {
|
||||
mBackgroundDrawable = new ScrimDrawable();
|
||||
- mScrimAlpha = 1.0f;
|
||||
+ mScrimAlpha = 0.45f;
|
||||
}
|
||||
getWindow().setBackgroundDrawable(mBackgroundDrawable);
|
||||
}
|
||||
@@ -2733,7 +2733,6 @@ public class GlobalActionsDialog implements DialogInterface.OnDismissListener,
|
||||
if (!(mBackgroundDrawable instanceof ScrimDrawable)) {
|
||||
return;
|
||||
}
|
||||
- ((ScrimDrawable) mBackgroundDrawable).setColor(Color.BLACK, animate);
|
||||
View decorView = getWindow().getDecorView();
|
||||
if (colors.supportsDarkText()) {
|
||||
decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR |
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,169 +0,0 @@
|
||||
From c16a1a66b9e311a2dfbf1925d8f17783933571e5 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 2 Sep 2021 16:15:19 +0000
|
||||
Subject: [PATCH 06/21] Keyguard: Adjust clock style
|
||||
|
||||
Thinner font, less padding and unintrusive colors
|
||||
|
||||
Change-Id: I21e5d5bf37d724e75ebce4cd89349e0cc4dfc910
|
||||
---
|
||||
.../customization/res/layout/clock_default_large.xml | 1 +
|
||||
.../customization/res/layout/clock_default_small.xml | 2 +-
|
||||
packages/SystemUI/customization/res/values/colors.xml | 5 +++++
|
||||
.../android/systemui/shared/clocks/AnimatableClockView.kt | 2 +-
|
||||
.../systemui/shared/clocks/DefaultClockController.kt | 4 ++--
|
||||
.../SystemUI/res-keyguard/layout/keyguard_slice_view.xml | 2 +-
|
||||
packages/SystemUI/res-keyguard/values/dimens.xml | 6 +++---
|
||||
packages/SystemUI/res-keyguard/values/styles.xml | 2 --
|
||||
packages/SystemUI/res/layout/keyguard_status_bar.xml | 2 +-
|
||||
packages/SystemUI/res/values/styles.xml | 4 ++--
|
||||
10 files changed, 17 insertions(+), 13 deletions(-)
|
||||
create mode 100644 packages/SystemUI/customization/res/values/colors.xml
|
||||
|
||||
diff --git a/packages/SystemUI/customization/res/layout/clock_default_large.xml b/packages/SystemUI/customization/res/layout/clock_default_large.xml
|
||||
index 0139d50dcfba..9f5ca7b89213 100644
|
||||
--- a/packages/SystemUI/customization/res/layout/clock_default_large.xml
|
||||
+++ b/packages/SystemUI/customization/res/layout/clock_default_large.xml
|
||||
@@ -26,6 +26,7 @@
|
||||
android:fontFamily="@*android:string/config_clockFontFamily"
|
||||
android:typeface="monospace"
|
||||
android:elegantTextHeight="false"
|
||||
+ android:fontFeatureSettings="tnum"
|
||||
chargeAnimationDelay="200"
|
||||
dozeWeight="200"
|
||||
lockScreenWeight="400" />
|
||||
diff --git a/packages/SystemUI/customization/res/layout/clock_default_small.xml b/packages/SystemUI/customization/res/layout/clock_default_small.xml
|
||||
index ff6d7f9e2240..b63ffce20671 100644
|
||||
--- a/packages/SystemUI/customization/res/layout/clock_default_small.xml
|
||||
+++ b/packages/SystemUI/customization/res/layout/clock_default_small.xml
|
||||
@@ -27,7 +27,7 @@
|
||||
android:elegantTextHeight="false"
|
||||
android:ellipsize="none"
|
||||
android:singleLine="true"
|
||||
- android:fontFeatureSettings="pnum"
|
||||
+ android:fontFeatureSettings="tnum"
|
||||
chargeAnimationDelay="350"
|
||||
dozeWeight="200"
|
||||
lockScreenWeight="400" />
|
||||
diff --git a/packages/SystemUI/customization/res/values/colors.xml b/packages/SystemUI/customization/res/values/colors.xml
|
||||
new file mode 100644
|
||||
index 000000000000..f80af4376ff1
|
||||
--- /dev/null
|
||||
+++ b/packages/SystemUI/customization/res/values/colors.xml
|
||||
@@ -0,0 +1,5 @@
|
||||
+<?xml version="1.0" encoding="utf-8"?>
|
||||
+<resources>
|
||||
+ <color name="clock_default_color_dark">@*android:color/primary_text_material_dark</color>
|
||||
+ <color name="clock_default_color_light">@*android:color/primary_text_material_light</color>
|
||||
+</resources>
|
||||
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/AnimatableClockView.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/AnimatableClockView.kt
|
||||
index 86bd5f2bff5a..b99a8ba487cb 100644
|
||||
--- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/AnimatableClockView.kt
|
||||
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/AnimatableClockView.kt
|
||||
@@ -146,7 +146,7 @@ class AnimatableClockView @JvmOverloads constructor(
|
||||
fun refreshTime() {
|
||||
time.timeInMillis = timeOverrideInMillis ?: System.currentTimeMillis()
|
||||
contentDescription = DateFormat.format(descFormat, time)
|
||||
- val formattedText = DateFormat.format(format, time)
|
||||
+ val formattedText = DateFormat.format(format, time).toString() + ' '
|
||||
logBuffer?.log(TAG, DEBUG,
|
||||
{ str1 = formattedText?.toString() },
|
||||
{ "refreshTime: new formattedText=$str1" }
|
||||
diff --git a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockController.kt b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockController.kt
|
||||
index 4df7a44d3e1d..447160a8cb63 100644
|
||||
--- a/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockController.kt
|
||||
+++ b/packages/SystemUI/customization/src/com/android/systemui/shared/clocks/DefaultClockController.kt
|
||||
@@ -143,9 +143,9 @@ class DefaultClockController(
|
||||
if (seedColor != null) {
|
||||
seedColor!!
|
||||
} else if (isRegionDark) {
|
||||
- resources.getColor(android.R.color.system_accent1_100)
|
||||
+ resources.getColor(R.color.clock_default_color_dark)
|
||||
} else {
|
||||
- resources.getColor(android.R.color.system_accent2_600)
|
||||
+ resources.getColor(R.color.clock_default_color_light)
|
||||
}
|
||||
|
||||
if (currentColor == color) {
|
||||
diff --git a/packages/SystemUI/res-keyguard/layout/keyguard_slice_view.xml b/packages/SystemUI/res-keyguard/layout/keyguard_slice_view.xml
|
||||
index 7c5dbc247428..64657547621f 100644
|
||||
--- a/packages/SystemUI/res-keyguard/layout/keyguard_slice_view.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/layout/keyguard_slice_view.xml
|
||||
@@ -38,7 +38,7 @@
|
||||
android:id="@+id/row"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
- android:orientation="horizontal"
|
||||
+ android:orientation="vertical"
|
||||
android:gravity="start"
|
||||
/>
|
||||
</com.android.keyguard.KeyguardSliceView>
|
||||
diff --git a/packages/SystemUI/res-keyguard/values/dimens.xml b/packages/SystemUI/res-keyguard/values/dimens.xml
|
||||
index edd6eff92c1c..14df77dc4a4e 100644
|
||||
--- a/packages/SystemUI/res-keyguard/values/dimens.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/values/dimens.xml
|
||||
@@ -91,10 +91,10 @@
|
||||
<dimen name="num_pad_key_margin_end">12dp</dimen>
|
||||
|
||||
<!-- additional offset for clock switch area items -->
|
||||
- <dimen name="clock_padding_start">28dp</dimen>
|
||||
- <dimen name="below_clock_padding_start">32dp</dimen>
|
||||
+ <dimen name="clock_padding_start">22dp</dimen>
|
||||
+ <dimen name="below_clock_padding_start">28dp</dimen>
|
||||
<dimen name="below_clock_padding_end">16dp</dimen>
|
||||
- <dimen name="below_clock_padding_start_icons">28dp</dimen>
|
||||
+ <dimen name="below_clock_padding_start_icons">22dp</dimen>
|
||||
|
||||
<!-- Proportion of the screen height to use to set the maximum height of the bouncer to when
|
||||
the device is in the DEVICE_POSTURE_HALF_OPENED posture, for the PIN/pattern entry. 0 will
|
||||
diff --git a/packages/SystemUI/res-keyguard/values/styles.xml b/packages/SystemUI/res-keyguard/values/styles.xml
|
||||
index 04dffb6e8c52..c81e018702bb 100644
|
||||
--- a/packages/SystemUI/res-keyguard/values/styles.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/values/styles.xml
|
||||
@@ -117,8 +117,6 @@
|
||||
<item name="android:ellipsize">end</item>
|
||||
<item name="android:maxLines">2</item>
|
||||
<item name="android:fontFamily">@*android:string/config_headlineFontFamily</item>
|
||||
- <item name="android:shadowColor">@color/keyguard_shadow_color</item>
|
||||
- <item name="android:shadowRadius">?attr/shadowRadius</item>
|
||||
</style>
|
||||
|
||||
<style name="TextAppearance.Keyguard.Secondary">
|
||||
diff --git a/packages/SystemUI/res/layout/keyguard_status_bar.xml b/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
index 8b8594032816..9135e78f3e4c 100644
|
||||
--- a/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
+++ b/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
@@ -74,7 +74,7 @@
|
||||
android:gravity="center_vertical"
|
||||
android:ellipsize="marquee"
|
||||
android:textDirection="locale"
|
||||
- android:textAppearance="@style/TextAppearance.StatusBar.Clock"
|
||||
+ android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:textColor="?attr/wallpaperTextColorSecondary"
|
||||
android:singleLine="true"
|
||||
systemui:showMissingSim="true"
|
||||
diff --git a/packages/SystemUI/res/values/styles.xml b/packages/SystemUI/res/values/styles.xml
|
||||
index 892c2f4caa39..6996e41e08da 100644
|
||||
--- a/packages/SystemUI/res/values/styles.xml
|
||||
+++ b/packages/SystemUI/res/values/styles.xml
|
||||
@@ -302,7 +302,7 @@
|
||||
<item name="darkIconTheme">@style/DualToneDarkTheme</item>
|
||||
<item name="wallpaperTextColor">@*android:color/primary_text_material_dark</item>
|
||||
<item name="wallpaperTextColorSecondary">@*android:color/secondary_text_material_dark</item>
|
||||
- <item name="wallpaperTextColorAccent">@color/material_dynamic_primary90</item>
|
||||
+ <item name="wallpaperTextColorAccent">@*android:color/primary_text_material_dark</item>
|
||||
<item name="android:colorError">@*android:color/error_color_material_dark</item>
|
||||
<item name="*android:lockPatternStyle">@style/LockPatternViewStyle</item>
|
||||
<item name="lockPatternStyle">@style/LockPatternContainerStyle</item>
|
||||
@@ -324,7 +324,7 @@
|
||||
<style name="Theme.SystemUI.LightWallpaper">
|
||||
<item name="wallpaperTextColor">@*android:color/primary_text_material_light</item>
|
||||
<item name="wallpaperTextColorSecondary">@*android:color/secondary_text_material_light</item>
|
||||
- <item name="wallpaperTextColorAccent">@color/material_dynamic_secondary40</item>
|
||||
+ <item name="wallpaperTextColorAccent">@*android:color/primary_text_material_light</item>
|
||||
<item name="android:colorError">@*android:color/error_color_material_light</item>
|
||||
<item name="shadowRadius">0</item>
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,88 @@
|
||||
From 508d9e0843d9519344d76cd32e38148ee8975833 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Mon, 26 Oct 2020 14:06:56 +0000
|
||||
Subject: [PATCH 06/18] UI: Reconfigure power menu items
|
||||
|
||||
- Show only the important items (GTFO Emergency)
|
||||
- Make 4 columns
|
||||
- Always include screenshot
|
||||
|
||||
Change-Id: I32cca6e2c6bb64d891efee959127edf7c0802cbc
|
||||
---
|
||||
core/res/res/values/config.xml | 5 +----
|
||||
packages/SystemUI/res/values-land/config.xml | 19 ++++++++-----------
|
||||
packages/SystemUI/res/values/config.xml | 2 +-
|
||||
3 files changed, 10 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
|
||||
index b1ee670fc6a..5efb4156466 100644
|
||||
--- a/core/res/res/values/config.xml
|
||||
+++ b/core/res/res/values/config.xml
|
||||
@@ -2779,13 +2779,10 @@
|
||||
"logout" = Logout the current user
|
||||
-->
|
||||
<string-array translatable="false" name="config_globalActionsList">
|
||||
- <item>emergency</item>
|
||||
- <item>lockdown</item>
|
||||
<item>power</item>
|
||||
<item>restart</item>
|
||||
- <item>logout</item>
|
||||
<item>screenshot</item>
|
||||
- <item>bugreport</item>
|
||||
+ <item>airplane</item>
|
||||
</string-array>
|
||||
|
||||
<!-- Number of milliseconds to hold a wake lock to ensure that drawing is fully
|
||||
diff --git a/packages/SystemUI/res/values-land/config.xml b/packages/SystemUI/res/values-land/config.xml
|
||||
index 2f7fbaff4ed..8b7ae652846 100644
|
||||
--- a/packages/SystemUI/res/values-land/config.xml
|
||||
+++ b/packages/SystemUI/res/values-land/config.xml
|
||||
@@ -3,16 +3,16 @@
|
||||
/*
|
||||
** Copyright 2011, The Android Open Source Project
|
||||
**
|
||||
-** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
-** you may not use this file except in compliance with the License.
|
||||
-** You may obtain a copy of the License at
|
||||
+** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+** you may not use this file except in compliance with the License.
|
||||
+** You may obtain a copy of the License at
|
||||
**
|
||||
-** http://www.apache.org/licenses/LICENSE-2.0
|
||||
+** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
-** Unless required by applicable law or agreed to in writing, software
|
||||
-** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
-** See the License for the specific language governing permissions and
|
||||
+** Unless required by applicable law or agreed to in writing, software
|
||||
+** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
+** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
@@ -34,7 +34,4 @@
|
||||
|
||||
<!-- Max number of columns for quick controls area -->
|
||||
<integer name="controls_max_columns">4</integer>
|
||||
-
|
||||
- <!-- Max number of columns for power menu -->
|
||||
- <integer name="power_menu_max_columns">4</integer>
|
||||
</resources>
|
||||
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
|
||||
index d86f3fa277f..fd9ec3166fb 100644
|
||||
--- a/packages/SystemUI/res/values/config.xml
|
||||
+++ b/packages/SystemUI/res/values/config.xml
|
||||
@@ -572,7 +572,7 @@
|
||||
<integer name="controls_max_columns">2</integer>
|
||||
|
||||
<!-- Max number of columns for power menu -->
|
||||
- <integer name="power_menu_max_columns">3</integer>
|
||||
+ <integer name="power_menu_max_columns">4</integer>
|
||||
|
||||
<!-- If the dp width of the available space is <= this value, potentially adjust the number
|
||||
of columns-->
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,43 +0,0 @@
|
||||
From c9d2af70d90a8cf81dae5bfba93d6f59c0373bdb Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 2 Nov 2019 06:41:03 +0000
|
||||
Subject: [PATCH 07/21] Keyguard: Hide padlock unless UDFPS is in use
|
||||
|
||||
Fair enough Google, but don't give me that otherwise
|
||||
|
||||
Change-Id: Ie91e80ca5c6637a51a8acc72fb28cd6ac2a7abb6
|
||||
---
|
||||
.../com/android/keyguard/LockIconViewController.java | 12 +++---------
|
||||
1 file changed, 3 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/keyguard/LockIconViewController.java b/packages/SystemUI/src/com/android/keyguard/LockIconViewController.java
|
||||
index 0887b220dee1..423549dd3ab2 100644
|
||||
--- a/packages/SystemUI/src/com/android/keyguard/LockIconViewController.java
|
||||
+++ b/packages/SystemUI/src/com/android/keyguard/LockIconViewController.java
|
||||
@@ -295,20 +295,14 @@ public class LockIconViewController extends ViewController<LockIconView> impleme
|
||||
return;
|
||||
}
|
||||
|
||||
- boolean wasShowingFpIcon = mUdfpsEnrolled && !mShowUnlockIcon && !mShowLockIcon
|
||||
+ boolean wasShowingFpIcon = mUdfpsEnrolled && !mShowUnlockIcon
|
||||
&& !mShowAodUnlockedIcon && !mShowAodLockIcon;
|
||||
- mShowLockIcon = !mCanDismissLockScreen && !mUserUnlockedWithBiometric && isLockScreen()
|
||||
- && (!mUdfpsEnrolled || !mRunningFPS);
|
||||
- mShowUnlockIcon = (mCanDismissLockScreen || mUserUnlockedWithBiometric) && isLockScreen();
|
||||
+ mShowUnlockIcon = (mCanDismissLockScreen || mUserUnlockedWithBiometric) && isLockScreen() && mUdfpsEnrolled;
|
||||
mShowAodUnlockedIcon = mIsDozing && mUdfpsEnrolled && !mRunningFPS && mCanDismissLockScreen;
|
||||
mShowAodLockIcon = mIsDozing && mUdfpsEnrolled && !mRunningFPS && !mCanDismissLockScreen;
|
||||
|
||||
final CharSequence prevContentDescription = mView.getContentDescription();
|
||||
- if (mShowLockIcon) {
|
||||
- mView.updateIcon(ICON_LOCK, false);
|
||||
- mView.setContentDescription(mLockedLabel);
|
||||
- mView.setVisibility(View.VISIBLE);
|
||||
- } else if (mShowUnlockIcon) {
|
||||
+ if (mShowUnlockIcon) {
|
||||
if (wasShowingFpIcon) {
|
||||
// fp icon was shown by UdfpsView, and now we still want to animate the transition
|
||||
// in this drawable
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,34 @@
|
||||
From 2253b5c60f551017965f7d6131ce777ac56713ce Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 15 May 2021 10:15:12 +0000
|
||||
Subject: [PATCH 07/18] UI: Tap outside to dismiss power menu
|
||||
|
||||
Change-Id: Id713b84a2edb3facc184394963f98291abe6ae2c
|
||||
---
|
||||
.../systemui/globalactions/GlobalActionsDialog.java | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java b/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java
|
||||
index 04d35341c41..4552792b3f5 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialog.java
|
||||
@@ -2699,6 +2699,16 @@ public class GlobalActionsDialog implements DialogInterface.OnDismissListener,
|
||||
mScrimAlpha = 0.45f;
|
||||
}
|
||||
getWindow().setBackgroundDrawable(mBackgroundDrawable);
|
||||
+
|
||||
+ ViewGroup root = findViewById(com.android.systemui.R.id.global_actions_grid_root);
|
||||
+ if (root != null) {
|
||||
+ root.setOnClickListener(new View.OnClickListener() {
|
||||
+ @Override
|
||||
+ public void onClick(View v) {
|
||||
+ dismiss();
|
||||
+ }
|
||||
+ });
|
||||
+ }
|
||||
}
|
||||
|
||||
private void fixNavBarClipping() {
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,28 +0,0 @@
|
||||
From ff1164da64003d5a6d6e57fd75ba1d8684167dd7 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 1 Sep 2021 14:41:53 +0000
|
||||
Subject: [PATCH 08/21] Keyguard: Never switch to large clock
|
||||
|
||||
It looks alright actually, but as always breaks under landscape
|
||||
|
||||
Change-Id: I434d033ecae597ed2a7b2ed71e96ba1a963e9cc3
|
||||
---
|
||||
.../src/com/android/keyguard/KeyguardClockSwitchController.java | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitchController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitchController.java
|
||||
index ba217804c96e..ab3391372e2c 100644
|
||||
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitchController.java
|
||||
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitchController.java
|
||||
@@ -470,7 +470,7 @@ public class KeyguardClockSwitchController extends ViewController<KeyguardClockS
|
||||
|
||||
private void updateDoubleLineClock() {
|
||||
mCanShowDoubleLineClock = mSecureSettings.getIntForUser(
|
||||
- Settings.Secure.LOCKSCREEN_USE_DOUBLE_LINE_CLOCK, 1,
|
||||
+ Settings.Secure.LOCKSCREEN_USE_DOUBLE_LINE_CLOCK, 0,
|
||||
UserHandle.USER_CURRENT) != 0;
|
||||
|
||||
if (!mCanShowDoubleLineClock) {
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,7 +1,7 @@
|
||||
From fe8362152cdb0a17376ffedb37030cc57d14b375 Mon Sep 17 00:00:00 2001
|
||||
From 557c1fd05415a15beb4c1d6f6c021dc66a28957d Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 29 Jun 2021 22:57:01 +0000
|
||||
Subject: [PATCH 18/21] UI: Relax requirement for HINT_SUPPORTS_DARK_TEXT
|
||||
Subject: [PATCH 08/18] UI: Relax requirement for HINT_SUPPORTS_DARK_TEXT
|
||||
|
||||
I decide what's good enough for a wallpaper!
|
||||
|
||||
@ -11,10 +11,10 @@ Change-Id: I5ccd85b3df12e53746a4ac6cbc37ba8d11f6c336
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/core/java/android/app/WallpaperColors.java b/core/java/android/app/WallpaperColors.java
|
||||
index a34a50c4b7b0..028f77fb21b0 100644
|
||||
index e4818b27434..67208f0ebed 100644
|
||||
--- a/core/java/android/app/WallpaperColors.java
|
||||
+++ b/core/java/android/app/WallpaperColors.java
|
||||
@@ -580,7 +580,7 @@ public final class WallpaperColors implements Parcelable {
|
||||
@@ -413,7 +413,7 @@ public final class WallpaperColors implements Parcelable {
|
||||
|
||||
int hints = 0;
|
||||
double meanLuminance = totalLuminance / pixels.length;
|
||||
@ -24,5 +24,5 @@ index a34a50c4b7b0..028f77fb21b0 100644
|
||||
}
|
||||
if (meanLuminance < DARK_THEME_MEAN_LUMINANCE) {
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
@ -1,150 +0,0 @@
|
||||
From a8a951832a14ed9fb5e718a14c4dc9ec73d24693 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 2 Nov 2019 08:31:36 +0000
|
||||
Subject: [PATCH 09/21] Keyguard: Refine indication text
|
||||
|
||||
Change-Id: Ib771c35610f712a1de34736e817bcfe616ac37d8
|
||||
---
|
||||
.../SystemUI/res-keyguard/values/styles.xml | 2 --
|
||||
.../res/layout/keyguard_bottom_area.xml | 1 +
|
||||
packages/SystemUI/res/values/dimens.xml | 3 +--
|
||||
...ardIndicationRotateTextViewController.java | 12 ++++++++++-
|
||||
.../KeyguardIndicationController.java | 21 ++-----------------
|
||||
.../phone/KeyguardIndicationTextView.java | 2 +-
|
||||
6 files changed, 16 insertions(+), 25 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res-keyguard/values/styles.xml b/packages/SystemUI/res-keyguard/values/styles.xml
|
||||
index c81e018702bb..cc87f9f3d7cf 100644
|
||||
--- a/packages/SystemUI/res-keyguard/values/styles.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/values/styles.xml
|
||||
@@ -132,8 +132,6 @@
|
||||
<item name="android:maxLines">1</item>
|
||||
<item name="android:gravity">center</item>
|
||||
<item name="android:textColor">?attr/wallpaperTextColor</item>
|
||||
- <item name="android:shadowColor">@color/keyguard_shadow_color</item>
|
||||
- <item name="android:shadowRadius">?attr/shadowRadius</item>
|
||||
</style>
|
||||
|
||||
<style name="TextAppearance.Keyguard.BottomArea.Button">
|
||||
diff --git a/packages/SystemUI/res/layout/keyguard_bottom_area.xml b/packages/SystemUI/res/layout/keyguard_bottom_area.xml
|
||||
index 4048a39344bd..2f884baf0bd5 100644
|
||||
--- a/packages/SystemUI/res/layout/keyguard_bottom_area.xml
|
||||
+++ b/packages/SystemUI/res/layout/keyguard_bottom_area.xml
|
||||
@@ -35,6 +35,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
+ android:minHeight="48dp"
|
||||
android:paddingStart="@dimen/keyguard_indication_text_padding"
|
||||
android:paddingEnd="@dimen/keyguard_indication_text_padding"
|
||||
android:textAppearance="@style/TextAppearance.Keyguard.BottomArea"
|
||||
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
|
||||
index ceebab2b08ef..e2c65f5542b7 100644
|
||||
--- a/packages/SystemUI/res/values/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values/dimens.xml
|
||||
@@ -815,11 +815,10 @@
|
||||
<dimen name="keyguard_lock_height">42dp</dimen>
|
||||
<dimen name="keyguard_lock_padding">20dp</dimen>
|
||||
|
||||
- <dimen name="keyguard_indication_margin_bottom">32dp</dimen>
|
||||
+ <dimen name="keyguard_indication_margin_bottom">16dp</dimen>
|
||||
<dimen name="lock_icon_margin_bottom">74dp</dimen>
|
||||
<dimen name="ambient_indication_margin_bottom">71dp</dimen>
|
||||
|
||||
-
|
||||
<!-- How much two taps can be apart to still be recognized as a double tap on the lockscreen -->
|
||||
<dimen name="double_tap_slop">32dp</dimen>
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardIndicationRotateTextViewController.java b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardIndicationRotateTextViewController.java
|
||||
index 0745456b3e43..0fc0b9e29fb7 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardIndicationRotateTextViewController.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardIndicationRotateTextViewController.java
|
||||
@@ -224,12 +224,22 @@ public class KeyguardIndicationRotateTextViewController extends
|
||||
}
|
||||
|
||||
/**
|
||||
- * @return true if there are available indications to show
|
||||
+ * @return true if there are available non-resting indications to show.
|
||||
*/
|
||||
public boolean hasIndications() {
|
||||
+ if (hasIndication(INDICATION_TYPE_PERSISTENT_UNLOCK_MESSAGE)) {
|
||||
+ return mIndicationMessages.keySet().size() > 1;
|
||||
+ }
|
||||
return mIndicationMessages.keySet().size() > 0;
|
||||
}
|
||||
|
||||
+ /**
|
||||
+ * @return true if there is an indication of the following type.
|
||||
+ */
|
||||
+ public boolean hasIndication(@IndicationType int type) {
|
||||
+ return mIndicationMessages.containsKey(type);
|
||||
+ }
|
||||
+
|
||||
/**
|
||||
* Clears all messages in the queue and sets the current message to an empty string.
|
||||
*/
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java b/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java
|
||||
index 2b3444e64acb..b8567d17785a 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java
|
||||
@@ -407,7 +407,6 @@ public class KeyguardIndicationController {
|
||||
updateLockScreenDisclosureMsg();
|
||||
updateLockScreenOwnerInfo();
|
||||
updateLockScreenBatteryMsg(animate);
|
||||
- updateLockScreenUserLockedMsg(userId);
|
||||
updateLockScreenTrustMsg(userId, getTrustGrantedIndication(), getTrustManagedIndication());
|
||||
updateLockScreenAlignmentMsg();
|
||||
updateLockScreenLogoutView();
|
||||
@@ -518,22 +517,6 @@ public class KeyguardIndicationController {
|
||||
}
|
||||
}
|
||||
|
||||
- private void updateLockScreenUserLockedMsg(int userId) {
|
||||
- if (!mKeyguardUpdateMonitor.isUserUnlocked(userId)
|
||||
- || mKeyguardUpdateMonitor.isEncryptedOrLockdown(userId)) {
|
||||
- mRotateTextViewController.updateIndication(
|
||||
- INDICATION_TYPE_USER_LOCKED,
|
||||
- new KeyguardIndication.Builder()
|
||||
- .setMessage(mContext.getResources().getText(
|
||||
- com.android.internal.R.string.lockscreen_storage_locked))
|
||||
- .setTextColor(mInitialTextColorState)
|
||||
- .build(),
|
||||
- false);
|
||||
- } else {
|
||||
- mRotateTextViewController.hideIndication(INDICATION_TYPE_USER_LOCKED);
|
||||
- }
|
||||
- }
|
||||
-
|
||||
private void updateBiometricMessage() {
|
||||
if (mDozing) {
|
||||
updateDeviceEntryIndication(false);
|
||||
@@ -626,11 +609,11 @@ public class KeyguardIndicationController {
|
||||
}
|
||||
|
||||
private void updateLockScreenPersistentUnlockMsg() {
|
||||
- if (!TextUtils.isEmpty(mPersistentUnlockMessage)) {
|
||||
+ if (!mRotateTextViewController.hasIndications()) {
|
||||
mRotateTextViewController.updateIndication(
|
||||
INDICATION_TYPE_PERSISTENT_UNLOCK_MESSAGE,
|
||||
new KeyguardIndication.Builder()
|
||||
- .setMessage(mPersistentUnlockMessage)
|
||||
+ .setMessage(mContext.getResources().getString(R.string.keyguard_unlock))
|
||||
.setTextColor(mInitialTextColorState)
|
||||
.build(),
|
||||
true);
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardIndicationTextView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardIndicationTextView.java
|
||||
index 9d30cb4c4852..f179194fb0e1 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardIndicationTextView.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardIndicationTextView.java
|
||||
@@ -46,7 +46,7 @@ public class KeyguardIndicationTextView extends TextView {
|
||||
@StyleRes
|
||||
private static int sButtonStyleId = R.style.TextAppearance_Keyguard_BottomArea_Button;
|
||||
|
||||
- private boolean mAnimationsEnabled = true;
|
||||
+ private boolean mAnimationsEnabled = false;
|
||||
private CharSequence mMessage;
|
||||
private KeyguardIndication mKeyguardIndicationInfo;
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,107 @@
|
||||
From e894e06a986225263ec0828595edc5f22f01d59b Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 29 Jun 2021 23:01:07 +0000
|
||||
Subject: [PATCH 09/18] UI: Force dark QS scrim
|
||||
|
||||
Side effect from using light wallpapers
|
||||
|
||||
Change-Id: I241dfd7cf8d8bfce1503e7872c5359c380fdbfed
|
||||
---
|
||||
.../systemui/qs/QuickStatusBarHeader.java | 5 -----
|
||||
.../stack/NotificationStackScrollLayout.java | 2 +-
|
||||
.../statusbar/phone/ScrimController.java | 21 ++++++-------------
|
||||
3 files changed, 7 insertions(+), 21 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QuickStatusBarHeader.java b/packages/SystemUI/src/com/android/systemui/qs/QuickStatusBarHeader.java
|
||||
index 94fd996d085..f82ec46c1ea 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/qs/QuickStatusBarHeader.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/qs/QuickStatusBarHeader.java
|
||||
@@ -411,11 +411,6 @@ public class QuickStatusBarHeader extends RelativeLayout implements
|
||||
protected void onConfigurationChanged(Configuration newConfig) {
|
||||
super.onConfigurationChanged(newConfig);
|
||||
updateResources();
|
||||
-
|
||||
- // Update color schemes in landscape to use wallpaperTextColor
|
||||
- boolean shouldUseWallpaperTextColor =
|
||||
- newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE;
|
||||
- mClockView.useWallpaperTextColor(shouldUseWallpaperTextColor);
|
||||
}
|
||||
|
||||
@Override
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
|
||||
index a4a58194a46..05199cec01a 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
|
||||
@@ -541,7 +541,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements ScrollAd
|
||||
|
||||
private SysuiColorExtractor.OnColorsChangedListener mOnColorsChangedListener =
|
||||
(colorExtractor, which) -> {
|
||||
- final boolean useDarkText = mColorExtractor.getNeutralColors().supportsDarkText();
|
||||
+ final boolean useDarkText = false;
|
||||
updateDecorViews(useDarkText);
|
||||
};
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
|
||||
index 686b8712723..96702a831cd 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
|
||||
@@ -35,9 +35,7 @@ import android.view.animation.DecelerateInterpolator;
|
||||
import android.view.animation.Interpolator;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
-import com.android.internal.colorextraction.ColorExtractor;
|
||||
import com.android.internal.colorextraction.ColorExtractor.GradientColors;
|
||||
-import com.android.internal.colorextraction.ColorExtractor.OnColorsChangedListener;
|
||||
import com.android.internal.graphics.ColorUtils;
|
||||
import com.android.internal.util.function.TriConsumer;
|
||||
import com.android.keyguard.KeyguardUpdateMonitor;
|
||||
@@ -69,8 +67,7 @@ import javax.inject.Singleton;
|
||||
* security method gets shown).
|
||||
*/
|
||||
@Singleton
|
||||
-public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnColorsChangedListener,
|
||||
- Dumpable {
|
||||
+public class ScrimController implements ViewTreeObserver.OnPreDrawListener, Dumpable {
|
||||
|
||||
static final String TAG = "ScrimController";
|
||||
private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
|
||||
@@ -149,7 +146,6 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo
|
||||
private final KeyguardVisibilityCallback mKeyguardVisibilityCallback;
|
||||
private final Handler mHandler;
|
||||
|
||||
- private final SysuiColorExtractor mColorExtractor;
|
||||
private GradientColors mColors;
|
||||
private boolean mNeedsDrawableColorUpdate;
|
||||
|
||||
@@ -226,9 +222,11 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo
|
||||
}
|
||||
});
|
||||
|
||||
- mColorExtractor = sysuiColorExtractor;
|
||||
- mColorExtractor.addOnColorsChangedListener(this);
|
||||
- mColors = mColorExtractor.getNeutralColors();
|
||||
+ mColors = new GradientColors();
|
||||
+ mColors.setMainColor(-14671580);
|
||||
+ mColors.setSecondaryColor(-14671580);
|
||||
+ mColors.setColorPalette(new int[] {-14671580});
|
||||
+ mColors.setSupportsDarkText(false);
|
||||
mNeedsDrawableColorUpdate = true;
|
||||
}
|
||||
|
||||
@@ -941,13 +939,6 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, OnCo
|
||||
// Don't care in the base class.
|
||||
}
|
||||
|
||||
- @Override
|
||||
- public void onColorsChanged(ColorExtractor colorExtractor, int which) {
|
||||
- mColors = mColorExtractor.getNeutralColors();
|
||||
- mNeedsDrawableColorUpdate = true;
|
||||
- scheduleUpdate();
|
||||
- }
|
||||
-
|
||||
@Override
|
||||
public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
|
||||
pw.println(" ScrimController: ");
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,30 @@
|
||||
From 5ad738126de00c6c36b6a00ad0cc0afa5546fe56 Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 27 Dec 2018 16:38:19 +0800
|
||||
Subject: [PATCH 10/18] Keyguard: Show shortcuts by default
|
||||
|
||||
Change-Id: I5655e0be26cec61214735719dffcda810286cd41
|
||||
---
|
||||
packages/SystemUI/res/values/config.xml | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
|
||||
index fd9ec3166fb..2fb057cb635 100644
|
||||
--- a/packages/SystemUI/res/values/config.xml
|
||||
+++ b/packages/SystemUI/res/values/config.xml
|
||||
@@ -69,10 +69,10 @@
|
||||
<integer translatable="false" name="config_search_panel_view_vibration_duration">20</integer>
|
||||
|
||||
<!-- Show mic or phone affordance on Keyguard -->
|
||||
- <bool name="config_keyguardShowLeftAffordance">false</bool>
|
||||
+ <bool name="config_keyguardShowLeftAffordance">true</bool>
|
||||
|
||||
<!-- Show camera affordance on Keyguard -->
|
||||
- <bool name="config_keyguardShowCameraAffordance">false</bool>
|
||||
+ <bool name="config_keyguardShowCameraAffordance">true</bool>
|
||||
|
||||
<!-- The length of the vibration when the notification pops open. -->
|
||||
<integer name="one_finger_pop_duration_ms">10</integer>
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,165 +0,0 @@
|
||||
From 0425dac4b2f22dc37e117b55a0fdefe91f6e2ebb Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 20 Mar 2021 10:35:14 +0000
|
||||
Subject: [PATCH 10/21] Keyguard/UI: Fix status bar / quick settings margins
|
||||
and paddings
|
||||
|
||||
Last revised on 2023/03/22, targeting T QPR2
|
||||
|
||||
The way I think SB/QS margins/paddings should work:
|
||||
- Devices with left notch: [notch_definition][status_bar_padding_start][content]...[content][status_bar_padding_end][rounded_corner_content_padding]
|
||||
- Devices with center or no notch: [rounded_corner_content_padding][status_bar_padding_start][content]...[content][status_bar_padding_end][rounded_corner_content_padding]
|
||||
Key point being:
|
||||
- SB (including keyguard) and QS should always act uniformly
|
||||
- Notch definition should only be the notch itself, without additional padding
|
||||
- Instead, these paddings should be covered by status_bar_padding_{start|end}
|
||||
As a result, below changes have been made:
|
||||
- Change keyguard_carrier_text_margin into a padding and link to status_bar_padding_start
|
||||
- Add status_bar_padding_{start|end} to quick settings header
|
||||
- Remove unnecessary margins and paddings if any
|
||||
|
||||
Change-Id: Ic91fa398813e1907297bb0892c444d96405950e7
|
||||
---
|
||||
packages/SystemUI/res/layout/combined_qs_header.xml | 2 +-
|
||||
packages/SystemUI/res/layout/keyguard_status_bar.xml | 2 +-
|
||||
packages/SystemUI/res/values-sw600dp/dimens.xml | 3 ---
|
||||
packages/SystemUI/res/values/dimens.xml | 2 +-
|
||||
packages/SystemUI/res/xml/qqs_header.xml | 4 ++--
|
||||
.../android/systemui/shade/ShadeHeaderController.kt | 10 +++++++---
|
||||
.../statusbar/phone/KeyguardStatusBarView.java | 7 -------
|
||||
7 files changed, 12 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res/layout/combined_qs_header.xml b/packages/SystemUI/res/layout/combined_qs_header.xml
|
||||
index 828a4535e656..65c8e52d00ac 100644
|
||||
--- a/packages/SystemUI/res/layout/combined_qs_header.xml
|
||||
+++ b/packages/SystemUI/res/layout/combined_qs_header.xml
|
||||
@@ -151,4 +151,4 @@
|
||||
|
||||
</FrameLayout>
|
||||
|
||||
-</com.android.systemui.util.NoRemeasureMotionLayout>
|
||||
\ No newline at end of file
|
||||
+</com.android.systemui.util.NoRemeasureMotionLayout>
|
||||
diff --git a/packages/SystemUI/res/layout/keyguard_status_bar.xml b/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
index 9135e78f3e4c..ddaea938c858 100644
|
||||
--- a/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
+++ b/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
@@ -69,7 +69,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingTop="@dimen/status_bar_padding_top"
|
||||
- android:layout_marginStart="@dimen/keyguard_carrier_text_margin"
|
||||
+ android:paddingStart="@dimen/keyguard_carrier_text_margin"
|
||||
android:layout_toStartOf="@id/system_icons_container"
|
||||
android:gravity="center_vertical"
|
||||
android:ellipsize="marquee"
|
||||
diff --git a/packages/SystemUI/res/values-sw600dp/dimens.xml b/packages/SystemUI/res/values-sw600dp/dimens.xml
|
||||
index 59becc69506c..9168a5ce1ced 100644
|
||||
--- a/packages/SystemUI/res/values-sw600dp/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values-sw600dp/dimens.xml
|
||||
@@ -28,9 +28,6 @@
|
||||
<!-- The width of user avatar when on Keyguard -->
|
||||
<dimen name="multi_user_avatar_keyguard_size">30dp</dimen>
|
||||
|
||||
- <!-- Margin on the left side of the carrier text on Keyguard -->
|
||||
- <dimen name="keyguard_carrier_text_margin">24dp</dimen>
|
||||
-
|
||||
<!-- Screen pinning request width -->
|
||||
<dimen name="screen_pinning_request_width">400dp</dimen>
|
||||
<!-- Screen pinning request bottom button circle widths -->
|
||||
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
|
||||
index e2c65f5542b7..d0a9055e1905 100644
|
||||
--- a/packages/SystemUI/res/values/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values/dimens.xml
|
||||
@@ -790,7 +790,7 @@
|
||||
<dimen name="kg_framed_avatar_size">32dp</dimen>
|
||||
|
||||
<!-- Margin on the left side of the carrier text on Keyguard -->
|
||||
- <dimen name="keyguard_carrier_text_margin">16dp</dimen>
|
||||
+ <dimen name="keyguard_carrier_text_margin">@dimen/status_bar_padding_start</dimen>
|
||||
|
||||
<!-- Additional translation (downwards) for appearing notifications when going to the full shade
|
||||
from Keyguard. -->
|
||||
diff --git a/packages/SystemUI/res/xml/qqs_header.xml b/packages/SystemUI/res/xml/qqs_header.xml
|
||||
index 00a0444a1c9d..a5c3f8e982ca 100644
|
||||
--- a/packages/SystemUI/res/xml/qqs_header.xml
|
||||
+++ b/packages/SystemUI/res/xml/qqs_header.xml
|
||||
@@ -44,7 +44,7 @@
|
||||
<Layout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="@dimen/new_qs_header_non_clickable_element_height"
|
||||
- android:layout_marginStart="8dp"
|
||||
+ android:layout_marginStart="2dp"
|
||||
app:layout_constrainedWidth="true"
|
||||
app:layout_constraintStart_toEndOf="@id/clock"
|
||||
app:layout_constraintEnd_toStartOf="@id/barrier"
|
||||
@@ -109,4 +109,4 @@
|
||||
app:layout_constraintHorizontal_bias="1"
|
||||
/>
|
||||
</Constraint>
|
||||
-</ConstraintSet>
|
||||
\ No newline at end of file
|
||||
+</ConstraintSet>
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/shade/ShadeHeaderController.kt b/packages/SystemUI/src/com/android/systemui/shade/ShadeHeaderController.kt
|
||||
index a6b88370f836..e7632971d37e 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/shade/ShadeHeaderController.kt
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/shade/ShadeHeaderController.kt
|
||||
@@ -132,6 +132,8 @@ constructor(
|
||||
|
||||
private var roundedCorners = 0
|
||||
private var cutout: DisplayCutout? = null
|
||||
+ private var statusBarPaddingStart = 0
|
||||
+ private var statusBarPaddingEnd = 0
|
||||
private var lastInsets: WindowInsets? = null
|
||||
private var textColorPrimary = Color.TRANSPARENT
|
||||
|
||||
@@ -364,14 +366,17 @@ constructor(
|
||||
val cutoutLeft = sbInsets.first
|
||||
val cutoutRight = sbInsets.second
|
||||
val hasCornerCutout: Boolean = insetsProvider.currentRotationHasCornerCutout()
|
||||
+ roundedCorners = resources.getDimensionPixelSize(R.dimen.rounded_corner_content_padding)
|
||||
+ statusBarPaddingStart = resources.getDimensionPixelSize(R.dimen.status_bar_padding_start)
|
||||
+ statusBarPaddingEnd = resources.getDimensionPixelSize(R.dimen.status_bar_padding_end)
|
||||
updateQQSPaddings()
|
||||
// Set these guides as the left/right limits for content that lives in the top row, using
|
||||
// cutoutLeft and cutoutRight
|
||||
var changes =
|
||||
combinedShadeHeadersConstraintManager.edgesGuidelinesConstraints(
|
||||
- if (view.isLayoutRtl) cutoutRight else cutoutLeft,
|
||||
+ (if (view.isLayoutRtl) cutoutRight else cutoutLeft) + statusBarPaddingStart,
|
||||
header.paddingStart,
|
||||
- if (view.isLayoutRtl) cutoutLeft else cutoutRight,
|
||||
+ (if (view.isLayoutRtl) cutoutLeft else cutoutRight) + statusBarPaddingEnd,
|
||||
header.paddingEnd
|
||||
)
|
||||
|
||||
@@ -483,7 +488,6 @@ constructor(
|
||||
}
|
||||
|
||||
private fun updateResources() {
|
||||
- roundedCorners = resources.getDimensionPixelSize(R.dimen.rounded_corner_content_padding)
|
||||
val padding = resources.getDimensionPixelSize(R.dimen.qs_panel_padding)
|
||||
header.setPadding(padding, header.paddingTop, padding, header.paddingBottom)
|
||||
updateQQSPaddings()
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java
|
||||
index 7b6fc66a208d..ab919f4c5882 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java
|
||||
@@ -164,14 +164,7 @@ public class KeyguardStatusBarView extends RelativeLayout {
|
||||
mCarrierLabel.setTextSize(TypedValue.COMPLEX_UNIT_PX,
|
||||
getResources().getDimensionPixelSize(
|
||||
com.android.internal.R.dimen.text_size_small_material));
|
||||
- lp = (MarginLayoutParams) mCarrierLabel.getLayoutParams();
|
||||
|
||||
- int marginStart = calculateMargin(
|
||||
- getResources().getDimensionPixelSize(R.dimen.keyguard_carrier_text_margin),
|
||||
- mPadding.first);
|
||||
- lp.setMarginStart(marginStart);
|
||||
-
|
||||
- mCarrierLabel.setLayoutParams(lp);
|
||||
updateKeyguardStatusBarHeight();
|
||||
}
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,260 @@
|
||||
From 205d654cd20275c36b5d0826bfe8648ab80118ea Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 2 Nov 2019 07:52:36 +0000
|
||||
Subject: [PATCH 11/18] Keyguard: Revert date and clock to Lollipop style
|
||||
|
||||
Also ported dynamic date format based on alarm presence from Oreo
|
||||
|
||||
Change-Id: I0f61c641ffb2a3e1e6b4da738792ee4ac1d77434
|
||||
---
|
||||
.../layout/keyguard_clock_switch.xml | 3 ---
|
||||
.../layout/keyguard_status_view.xml | 1 -
|
||||
.../res-keyguard/values-h560dp/dimens.xml | 2 +-
|
||||
.../res-keyguard/values-h650dp/dimens.xml | 2 +-
|
||||
.../SystemUI/res-keyguard/values/dimens.xml | 6 ++---
|
||||
.../SystemUI/res-keyguard/values/strings.xml | 4 ++--
|
||||
.../SystemUI/res-keyguard/values/styles.xml | 18 ++++-----------
|
||||
.../res/layout/keyguard_status_bar.xml | 2 +-
|
||||
.../android/keyguard/KeyguardSliceView.java | 2 +-
|
||||
.../keyguard/KeyguardSliceProvider.java | 22 +++++++++++--------
|
||||
10 files changed, 26 insertions(+), 36 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res-keyguard/layout/keyguard_clock_switch.xml b/packages/SystemUI/res-keyguard/layout/keyguard_clock_switch.xml
|
||||
index bf2963cd0b7..5fb06f38bd4 100644
|
||||
--- a/packages/SystemUI/res-keyguard/layout/keyguard_clock_switch.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/layout/keyguard_clock_switch.xml
|
||||
@@ -36,8 +36,6 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:gravity="center_horizontal"
|
||||
- android:paddingBottom="@dimen/title_clock_padding"
|
||||
- android:letterSpacing="0.02"
|
||||
android:textColor="?attr/wallpaperTextColor"
|
||||
android:singleLine="true"
|
||||
style="@style/widget_big"
|
||||
@@ -51,7 +49,6 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="bottom|center_horizontal"
|
||||
android:gravity="center_horizontal"
|
||||
- android:letterSpacing="0.03"
|
||||
android:textColor="?attr/wallpaperTextColor"
|
||||
android:singleLine="true"
|
||||
style="@style/widget_title_bold"
|
||||
diff --git a/packages/SystemUI/res-keyguard/layout/keyguard_status_view.xml b/packages/SystemUI/res-keyguard/layout/keyguard_status_view.xml
|
||||
index 10cd3cba713..9845a02399b 100644
|
||||
--- a/packages/SystemUI/res-keyguard/layout/keyguard_status_view.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/layout/keyguard_status_view.xml
|
||||
@@ -67,7 +67,6 @@
|
||||
android:layout_centerHorizontal="true"
|
||||
android:textColor="?attr/wallpaperTextColorSecondary"
|
||||
android:textSize="@dimen/widget_label_font_size"
|
||||
- android:letterSpacing="0.05"
|
||||
android:ellipsize="marquee"
|
||||
android:singleLine="true" />
|
||||
<com.android.systemui.statusbar.phone.NotificationIconContainer
|
||||
diff --git a/packages/SystemUI/res-keyguard/values-h560dp/dimens.xml b/packages/SystemUI/res-keyguard/values-h560dp/dimens.xml
|
||||
index 669f8fb642d..345b3d9c707 100644
|
||||
--- a/packages/SystemUI/res-keyguard/values-h560dp/dimens.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/values-h560dp/dimens.xml
|
||||
@@ -16,5 +16,5 @@
|
||||
-->
|
||||
|
||||
<resources>
|
||||
- <dimen name="widget_big_font_size">54dp</dimen>
|
||||
+ <dimen name="widget_big_font_size">88dp</dimen>
|
||||
</resources>
|
||||
diff --git a/packages/SystemUI/res-keyguard/values-h650dp/dimens.xml b/packages/SystemUI/res-keyguard/values-h650dp/dimens.xml
|
||||
index 669f8fb642d..345b3d9c707 100644
|
||||
--- a/packages/SystemUI/res-keyguard/values-h650dp/dimens.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/values-h650dp/dimens.xml
|
||||
@@ -16,5 +16,5 @@
|
||||
-->
|
||||
|
||||
<resources>
|
||||
- <dimen name="widget_big_font_size">54dp</dimen>
|
||||
+ <dimen name="widget_big_font_size">88dp</dimen>
|
||||
</resources>
|
||||
diff --git a/packages/SystemUI/res-keyguard/values/dimens.xml b/packages/SystemUI/res-keyguard/values/dimens.xml
|
||||
index f9389ce24d9..cf3a8d79712 100644
|
||||
--- a/packages/SystemUI/res-keyguard/values/dimens.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/values/dimens.xml
|
||||
@@ -42,13 +42,13 @@
|
||||
<dimen name="eca_overlap">-10dip</dimen>
|
||||
|
||||
<!-- Slice header -->
|
||||
- <dimen name="widget_title_font_size">24dp</dimen>
|
||||
+ <dimen name="widget_title_font_size">16dp</dimen>
|
||||
<dimen name="header_subtitle_padding">12dp</dimen>
|
||||
<dimen name="header_icon_size">16dp</dimen>
|
||||
<!-- Slice subtitle -->
|
||||
- <dimen name="widget_label_font_size">18dp</dimen>
|
||||
+ <dimen name="widget_label_font_size">16dp</dimen>
|
||||
<!-- Clock without header -->
|
||||
- <dimen name="widget_big_font_size">54dp</dimen>
|
||||
+ <dimen name="widget_big_font_size">88dp</dimen>
|
||||
<dimen name="bottom_text_spacing_digital">0dp</dimen>
|
||||
<dimen name="title_clock_padding">4dp</dimen>
|
||||
<!-- Clock with header -->
|
||||
diff --git a/packages/SystemUI/res-keyguard/values/strings.xml b/packages/SystemUI/res-keyguard/values/strings.xml
|
||||
index 4b6621379b4..3f7b909bf8e 100644
|
||||
--- a/packages/SystemUI/res-keyguard/values/strings.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/values/strings.xml
|
||||
@@ -115,9 +115,9 @@
|
||||
<string name="keyguard_carrier_name_with_sim_locked_template" translatable="false"><xliff:g id="carrier">%s</xliff:g> (<xliff:g id="message">%s</xliff:g>)</string>
|
||||
|
||||
<!-- Time format strings for fall-back clock widget -->
|
||||
- <string name="keyguard_widget_12_hours_format" translatable="false">h:mm</string>
|
||||
+ <string name="keyguard_widget_12_hours_format" translatable="false">hh:mm</string>
|
||||
<!-- Time format strings for fall-back clock widget -->
|
||||
- <string name="keyguard_widget_24_hours_format" translatable="false">kk:mm</string>
|
||||
+ <string name="keyguard_widget_24_hours_format" translatable="false">HH:mm</string>
|
||||
<!-- The character used in keyguard_widget_12_hours_format and keyguard_widget_24_hours_format
|
||||
to represent a ":". -->
|
||||
<string name="keyguard_fancy_colon" translatable="false"></string>
|
||||
diff --git a/packages/SystemUI/res-keyguard/values/styles.xml b/packages/SystemUI/res-keyguard/values/styles.xml
|
||||
index 401f3e3e068..6ad077aaa5a 100644
|
||||
--- a/packages/SystemUI/res-keyguard/values/styles.xml
|
||||
+++ b/packages/SystemUI/res-keyguard/values/styles.xml
|
||||
@@ -65,29 +65,23 @@
|
||||
<style name="widget_big">
|
||||
<item name="android:textSize">@dimen/widget_big_font_size</item>
|
||||
<item name="android:paddingBottom">@dimen/bottom_text_spacing_digital</item>
|
||||
- <item name="android:fontFamily">@*android:string/config_headlineFontFamily</item>
|
||||
+ <item name="android:fontFamily">sans-serif-thin</item>
|
||||
<item name="android:fontFeatureSettings">@*android:string/config_headlineFontFeatureSettings</item>
|
||||
<item name="android:ellipsize">none</item>
|
||||
- <item name="android:shadowColor">@color/keyguard_shadow_color</item>
|
||||
- <item name="android:shadowRadius">?attr/shadowRadius</item>
|
||||
</style>
|
||||
<style name="widget_title_bold">
|
||||
<item name="android:textStyle">bold</item>
|
||||
<item name="android:textSize">@dimen/widget_title_font_size</item>
|
||||
<item name="android:paddingBottom">@dimen/widget_vertical_padding_clock</item>
|
||||
- <item name="android:fontFamily">@*android:string/config_headlineFontFamily</item>
|
||||
+ <item name="android:fontFamily">sans-serif</item>
|
||||
<item name="android:ellipsize">none</item>
|
||||
- <item name="android:shadowColor">@color/keyguard_shadow_color</item>
|
||||
- <item name="android:shadowRadius">?attr/shadowRadius</item>
|
||||
</style>
|
||||
<style name="widget_small_bold">
|
||||
<item name="android:textStyle">bold</item>
|
||||
<item name="android:textSize">@dimen/widget_small_font_size</item>
|
||||
<item name="android:paddingBottom">@dimen/bottom_text_spacing_digital</item>
|
||||
- <item name="android:fontFamily">@*android:string/config_headlineFontFamily</item>
|
||||
+ <item name="android:fontFamily">sans-serif</item>
|
||||
<item name="android:ellipsize">none</item>
|
||||
- <item name="android:shadowColor">@color/keyguard_shadow_color</item>
|
||||
- <item name="android:shadowRadius">?attr/shadowRadius</item>
|
||||
</style>
|
||||
|
||||
<style name="BouncerSecurityContainer">
|
||||
@@ -119,9 +113,7 @@
|
||||
<item name="android:gravity">center</item>
|
||||
<item name="android:ellipsize">end</item>
|
||||
<item name="android:maxLines">2</item>
|
||||
- <item name="android:fontFamily">@*android:string/config_headlineFontFamily</item>
|
||||
- <item name="android:shadowColor">@color/keyguard_shadow_color</item>
|
||||
- <item name="android:shadowRadius">?attr/shadowRadius</item>
|
||||
+ <item name="android:fontFamily">sans-serif</item>
|
||||
</style>
|
||||
|
||||
<style name="TextAppearance.Keyguard.Secondary">
|
||||
@@ -135,8 +127,6 @@
|
||||
<item name="android:textSize">14sp</item>
|
||||
<item name="android:maxLines">1</item>
|
||||
<item name="android:textColor">?attr/wallpaperTextColor</item>
|
||||
- <item name="android:shadowColor">@color/keyguard_shadow_color</item>
|
||||
- <item name="android:shadowRadius">?attr/shadowRadius</item>
|
||||
</style>
|
||||
|
||||
</resources>
|
||||
diff --git a/packages/SystemUI/res/layout/keyguard_status_bar.xml b/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
index 2b22cc196db..58343800c2e 100644
|
||||
--- a/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
+++ b/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
@@ -73,7 +73,7 @@
|
||||
android:gravity="center_vertical"
|
||||
android:ellipsize="marquee"
|
||||
android:textDirection="locale"
|
||||
- android:textAppearance="@style/TextAppearance.StatusBar.Clock"
|
||||
+ android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:textColor="?attr/wallpaperTextColorSecondary"
|
||||
android:singleLine="true"
|
||||
systemui:showMissingSim="true"
|
||||
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java b/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
|
||||
index f639c880c97..5c42937eb6a 100644
|
||||
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
|
||||
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
|
||||
@@ -502,7 +502,7 @@ public class KeyguardSliceView extends LinearLayout implements View.OnClickListe
|
||||
for (int i = 0; i < childCount; i++) {
|
||||
View child = getChildAt(i);
|
||||
if (child instanceof KeyguardSliceTextView) {
|
||||
- ((KeyguardSliceTextView) child).setMaxWidth(width / 3);
|
||||
+ ((KeyguardSliceTextView) child).setMaxWidth(width);
|
||||
}
|
||||
}
|
||||
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardSliceProvider.java b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardSliceProvider.java
|
||||
index 3a37c0fd463..70b7e5354e2 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardSliceProvider.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardSliceProvider.java
|
||||
@@ -95,7 +95,7 @@ public class KeyguardSliceProvider extends SliceProvider implements
|
||||
* Only show alarms that will ring within N hours.
|
||||
*/
|
||||
@VisibleForTesting
|
||||
- static final int ALARM_VISIBILITY_HOURS = 12;
|
||||
+ static final int ALARM_VISIBILITY_HOURS = 24;
|
||||
|
||||
private static final Object sInstanceLock = new Object();
|
||||
private static KeyguardSliceProvider sInstance;
|
||||
@@ -304,7 +304,10 @@ public class KeyguardSliceProvider extends SliceProvider implements
|
||||
if (oldInstance != null) {
|
||||
oldInstance.onDestroy();
|
||||
}
|
||||
- mDatePattern = getContext().getString(R.string.system_ui_aod_date_pattern);
|
||||
+ boolean isNextAlarmPresent = withinNHoursLocked(mNextAlarmInfo, ALARM_VISIBILITY_HOURS);
|
||||
+ mDatePattern = getContext().getString(isNextAlarmPresent
|
||||
+ ? R.string.abbrev_wday_month_day_no_year_alarm
|
||||
+ : R.string.abbrev_wday_month_day_no_year);
|
||||
mPendingIntent = PendingIntent.getActivity(getContext(), 0,
|
||||
new Intent(getContext(), KeyguardSliceProvider.class), 0);
|
||||
mMediaManager.addCallback(this);
|
||||
@@ -355,14 +358,17 @@ public class KeyguardSliceProvider extends SliceProvider implements
|
||||
synchronized (this) {
|
||||
if (withinNHoursLocked(mNextAlarmInfo, ALARM_VISIBILITY_HOURS)) {
|
||||
String pattern = android.text.format.DateFormat.is24HourFormat(getContext(),
|
||||
- ActivityManager.getCurrentUser()) ? "HH:mm" : "h:mm";
|
||||
+ ActivityManager.getCurrentUser()) ? "E HH:mm" : "E hh:mm";
|
||||
mNextAlarm = android.text.format.DateFormat.format(pattern,
|
||||
mNextAlarmInfo.getTriggerTime()).toString();
|
||||
+ mDatePattern = getContext().getString(R.string.abbrev_wday_month_day_no_year_alarm);
|
||||
} else {
|
||||
mNextAlarm = "";
|
||||
+ mDatePattern = getContext().getString(R.string.abbrev_wday_month_day_no_year);
|
||||
}
|
||||
}
|
||||
notifyChange();
|
||||
+ updateClockLocked();
|
||||
}
|
||||
|
||||
private boolean withinNHoursLocked(AlarmManager.AlarmClockInfo alarmClockInfo, int hours) {
|
||||
@@ -411,12 +417,10 @@ public class KeyguardSliceProvider extends SliceProvider implements
|
||||
}
|
||||
|
||||
protected String getFormattedDateLocked() {
|
||||
- if (mDateFormat == null) {
|
||||
- final Locale l = Locale.getDefault();
|
||||
- DateFormat format = DateFormat.getInstanceForSkeleton(mDatePattern, l);
|
||||
- format.setContext(DisplayContext.CAPITALIZATION_FOR_STANDALONE);
|
||||
- mDateFormat = format;
|
||||
- }
|
||||
+ final Locale l = Locale.getDefault();
|
||||
+ DateFormat format = DateFormat.getInstanceForSkeleton(mDatePattern, l);
|
||||
+ format.setContext(DisplayContext.CAPITALIZATION_FOR_STANDALONE);
|
||||
+ mDateFormat = format;
|
||||
mCurrentTime.setTime(System.currentTimeMillis());
|
||||
return mDateFormat.format(mCurrentTime);
|
||||
}
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,44 +0,0 @@
|
||||
From 4803ddab6f362587e769b2aa5d60a041345d26af Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 31 May 2022 00:00:08 +0000
|
||||
Subject: [PATCH 11/21] Revert "SystemUI: Add left padding for keyguard slices"
|
||||
|
||||
This reverts commit 4a7a4426944e28e70a3eca6a696ff6c7599fb896.
|
||||
---
|
||||
.../src/com/android/keyguard/KeyguardSliceView.java | 9 +++------
|
||||
1 file changed, 3 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java b/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
|
||||
index 31d22eb38a24..65a71664e245 100644
|
||||
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
|
||||
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardSliceView.java
|
||||
@@ -49,7 +49,6 @@ import com.android.internal.graphics.ColorUtils;
|
||||
import com.android.settingslib.Utils;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.animation.Interpolators;
|
||||
-import com.android.systemui.keyguard.KeyguardSliceProvider;
|
||||
import com.android.systemui.util.wakelock.KeepAwakeAnimationListener;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
@@ -446,15 +445,13 @@ public class KeyguardSliceView extends LinearLayout {
|
||||
|
||||
private void updatePadding() {
|
||||
boolean hasText = !TextUtils.isEmpty(getText());
|
||||
- boolean isDate = Uri.parse(KeyguardSliceProvider.KEYGUARD_DATE_URI).equals(getTag());
|
||||
int padding = (int) getContext().getResources()
|
||||
.getDimension(R.dimen.widget_horizontal_padding) / 2;
|
||||
- int iconPadding = (int) mContext.getResources()
|
||||
- .getDimension(R.dimen.widget_icon_padding);
|
||||
// orientation is vertical, so add padding to top & bottom
|
||||
- setPadding(!isDate ? iconPadding : 0, padding, 0, hasText ? padding : 0);
|
||||
+ setPadding(0, padding, 0, hasText ? padding : 0);
|
||||
|
||||
- setCompoundDrawablePadding(iconPadding);
|
||||
+ setCompoundDrawablePadding((int) mContext.getResources()
|
||||
+ .getDimension(R.dimen.widget_icon_padding));
|
||||
}
|
||||
|
||||
@Override
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,54 @@
|
||||
From 535b165f24d4166c515d2ad61ec65874d786fef5 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 2 Nov 2019 11:11:07 +0000
|
||||
Subject: [PATCH 12/18] Keyguard: Fix clock position
|
||||
|
||||
New method - way easier than what was done on Pie
|
||||
Still not perfect:
|
||||
- Notification padding has to be taken care of in some other way - directly altering stackScrollerPadding causes visual glitches
|
||||
|
||||
Change-Id: Ia5cebd04c2cb4b324c04019afdf045d5489cf2b8
|
||||
---
|
||||
.../statusbar/phone/KeyguardClockPositionAlgorithm.java | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardClockPositionAlgorithm.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardClockPositionAlgorithm.java
|
||||
index a3f14ba28dc..d1982ae5ad2 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardClockPositionAlgorithm.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardClockPositionAlgorithm.java
|
||||
@@ -177,7 +177,8 @@ public class KeyguardClockPositionAlgorithm {
|
||||
}
|
||||
|
||||
private int getMaxClockY() {
|
||||
- return mHeight / 2 - mKeyguardStatusHeight - mClockNotificationsMargin;
|
||||
+ // Align the center of the clock at 1/3 of the screen
|
||||
+ return mHeight / 3 - mKeyguardStatusHeight / 2;
|
||||
}
|
||||
|
||||
private int getPreferredClockY() {
|
||||
@@ -214,12 +215,11 @@ public class KeyguardClockPositionAlgorithm {
|
||||
}
|
||||
|
||||
private int getClockY(float panelExpansion) {
|
||||
- // Dark: Align the bottom edge of the clock at about half of the screen:
|
||||
float clockYDark = (mHasCustomClock ? getPreferredClockY() : getMaxClockY())
|
||||
+ burnInPreventionOffsetY();
|
||||
clockYDark = MathUtils.max(0, clockYDark);
|
||||
|
||||
- float clockYRegular = getExpandedPreferredClockY();
|
||||
+ float clockYRegular = getMaxClockY();
|
||||
float clockYBouncer = -mKeyguardStatusHeight;
|
||||
|
||||
// Move clock up while collapsing the shade
|
||||
@@ -240,7 +240,7 @@ public class KeyguardClockPositionAlgorithm {
|
||||
* @return Alpha from 0 to 1.
|
||||
*/
|
||||
private float getClockAlpha(int y) {
|
||||
- float alphaKeyguard = Math.max(0, y / Math.max(1f, getClockY(1f)));
|
||||
+ float alphaKeyguard = Math.max(0, y / Math.max(1f, getMaxClockY()));
|
||||
alphaKeyguard = Interpolators.ACCELERATE.getInterpolation(alphaKeyguard);
|
||||
return MathUtils.lerp(alphaKeyguard, 1f, mDarkAmount);
|
||||
}
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,273 +0,0 @@
|
||||
From f5ad15c1785d0a458bc2be47f0ef2a8d5283ae86 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 5 Sep 2021 01:20:12 +0000
|
||||
Subject: [PATCH 12/21] Revert "Update RAT icons to match Silk design"
|
||||
|
||||
This reverts commit 084c13c8216f6a899cd3eda04fc1d7acff3d1248.
|
||||
---
|
||||
.../res/drawable/ic_3g_mobiledata.xml | 19 ++++++-----
|
||||
.../res/drawable/ic_4g_mobiledata.xml | 19 ++++++-----
|
||||
.../res/drawable/ic_5g_mobiledata.xml | 20 +++++------
|
||||
.../res/drawable/ic_5g_uc_mobiledata.xml | 33 -------------------
|
||||
.../res/drawable/ic_5g_uw_mobiledata.xml | 33 -------------------
|
||||
.../res/drawable/ic_carrier_wifi.xml | 15 +++++----
|
||||
.../res/drawable/ic_lte_mobiledata.xml | 23 +++++++------
|
||||
.../res/drawable/stat_sys_roaming_large.xml | 10 +++---
|
||||
8 files changed, 59 insertions(+), 113 deletions(-)
|
||||
delete mode 100644 packages/SettingsLib/res/drawable/ic_5g_uc_mobiledata.xml
|
||||
delete mode 100644 packages/SettingsLib/res/drawable/ic_5g_uw_mobiledata.xml
|
||||
|
||||
diff --git a/packages/SettingsLib/res/drawable/ic_3g_mobiledata.xml b/packages/SettingsLib/res/drawable/ic_3g_mobiledata.xml
|
||||
index 413a3873f438..0c942bdf993c 100644
|
||||
--- a/packages/SettingsLib/res/drawable/ic_3g_mobiledata.xml
|
||||
+++ b/packages/SettingsLib/res/drawable/ic_3g_mobiledata.xml
|
||||
@@ -14,14 +14,17 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
- android:width="21dp"
|
||||
- android:height="16dp"
|
||||
- android:viewportWidth="21.0"
|
||||
- android:viewportHeight="16.0">
|
||||
+ android:width="12.35dp"
|
||||
+ android:height="15dp"
|
||||
+ android:viewportWidth="14"
|
||||
+ android:viewportHeight="17">
|
||||
+
|
||||
+ <path
|
||||
+ android:fillColor="#FFFFFFFF"
|
||||
+ android:pathData="M1.9,7.88h0.77c0.5,0,0.88-0.15,1.15-0.46s0.4-0.72,0.4-1.25c0-1.17-0.45-1.75-1.35-1.75c-0.43,0-0.77,0.16-1.02,0.47 S1.49,5.62,1.49,6.13h-1.2c0-0.8,0.24-1.46,0.73-1.97s1.11-0.78,1.86-0.78c0.78,0,1.41,0.25,1.87,0.73S5.43,5.31,5.43,6.2 c0,0.46-0.12,0.89-0.36,1.29S4.52,8.18,4.14,8.37c0.94,0.35,1.41,1.12,1.41,2.33c0,0.89-0.25,1.6-0.74,2.12 c-0.49,0.53-1.14,0.79-1.94,0.79c-0.79,0-1.43-0.25-1.91-0.75c-0.49-0.5-0.73-1.17-0.73-2.01h1.21c0,0.53,0.13,0.95,0.38,1.26 c0.26,0.31,0.6,0.47,1.05,0.47c0.45,0,0.81-0.15,1.08-0.46s0.4-0.77,0.4-1.39c0-1.21-0.57-1.81-1.72-1.81H1.9V7.88z" />
|
||||
<path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M5.29,13.22c-0.57,0 -1.09,-0.11 -1.57,-0.34c-0.47,-0.22 -0.85,-0.54 -1.16,-0.95C2.25,11.52 2.07,11.01 2,10.42l1.47,-0.34c0.07,0.51 0.27,0.92 0.59,1.23c0.32,0.31 0.73,0.46 1.23,0.46c0.52,0 0.94,-0.15 1.26,-0.46c0.33,-0.31 0.49,-0.71 0.49,-1.22c0,-0.51 -0.18,-0.92 -0.53,-1.22c-0.35,-0.31 -0.8,-0.46 -1.36,-0.46H4.37V7.06h0.73c0.47,0 0.86,-0.13 1.18,-0.38c0.32,-0.26 0.48,-0.63 0.48,-1.11c0,-0.42 -0.14,-0.77 -0.41,-1.04C6.08,4.27 5.7,4.14 5.21,4.14c-0.43,0 -0.79,0.13 -1.08,0.38C3.85,4.76 3.67,5.08 3.6,5.48L2.17,5.3C2.23,4.81 2.4,4.38 2.67,4c0.27,-0.38 0.62,-0.69 1.05,-0.91c0.44,-0.22 0.94,-0.34 1.5,-0.34c0.62,0 1.15,0.12 1.6,0.35c0.45,0.23 0.79,0.55 1.04,0.95C8.1,4.46 8.23,4.9 8.23,5.4C8.23,6 8.1,6.48 7.84,6.81C7.58,7.14 7.29,7.4 6.97,7.6v0.08c0.46,0.2 0.84,0.5 1.13,0.91c0.3,0.4 0.45,0.93 0.45,1.58c0,0.58 -0.14,1.1 -0.42,1.55c-0.27,0.46 -0.65,0.82 -1.15,1.09C6.5,13.09 5.93,13.22 5.29,13.22z"/>
|
||||
+ android:fillColor="#FFFFFFFF"
|
||||
+ android:pathData="M13.77,12.24l-0.22,0.27c-0.63,0.73-1.55,1.1-2.76,1.1c-1.08,0-1.92-0.36-2.53-1.07c-0.61-0.71-0.93-1.72-0.94-3.02V7.56 c0-1.39,0.28-2.44,0.84-3.13s1.39-1.04,2.51-1.04c0.95,0,1.69,0.26,2.23,0.79s0.83,1.28,0.89,2.26h-1.25 C12.47,5.82,12.3,5.33,12,4.98s-0.74-0.52-1.34-0.52c-0.72,0-1.24,0.23-1.57,0.7S8.59,6.37,8.58,7.4v2.03c0,1,0.19,1.77,0.57,2.31 c0.38,0.54,0.93,0.8,1.65,0.8c0.67,0,1.19-0.16,1.54-0.49l0.18-0.17V9.59H10.7V8.52h3.07V12.24z" />
|
||||
<path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M14.44,13.22c-0.88,0 -1.66,-0.21 -2.34,-0.64c-0.67,-0.44 -1.2,-1.05 -1.6,-1.83c-0.38,-0.79 -0.57,-1.71 -0.57,-2.76c0,-1.05 0.21,-1.96 0.62,-2.74c0.41,-0.79 0.97,-1.4 1.67,-1.83c0.7,-0.44 1.5,-0.66 2.39,-0.66c1.09,0 2.01,0.25 2.74,0.76c0.75,0.5 1.22,1.21 1.41,2.11L17.3,6.01c-0.17,-0.56 -0.48,-1 -0.94,-1.32c-0.45,-0.33 -1.03,-0.49 -1.75,-0.49c-0.57,0 -1.09,0.14 -1.57,0.43c-0.48,0.29 -0.85,0.71 -1.13,1.27s-0.42,1.25 -0.42,2.07c0,0.81 0.14,1.5 0.41,2.07c0.28,0.56 0.65,0.98 1.11,1.27c0.47,0.29 0.98,0.43 1.54,0.43c0.57,0 1.06,-0.11 1.47,-0.34c0.42,-0.23 0.75,-0.55 0.99,-0.94c0.25,-0.4 0.41,-0.85 0.46,-1.36h-2.88V7.79h4.37c0,0.87 0,1.74 0,2.6c0,0.87 0,1.74 0,2.6h-1.41v-1.4h-0.08c-0.28,0.49 -0.67,0.88 -1.18,1.18C15.78,13.07 15.17,13.22 14.44,13.22z"/>
|
||||
+ android:pathData="M 0 0 H 14 V 17 H 0 V 0 Z" />
|
||||
</vector>
|
||||
diff --git a/packages/SettingsLib/res/drawable/ic_4g_mobiledata.xml b/packages/SettingsLib/res/drawable/ic_4g_mobiledata.xml
|
||||
index 1de7d78ff5f2..535f3589ea6b 100644
|
||||
--- a/packages/SettingsLib/res/drawable/ic_4g_mobiledata.xml
|
||||
+++ b/packages/SettingsLib/res/drawable/ic_4g_mobiledata.xml
|
||||
@@ -14,14 +14,17 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
- android:width="22dp"
|
||||
- android:height="16dp"
|
||||
- android:viewportWidth="22.0"
|
||||
- android:viewportHeight="16.0">
|
||||
+ android:width="12.35dp"
|
||||
+ android:height="15dp"
|
||||
+ android:viewportWidth="14"
|
||||
+ android:viewportHeight="17">
|
||||
+
|
||||
+ <path
|
||||
+ android:fillColor="#FFFFFFFF"
|
||||
+ android:pathData="M5.07,10.13h1.11v1.03H5.07v2.31H3.86v-2.31H0.1v-0.75l3.7-6.9h1.27V10.13z M1.44,10.13h2.42V5.4L1.44,10.13z" />
|
||||
<path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M2,10.98V9.81l4.28,-6.83h1.6v6.59h1.19v1.41H7.88V13H6.4v-2.02H2zM3.68,9.57H6.4V5.33H6.31L3.68,9.57z"/>
|
||||
+ android:fillColor="#FFFFFFFF"
|
||||
+ android:pathData="M13.9,12.24l-0.22,0.27c-0.63,0.73-1.55,1.1-2.76,1.1c-1.08,0-1.92-0.36-2.53-1.07c-0.61-0.71-0.93-1.72-0.94-3.02V7.56 c0-1.39,0.28-2.44,0.84-3.13s1.39-1.04,2.51-1.04c0.95,0,1.69,0.26,2.23,0.79s0.83,1.28,0.89,2.26h-1.25 c-0.05-0.62-0.22-1.1-0.52-1.45s-0.74-0.52-1.34-0.52c-0.72,0-1.24,0.23-1.57,0.7S8.72,6.37,8.71,7.4v2.03 c0,1,0.19,1.77,0.57,2.31c0.38,0.54,0.93,0.8,1.65,0.8c0.67,0,1.19-0.16,1.54-0.49l0.18-0.17V9.59h-1.82V8.52h3.07V12.24z" />
|
||||
<path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M15,13.22c-0.88,0 -1.66,-0.21 -2.34,-0.64c-0.67,-0.44 -1.2,-1.05 -1.6,-1.83c-0.38,-0.79 -0.57,-1.71 -0.57,-2.76c0,-1.05 0.21,-1.96 0.62,-2.74c0.41,-0.79 0.97,-1.4 1.67,-1.83c0.7,-0.44 1.5,-0.66 2.39,-0.66c1.09,0 2.01,0.25 2.74,0.76c0.75,0.5 1.22,1.21 1.41,2.11l-1.47,0.39c-0.17,-0.56 -0.48,-1 -0.94,-1.32c-0.45,-0.33 -1.03,-0.49 -1.75,-0.49c-0.57,0 -1.09,0.14 -1.57,0.43c-0.48,0.29 -0.85,0.71 -1.13,1.27c-0.28,0.56 -0.42,1.25 -0.42,2.07c0,0.81 0.14,1.5 0.41,2.07c0.28,0.56 0.65,0.98 1.11,1.27c0.47,0.29 0.98,0.43 1.54,0.43c0.57,0 1.06,-0.11 1.47,-0.34c0.42,-0.23 0.75,-0.55 0.99,-0.94c0.25,-0.4 0.41,-0.85 0.46,-1.36h-2.88V7.79h4.37c0,0.87 0,1.74 0,2.6c0,0.87 0,1.74 0,2.6h-1.41v-1.4h-0.08c-0.28,0.49 -0.67,0.88 -1.18,1.18C16.34,13.07 15.73,13.22 15,13.22z"/>
|
||||
+ android:pathData="M 0 0 H 14 V 17 H 0 V 0 Z" />
|
||||
</vector>
|
||||
diff --git a/packages/SettingsLib/res/drawable/ic_5g_mobiledata.xml b/packages/SettingsLib/res/drawable/ic_5g_mobiledata.xml
|
||||
index d961c6c2266f..2aa6e57f6f82 100644
|
||||
--- a/packages/SettingsLib/res/drawable/ic_5g_mobiledata.xml
|
||||
+++ b/packages/SettingsLib/res/drawable/ic_5g_mobiledata.xml
|
||||
@@ -14,14 +14,14 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
- android:width="21dp"
|
||||
- android:height="16dp"
|
||||
- android:viewportWidth="21.0"
|
||||
- android:viewportHeight="16.0">
|
||||
- <path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M5.3,13.22c-0.57,0 -1.1,-0.11 -1.58,-0.34c-0.48,-0.22 -0.87,-0.55 -1.18,-0.98C2.24,11.47 2.06,10.93 2,10.3l1.48,-0.2c0.07,0.5 0.25,0.92 0.56,1.25c0.32,0.32 0.74,0.48 1.26,0.48c0.57,0 1.02,-0.18 1.34,-0.55c0.33,-0.37 0.49,-0.87 0.49,-1.48c0,-0.61 -0.16,-1.09 -0.49,-1.46C6.32,7.96 5.88,7.78 5.32,7.78C5,7.78 4.7,7.85 4.42,8C4.15,8.14 3.93,8.33 3.76,8.56L2.28,7.92l0.6,-4.94h5.26v1.36H4.1L3.72,7.02l0.08,0.03C4,6.87 4.25,6.73 4.55,6.62c0.3,-0.12 0.63,-0.18 1.01,-0.18c0.6,0 1.13,0.14 1.6,0.41C7.62,7.11 7.98,7.5 8.24,8c0.27,0.5 0.41,1.1 0.41,1.79c0,0.66 -0.14,1.26 -0.43,1.78c-0.28,0.51 -0.67,0.92 -1.18,1.22C6.55,13.08 5.97,13.22 5.3,13.22z"/>
|
||||
- <path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M14.51,13.22c-0.88,0 -1.66,-0.21 -2.34,-0.64c-0.67,-0.44 -1.2,-1.05 -1.6,-1.83C10.19,9.95 10,9.03 10,7.99c0,-1.05 0.21,-1.96 0.62,-2.74c0.41,-0.79 0.97,-1.4 1.67,-1.83c0.7,-0.44 1.5,-0.66 2.39,-0.66c1.09,0 2.01,0.25 2.74,0.76c0.75,0.5 1.22,1.21 1.41,2.11l-1.47,0.39c-0.17,-0.56 -0.48,-1 -0.94,-1.32c-0.45,-0.33 -1.03,-0.49 -1.75,-0.49c-0.57,0 -1.09,0.14 -1.57,0.43c-0.48,0.29 -0.85,0.71 -1.13,1.27s-0.42,1.25 -0.42,2.07c0,0.81 0.14,1.5 0.41,2.07c0.28,0.56 0.65,0.98 1.11,1.27c0.47,0.29 0.98,0.43 1.54,0.43c0.57,0 1.06,-0.11 1.47,-0.34c0.42,-0.23 0.75,-0.55 0.99,-0.94c0.25,-0.4 0.41,-0.85 0.46,-1.36h-2.88V7.79h4.37c0,0.87 0,1.74 0,2.6c0,0.87 0,1.74 0,2.6H17.6v-1.4h-0.08c-0.28,0.49 -0.67,0.88 -1.18,1.18C15.85,13.07 15.24,13.22 14.51,13.22z"/>
|
||||
+ android:width="14dp"
|
||||
+ android:height="17dp"
|
||||
+ android:viewportWidth="14"
|
||||
+ android:viewportHeight="17">
|
||||
+ <path
|
||||
+ android:fillColor="#FF000000"
|
||||
+ android:pathData="M13.9,12.24l-0.22,0.27c-0.63,0.73 -1.55,1.1 -2.76,1.1c-1.08,0 -1.92,-0.36 -2.53,-1.07s-0.93,-1.72 -0.94,-3.02V7.56c0,-1.39 0.28,-2.44 0.84,-3.13s1.39,-1.04 2.51,-1.04c0.95,0 1.69,0.26 2.23,0.79s0.83,1.28 0.89,2.26h-1.25c-0.05,-0.62 -0.22,-1.1 -0.52,-1.45s-0.74,-0.52 -1.34,-0.52c-0.72,0 -1.24,0.23 -1.57,0.7S8.72,6.37 8.71,7.4v2.03c0,1 0.19,1.77 0.57,2.31c0.38,0.54 0.93,0.8 1.65,0.8c0.67,0 1.19,-0.16 1.54,-0.49l0.18,-0.17V9.59h-1.82V8.52h3.07V12.24z"/>
|
||||
+ <path
|
||||
+ android:fillColor="#FF000000"
|
||||
+ android:pathData="M1.15,8.47l0.43,-4.96h4.33v1.17H2.6L2.37,7.39C2.78,7.1 3.22,6.96 3.69,6.96c0.77,0 1.38,0.3 1.83,0.9s0.66,1.41 0.66,2.43c0,1.03 -0.24,1.84 -0.72,2.43S4.32,13.6 3.48,13.6c-0.75,0 -1.36,-0.24 -1.83,-0.73s-0.74,-1.16 -0.81,-2.02h1.13c0.07,0.57 0.23,1 0.49,1.29c0.26,0.29 0.59,0.43 1.01,0.43c0.47,0 0.84,-0.2 1.1,-0.61c0.26,-0.41 0.4,-0.96 0.4,-1.65c0,-0.65 -0.14,-1.18 -0.43,-1.59S3.88,8.09 3.4,8.09c-0.4,0 -0.72,0.1 -0.96,0.31L2.11,8.73L1.15,8.47z"/>
|
||||
</vector>
|
||||
diff --git a/packages/SettingsLib/res/drawable/ic_5g_uc_mobiledata.xml b/packages/SettingsLib/res/drawable/ic_5g_uc_mobiledata.xml
|
||||
deleted file mode 100644
|
||||
index 93fcad298c3f..000000000000
|
||||
--- a/packages/SettingsLib/res/drawable/ic_5g_uc_mobiledata.xml
|
||||
+++ /dev/null
|
||||
@@ -1,33 +0,0 @@
|
||||
-<!--
|
||||
- Copyright (C) 2021 The Android Open Source Project
|
||||
-
|
||||
- Licensed under the Apache License, Version 2.0 (the "License");
|
||||
- you may not use this file except in compliance with the License.
|
||||
- You may obtain a copy of the License at
|
||||
-
|
||||
- http://www.apache.org/licenses/LICENSE-2.0
|
||||
-
|
||||
- Unless required by applicable law or agreed to in writing, software
|
||||
- distributed under the License is distributed on an "AS IS" BASIS,
|
||||
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
- See the License for the specific language governing permissions and
|
||||
- limitations under the License.
|
||||
--->
|
||||
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
- android:width="27dp"
|
||||
- android:height="16dp"
|
||||
- android:viewportWidth="27.0"
|
||||
- android:viewportHeight="16.0">
|
||||
- <path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M5.3,13.22c-0.57,0 -1.1,-0.11 -1.58,-0.34c-0.48,-0.22 -0.87,-0.55 -1.18,-0.98C2.24,11.47 2.06,10.93 2,10.3l1.48,-0.2c0.07,0.5 0.25,0.92 0.56,1.25c0.32,0.32 0.74,0.48 1.26,0.48c0.57,0 1.02,-0.18 1.34,-0.55c0.33,-0.37 0.49,-0.87 0.49,-1.48c0,-0.61 -0.16,-1.09 -0.49,-1.46C6.32,7.96 5.88,7.78 5.32,7.78C5,7.78 4.7,7.85 4.42,8C4.15,8.14 3.93,8.33 3.76,8.56L2.28,7.92l0.6,-4.94h5.26v1.36H4.1L3.72,7.02l0.08,0.03C4,6.87 4.25,6.73 4.55,6.62c0.3,-0.12 0.63,-0.18 1.01,-0.18c0.6,0 1.13,0.14 1.6,0.41C7.62,7.11 7.98,7.5 8.24,8c0.27,0.5 0.41,1.1 0.41,1.79c0,0.66 -0.14,1.26 -0.43,1.78c-0.28,0.51 -0.67,0.92 -1.18,1.22C6.55,13.08 5.97,13.22 5.3,13.22z"/>
|
||||
- <path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M14.51,13.22c-0.88,0 -1.66,-0.21 -2.34,-0.64c-0.67,-0.44 -1.2,-1.05 -1.6,-1.83C10.19,9.95 10,9.03 10,7.99c0,-1.05 0.21,-1.96 0.62,-2.74c0.41,-0.79 0.97,-1.4 1.67,-1.83c0.7,-0.44 1.5,-0.66 2.39,-0.66c1.09,0 2.01,0.25 2.74,0.76c0.75,0.5 1.22,1.21 1.41,2.11l-1.47,0.39c-0.17,-0.56 -0.48,-1 -0.94,-1.32c-0.45,-0.33 -1.03,-0.49 -1.75,-0.49c-0.57,0 -1.09,0.14 -1.57,0.43c-0.48,0.29 -0.85,0.71 -1.13,1.27s-0.42,1.25 -0.42,2.07c0,0.81 0.14,1.5 0.41,2.07c0.28,0.56 0.65,0.98 1.11,1.27c0.47,0.29 0.98,0.43 1.54,0.43c0.57,0 1.06,-0.11 1.47,-0.34c0.42,-0.23 0.75,-0.55 0.99,-0.94c0.25,-0.4 0.41,-0.85 0.46,-1.36h-2.88V7.79h4.37c0,0.87 0,1.74 0,2.6c0,0.87 0,1.74 0,2.6H17.6v-1.4h-0.08c-0.28,0.49 -0.67,0.88 -1.18,1.18C15.85,13.07 15.24,13.22 14.51,13.22z"/>
|
||||
- <path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M23,7.39c-0.53,0 -0.94,-0.16 -1.25,-0.47C21.45,6.6 21.3,6.16 21.3,5.6V3h0.8v2.66c0,0.3 0.08,0.54 0.23,0.71C22.48,6.54 22.7,6.62 23,6.62c0.3,0 0.52,-0.08 0.67,-0.25c0.15,-0.17 0.23,-0.41 0.23,-0.71V3h0.8v2.6c0,0.36 -0.07,0.67 -0.2,0.94s-0.33,0.48 -0.58,0.62C23.65,7.32 23.35,7.39 23,7.39z"/>
|
||||
- <path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M22.99,13.1c-0.39,0 -0.73,-0.09 -1.03,-0.28c-0.3,-0.19 -0.53,-0.45 -0.7,-0.79C21.08,11.7 21,11.3 21,10.85c0,-0.46 0.08,-0.85 0.25,-1.19c0.17,-0.34 0.41,-0.6 0.71,-0.78c0.3,-0.18 0.65,-0.28 1.04,-0.28c0.31,0 0.59,0.05 0.86,0.16c0.26,0.11 0.48,0.27 0.65,0.48c0.18,0.21 0.28,0.48 0.32,0.8l-0.83,0.14c-0.06,-0.26 -0.17,-0.46 -0.35,-0.6C23.49,9.44 23.27,9.37 23,9.37c-0.22,0 -0.42,0.06 -0.61,0.17c-0.18,0.11 -0.32,0.28 -0.43,0.5c-0.1,0.22 -0.16,0.49 -0.16,0.81c0,0.32 0.05,0.58 0.16,0.8s0.25,0.39 0.43,0.5c0.18,0.11 0.38,0.17 0.61,0.17c0.26,0 0.47,-0.07 0.65,-0.21c0.18,-0.14 0.3,-0.34 0.35,-0.59l0.85,0.09c-0.06,0.29 -0.17,0.54 -0.32,0.77c-0.15,0.22 -0.36,0.39 -0.61,0.52C23.66,13.03 23.35,13.1 22.99,13.1z"/>
|
||||
-</vector>
|
||||
diff --git a/packages/SettingsLib/res/drawable/ic_5g_uw_mobiledata.xml b/packages/SettingsLib/res/drawable/ic_5g_uw_mobiledata.xml
|
||||
deleted file mode 100644
|
||||
index ca47b6ff2edb..000000000000
|
||||
--- a/packages/SettingsLib/res/drawable/ic_5g_uw_mobiledata.xml
|
||||
+++ /dev/null
|
||||
@@ -1,33 +0,0 @@
|
||||
-<!--
|
||||
- Copyright (C) 2021 The Android Open Source Project
|
||||
-
|
||||
- Licensed under the Apache License, Version 2.0 (the "License");
|
||||
- you may not use this file except in compliance with the License.
|
||||
- You may obtain a copy of the License at
|
||||
-
|
||||
- http://www.apache.org/licenses/LICENSE-2.0
|
||||
-
|
||||
- Unless required by applicable law or agreed to in writing, software
|
||||
- distributed under the License is distributed on an "AS IS" BASIS,
|
||||
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
- See the License for the specific language governing permissions and
|
||||
- limitations under the License.
|
||||
--->
|
||||
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
- android:width="27dp"
|
||||
- android:height="16dp"
|
||||
- android:viewportWidth="27.0"
|
||||
- android:viewportHeight="16.0">
|
||||
- <path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M5.3,13.22c-0.57,0 -1.1,-0.11 -1.58,-0.34c-0.48,-0.22 -0.87,-0.55 -1.18,-0.98C2.24,11.47 2.06,10.93 2,10.3l1.48,-0.2c0.07,0.5 0.25,0.92 0.56,1.25c0.32,0.32 0.74,0.48 1.26,0.48c0.57,0 1.02,-0.18 1.34,-0.55c0.33,-0.37 0.49,-0.87 0.49,-1.48c0,-0.61 -0.16,-1.09 -0.49,-1.46C6.32,7.96 5.88,7.78 5.32,7.78C5,7.78 4.7,7.85 4.42,8C4.15,8.14 3.93,8.33 3.76,8.56L2.28,7.92l0.6,-4.94h5.26v1.36H4.1L3.72,7.02l0.08,0.03C4,6.87 4.25,6.73 4.55,6.62c0.3,-0.12 0.63,-0.18 1.01,-0.18c0.6,0 1.13,0.14 1.6,0.41C7.62,7.11 7.98,7.5 8.24,8c0.27,0.5 0.41,1.1 0.41,1.79c0,0.66 -0.14,1.26 -0.43,1.78c-0.28,0.51 -0.67,0.92 -1.18,1.22C6.55,13.08 5.97,13.22 5.3,13.22z"/>
|
||||
- <path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M14.51,13.22c-0.88,0 -1.66,-0.21 -2.34,-0.64c-0.67,-0.44 -1.2,-1.05 -1.6,-1.83C10.19,9.95 10,9.03 10,7.99c0,-1.05 0.21,-1.96 0.62,-2.74c0.41,-0.79 0.97,-1.4 1.67,-1.83c0.7,-0.44 1.5,-0.66 2.39,-0.66c1.09,0 2.01,0.25 2.74,0.76c0.75,0.5 1.22,1.21 1.41,2.11l-1.47,0.39c-0.17,-0.56 -0.48,-1 -0.94,-1.32c-0.45,-0.33 -1.03,-0.49 -1.75,-0.49c-0.57,0 -1.09,0.14 -1.57,0.43c-0.48,0.29 -0.85,0.71 -1.13,1.27s-0.42,1.25 -0.42,2.07c0,0.81 0.14,1.5 0.41,2.07c0.28,0.56 0.65,0.98 1.11,1.27c0.47,0.29 0.98,0.43 1.54,0.43c0.57,0 1.06,-0.11 1.47,-0.34c0.42,-0.23 0.75,-0.55 0.99,-0.94c0.25,-0.4 0.41,-0.85 0.46,-1.36h-2.88V7.79h4.37c0,0.87 0,1.74 0,2.6c0,0.87 0,1.74 0,2.6H17.6v-1.4h-0.08c-0.28,0.49 -0.67,0.88 -1.18,1.18C15.85,13.07 15.24,13.22 14.51,13.22z"/>
|
||||
- <path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M23,7.39c-0.53,0 -0.94,-0.16 -1.25,-0.47C21.45,6.6 21.3,6.16 21.3,5.6V3h0.8v2.66c0,0.3 0.08,0.54 0.23,0.71C22.48,6.54 22.7,6.62 23,6.62c0.3,0 0.52,-0.08 0.67,-0.25c0.15,-0.17 0.23,-0.41 0.23,-0.71V3h0.8v2.6c0,0.36 -0.07,0.67 -0.2,0.94s-0.33,0.48 -0.58,0.62C23.65,7.32 23.35,7.39 23,7.39z"/>
|
||||
- <path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M21.41,13L20.3,8.7h0.73l0.64,2.78l0.07,0.38h0.04l0.09,-0.38l0.81,-2.78h0.66l0.79,2.78l0.09,0.37h0.04l0.07,-0.37l0.65,-2.78h0.72L24.59,13H23.9l-0.78,-2.84l-0.1,-0.41h-0.04l-0.1,0.41L22.08,13H21.41z"/>
|
||||
-</vector>
|
||||
diff --git a/packages/SettingsLib/res/drawable/ic_carrier_wifi.xml b/packages/SettingsLib/res/drawable/ic_carrier_wifi.xml
|
||||
index 22bcf7b8c8a3..ed9d85e3cbe4 100644
|
||||
--- a/packages/SettingsLib/res/drawable/ic_carrier_wifi.xml
|
||||
+++ b/packages/SettingsLib/res/drawable/ic_carrier_wifi.xml
|
||||
@@ -14,14 +14,17 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
- android:width="24dp"
|
||||
- android:height="16dp"
|
||||
- android:viewportWidth="24.0"
|
||||
- android:viewportHeight="16.0">
|
||||
+ android:width="38dp"
|
||||
+ android:height="24dp"
|
||||
+ android:viewportWidth="38.0"
|
||||
+ android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="#FF000000"
|
||||
- android:pathData="M4.59,13L2,2.98h1.69l1.5,6.48l0.17,0.88h0.08l0.21,-0.88l1.89,-6.48h1.54l1.83,6.48l0.21,0.87h0.08l0.15,-0.87l1.51,-6.48h1.68L12.01,13H10.4L8.58,6.36L8.36,5.4H8.27L8.05,6.36L6.16,13H4.59z"/>
|
||||
+ android:pathData="M9.45,14.48h1.8c-0.05,0.98 -0.24,1.82 -0.6,2.53c-0.35,0.7 -0.85,1.24 -1.51,1.62c-0.66,0.38 -1.48,0.57 -2.47,0.57c-0.71,0 -1.35,-0.14 -1.92,-0.42c-0.57,-0.28 -1.06,-0.68 -1.47,-1.2c-0.4,-0.53 -0.71,-1.16 -0.93,-1.89c-0.21,-0.74 -0.32,-1.56 -0.32,-2.48v-2.63c0,-0.91 0.11,-1.74 0.32,-2.47c0.22,-0.74 0.54,-1.36 0.95,-1.88C3.71,5.69 4.21,5.29 4.8,5.01c0.6,-0.28 1.28,-0.42 2.03,-0.42c0.92,0 1.71,0.19 2.34,0.56c0.64,0.36 1.14,0.9 1.48,1.61c0.35,0.7 0.55,1.57 0.59,2.59h-1.8C9.41,8.59 9.29,7.98 9.1,7.52C8.91,7.04 8.63,6.69 8.26,6.47C7.9,6.24 7.42,6.13 6.84,6.13c-0.52,0 -0.97,0.1 -1.36,0.31C5.1,6.65 4.79,6.95 4.54,7.34C4.3,7.72 4.12,8.19 3.99,8.74c-0.12,0.54 -0.18,1.15 -0.18,1.82v2.65c0,0.62 0.05,1.21 0.15,1.75c0.1,0.54 0.27,1.02 0.49,1.43c0.23,0.4 0.52,0.72 0.89,0.95c0.36,0.23 0.81,0.34 1.33,0.34c0.66,0 1.18,-0.11 1.56,-0.32c0.38,-0.21 0.67,-0.56 0.85,-1.03C9.27,15.85 9.39,15.23 9.45,14.48z"/>
|
||||
<path
|
||||
android:fillColor="#FF000000"
|
||||
- android:pathData="M15.77,9.85V8.56h2.46V6.1h1.3v2.46H22v1.29h-2.46v2.46h-1.3V9.85H15.77z"/>
|
||||
+ android:pathData="M24.87,4.78l-1.74,9.72l-0.2,1.64l-0.29,-1.44l-2.21,-9.92l-0.2,0l-1.06,0l-0.22,0l-2.28,9.92l-0.28,1.4l-0.18,-1.59l-1.78,-9.73l-1.79,0l2.83,14.22l0.34,0l0.92,0l0.35,0l2.48,-10.36l0.14,-0.84l0.15,0.84l2.36,10.36l0.36,0l0.92,0l0.34,0l2.82,-14.22z"/>
|
||||
+ <path
|
||||
+ android:fillColor="#FF000000"
|
||||
+ android:pathData="M35.72,6.32l0,-1.54l-5.61,0l-0.34,0l-1.45,0l0,14.22l1.79,0l0,-6.28l4.8,0l0,-1.54l-4.8,0l0,-4.86z"/>
|
||||
</vector>
|
||||
diff --git a/packages/SettingsLib/res/drawable/ic_lte_mobiledata.xml b/packages/SettingsLib/res/drawable/ic_lte_mobiledata.xml
|
||||
index 739e29d886c2..e6b4fb698242 100644
|
||||
--- a/packages/SettingsLib/res/drawable/ic_lte_mobiledata.xml
|
||||
+++ b/packages/SettingsLib/res/drawable/ic_lte_mobiledata.xml
|
||||
@@ -14,17 +14,20 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
- android:width="26dp"
|
||||
- android:height="16dp"
|
||||
- android:viewportWidth="26.0"
|
||||
- android:viewportHeight="16.0">
|
||||
+ android:width="15.88dp"
|
||||
+ android:height="15dp"
|
||||
+ android:viewportWidth="18"
|
||||
+ android:viewportHeight="17">
|
||||
+
|
||||
+ <path
|
||||
+ android:fillColor="#FFFFFFFF"
|
||||
+ android:pathData="M1.34,12.4h3.9v1.07H0.08V3.52h1.26V12.4z" />
|
||||
<path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M2,13V2.98h1.53v8.57H8.3V13H2z"/>
|
||||
+ android:fillColor="#FFFFFFFF"
|
||||
+ android:pathData="M11.1,4.6H8.48v8.88H7.23V4.6H4.62V3.52h6.48V4.6z" />
|
||||
<path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M11.24,13V4.43H8.19V2.98h7.63v1.46h-3.05V13H11.24z"/>
|
||||
+ android:fillColor="#FFFFFFFF"
|
||||
+ android:pathData="M17.34,8.88h-3.52v3.53h4.1v1.07h-5.35V3.52h5.28V4.6h-4.03V7.8h3.52V8.88z" />
|
||||
<path
|
||||
- android:fillColor="#FF000000"
|
||||
- android:pathData="M17.41,13V2.98h6.36v1.46h-4.83v2.65h4.4v1.46h-4.4v3.01h4.83V13H17.41z"/>
|
||||
+ android:pathData="M 0 0 H 18 V 17 H 0 V 0 Z" />
|
||||
</vector>
|
||||
diff --git a/packages/SystemUI/res/drawable/stat_sys_roaming_large.xml b/packages/SystemUI/res/drawable/stat_sys_roaming_large.xml
|
||||
index 48faeb22416f..1511659ea42f 100644
|
||||
--- a/packages/SystemUI/res/drawable/stat_sys_roaming_large.xml
|
||||
+++ b/packages/SystemUI/res/drawable/stat_sys_roaming_large.xml
|
||||
@@ -14,11 +14,11 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
- android:width="16dp"
|
||||
- android:height="16dp"
|
||||
- android:viewportWidth="16.0"
|
||||
- android:viewportHeight="16.0">
|
||||
+ android:width="@dimen/signal_icon_size"
|
||||
+ android:height="@dimen/signal_icon_size"
|
||||
+ android:viewportWidth="24.0"
|
||||
+ android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="#FF000000"
|
||||
- android:pathData="M4.5,13.02V3h3.93c0.97,0 1.75,0.27 2.34,0.81c0.6,0.53 0.9,1.28 0.9,2.25c0,0.63 -0.19,1.2 -0.56,1.74c-0.37,0.53 -0.95,0.91 -1.74,1.12l2.45,4.02v0.08h-1.69L7.75,9.09H6.03v3.93H4.5zM8.46,4.44H6.03v3.23h2.44c0.49,0 0.9,-0.14 1.2,-0.41c0.31,-0.28 0.46,-0.69 0.46,-1.22s-0.15,-0.93 -0.45,-1.2C9.38,4.58 8.98,4.44 8.46,4.44z"/>
|
||||
+ android:pathData="M14.21,12.81c0.36,-0.16 0.69,-0.36 0.97,-0.61c0.41,-0.38 0.72,-0.83 0.94,-1.37c0.21,-0.54 0.32,-1.14 0.32,-1.79c0,-0.92 -0.16,-1.7 -0.49,-2.33c-0.32,-0.64 -0.79,-1.12 -1.43,-1.45c-0.62,-0.33 -1.4,-0.49 -2.32,-0.49H8.23V19h1.8v-5.76h2.5L15.06,19h1.92v-0.12L14.21,12.81zM10.03,11.71V6.32h2.18c0.59,0 1.06,0.11 1.42,0.34c0.36,0.22 0.62,0.54 0.78,0.95c0.16,0.41 0.24,0.89 0.24,1.44c0,0.49 -0.09,0.93 -0.27,1.34c-0.18,0.4 -0.46,0.73 -0.82,0.97c-0.36,0.23 -0.82,0.35 -1.37,0.35H10.03z"/>
|
||||
</vector>
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,31 @@
|
||||
From 525d4852c431af17570f778b4294876393a6c615 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 2 Nov 2019 06:41:03 +0000
|
||||
Subject: [PATCH 13/18] Keyguard: Hide padlock
|
||||
|
||||
It's just fking ugly.
|
||||
Please Google, stop your UI designers.
|
||||
|
||||
Change-Id: Ie91e80ca5c6637a51a8acc72fb28cd6ac2a7abb6
|
||||
---
|
||||
packages/SystemUI/res/values/dimens.xml | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
|
||||
index e414861b0cd..19341fdb415 100644
|
||||
--- a/packages/SystemUI/res/values/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values/dimens.xml
|
||||
@@ -823,8 +823,8 @@
|
||||
<dimen name="keyguard_affordance_width">56dp</dimen>
|
||||
|
||||
<!-- The width/height of the unlock icon view on keyguard. -->
|
||||
- <dimen name="keyguard_lock_height">42dp</dimen>
|
||||
- <dimen name="keyguard_lock_width">42dp</dimen>
|
||||
+ <dimen name="keyguard_lock_height">0dp</dimen>
|
||||
+ <dimen name="keyguard_lock_width">0dp</dimen>
|
||||
<dimen name="keyguard_lock_padding">20dp</dimen>
|
||||
|
||||
<dimen name="keyguard_indication_margin_bottom">40dp</dimen>
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,29 +0,0 @@
|
||||
From 15e59be158a3305a17e14cc18883d323d2afc54b Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 29 Sep 2022 11:27:57 +0000
|
||||
Subject: [PATCH 13/21] Revert "Use the default top clock margin on h800
|
||||
devices"
|
||||
|
||||
This reverts commits 50ba380f4d8d1c2523e0f76295ca556038796bfd
|
||||
and 2a254b4d479029aec46f79a0ed14ffab6d0424bc.
|
||||
---
|
||||
packages/SystemUI/res/values-h800dp/dimens.xml | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/packages/SystemUI/res/values-h800dp/dimens.xml b/packages/SystemUI/res/values-h800dp/dimens.xml
|
||||
index 3a71994e07e2..4b9bce0eda99 100644
|
||||
--- a/packages/SystemUI/res/values-h800dp/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values-h800dp/dimens.xml
|
||||
@@ -15,6 +15,9 @@
|
||||
-->
|
||||
|
||||
<resources>
|
||||
+ <!-- Minimum margin between clock and top of screen or ambient indication -->
|
||||
+ <dimen name="keyguard_clock_top_margin">38dp</dimen>
|
||||
+
|
||||
<!-- With the large clock, move up slightly from the center -->
|
||||
<dimen name="keyguard_large_clock_top_margin">-112dp</dimen>
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,89 @@
|
||||
From 62e1f218db18a9bcacba85c479a2c40625e958f6 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 2 Nov 2019 08:31:36 +0000
|
||||
Subject: [PATCH 14/18] Keyguard: Refine indication text
|
||||
|
||||
- Always show "Swipe up to unlock" hint
|
||||
- Put the text in-line with bottom shortcuts
|
||||
- Don't show charging state alongside other hints
|
||||
|
||||
Change-Id: Ib771c35610f712a1de34736e817bcfe616ac37d8
|
||||
---
|
||||
packages/SystemUI/res/values-sw600dp-land/dimens.xml | 2 +-
|
||||
packages/SystemUI/res/values-sw600dp/dimens.xml | 2 +-
|
||||
packages/SystemUI/res/values/dimens.xml | 2 +-
|
||||
.../statusbar/KeyguardIndicationController.java | 12 ++----------
|
||||
4 files changed, 5 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res/values-sw600dp-land/dimens.xml b/packages/SystemUI/res/values-sw600dp-land/dimens.xml
|
||||
index f2df4b9023b..7719a0ae0ba 100644
|
||||
--- a/packages/SystemUI/res/values-sw600dp-land/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values-sw600dp-land/dimens.xml
|
||||
@@ -18,7 +18,7 @@
|
||||
<resources>
|
||||
<dimen name="keyguard_clock_notifications_margin">36dp</dimen>
|
||||
|
||||
- <dimen name="keyguard_indication_margin_bottom">80dp</dimen>
|
||||
+ <dimen name="keyguard_indication_margin_bottom">40dp</dimen>
|
||||
|
||||
<!-- Screen pinning request width (just a little bit bigger than the three buttons here -->
|
||||
<dimen name="screen_pinning_request_width">490dp</dimen>
|
||||
diff --git a/packages/SystemUI/res/values-sw600dp/dimens.xml b/packages/SystemUI/res/values-sw600dp/dimens.xml
|
||||
index aa574c7d9f6..d06906bab08 100644
|
||||
--- a/packages/SystemUI/res/values-sw600dp/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values-sw600dp/dimens.xml
|
||||
@@ -71,7 +71,7 @@
|
||||
phone hints. -->
|
||||
<dimen name="edge_tap_area_width">80dp</dimen>
|
||||
|
||||
- <dimen name="keyguard_indication_margin_bottom">90dp</dimen>
|
||||
+ <dimen name="keyguard_indication_margin_bottom">40dp</dimen>
|
||||
|
||||
<!-- Margin on the right side of the system icon group on Keyguard. -->
|
||||
<dimen name="system_icons_keyguard_padding_end">2dp</dimen>
|
||||
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
|
||||
index 19341fdb415..7190def8786 100644
|
||||
--- a/packages/SystemUI/res/values/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values/dimens.xml
|
||||
@@ -827,7 +827,7 @@
|
||||
<dimen name="keyguard_lock_width">0dp</dimen>
|
||||
<dimen name="keyguard_lock_padding">20dp</dimen>
|
||||
|
||||
- <dimen name="keyguard_indication_margin_bottom">40dp</dimen>
|
||||
+ <dimen name="keyguard_indication_margin_bottom">20dp</dimen>
|
||||
|
||||
<!-- The text size for battery level -->
|
||||
<dimen name="battery_level_text_size">12sp</dimen>
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java b/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java
|
||||
index dd6a0f053f9..1c67f914105 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java
|
||||
@@ -447,15 +447,7 @@ public class KeyguardIndicationController implements StateListener,
|
||||
isError = mTransientTextIsError;
|
||||
} else if (!TextUtils.isEmpty(trustGrantedIndication)
|
||||
&& mKeyguardUpdateMonitor.getUserHasTrust(userId)) {
|
||||
- if (powerIndication != null) {
|
||||
- String indication = mContext.getResources().getString(
|
||||
- R.string.keyguard_indication_trust_unlocked_plugged_in,
|
||||
- trustGrantedIndication, powerIndication);
|
||||
- mTextView.switchIndication(indication);
|
||||
- hideIndication = !mBatteryPresent;
|
||||
- } else {
|
||||
- mTextView.switchIndication(trustGrantedIndication);
|
||||
- }
|
||||
+ mTextView.switchIndication(trustGrantedIndication);
|
||||
} else if (!TextUtils.isEmpty(mAlignmentIndication)) {
|
||||
mTextView.switchIndication(mAlignmentIndication);
|
||||
isError = true;
|
||||
@@ -475,7 +467,7 @@ public class KeyguardIndicationController implements StateListener,
|
||||
&& !mKeyguardUpdateMonitor.getUserHasTrust(userId)) {
|
||||
mTextView.switchIndication(trustManagedIndication);
|
||||
} else {
|
||||
- mTextView.switchIndication(mRestingIndication);
|
||||
+ mTextView.switchIndication(R.string.keyguard_unlock);
|
||||
}
|
||||
mTextView.setTextColor(isError ? Utils.getColorError(mContext)
|
||||
: mInitialTextColorState);
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,68 +0,0 @@
|
||||
From 6927e68fa4ec001ec72e9f68e4454a37c8bc7bb5 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 7 Oct 2020 14:00:35 +0000
|
||||
Subject: [PATCH 14/21] UI: Always render windows into cutouts
|
||||
|
||||
Eliminates black/white letterboxing
|
||||
Quick and dirty way to do the latter - wait for proper fix from Google
|
||||
|
||||
Change-Id: I4661c7979bfa7de453329fcddbaeefc2009e2da3
|
||||
---
|
||||
.../com/android/server/wm/DisplayFrames.java | 28 +++----------------
|
||||
.../com/android/server/wm/DisplayPolicy.java | 1 +
|
||||
2 files changed, 5 insertions(+), 24 deletions(-)
|
||||
|
||||
diff --git a/services/core/java/com/android/server/wm/DisplayFrames.java b/services/core/java/com/android/server/wm/DisplayFrames.java
|
||||
index 33641f72b2ff..6e201970ac03 100644
|
||||
--- a/services/core/java/com/android/server/wm/DisplayFrames.java
|
||||
+++ b/services/core/java/com/android/server/wm/DisplayFrames.java
|
||||
@@ -92,30 +92,10 @@ public class DisplayFrames {
|
||||
state.setRoundedCorners(roundedCorners);
|
||||
state.setPrivacyIndicatorBounds(indicatorBounds);
|
||||
state.getDisplayCutoutSafe(safe);
|
||||
- if (safe.left > unrestricted.left) {
|
||||
- state.getSource(ITYPE_LEFT_DISPLAY_CUTOUT).setFrame(
|
||||
- unrestricted.left, unrestricted.top, safe.left, unrestricted.bottom);
|
||||
- } else {
|
||||
- state.removeSource(ITYPE_LEFT_DISPLAY_CUTOUT);
|
||||
- }
|
||||
- if (safe.top > unrestricted.top) {
|
||||
- state.getSource(ITYPE_TOP_DISPLAY_CUTOUT).setFrame(
|
||||
- unrestricted.left, unrestricted.top, unrestricted.right, safe.top);
|
||||
- } else {
|
||||
- state.removeSource(ITYPE_TOP_DISPLAY_CUTOUT);
|
||||
- }
|
||||
- if (safe.right < unrestricted.right) {
|
||||
- state.getSource(ITYPE_RIGHT_DISPLAY_CUTOUT).setFrame(
|
||||
- safe.right, unrestricted.top, unrestricted.right, unrestricted.bottom);
|
||||
- } else {
|
||||
- state.removeSource(ITYPE_RIGHT_DISPLAY_CUTOUT);
|
||||
- }
|
||||
- if (safe.bottom < unrestricted.bottom) {
|
||||
- state.getSource(ITYPE_BOTTOM_DISPLAY_CUTOUT).setFrame(
|
||||
- unrestricted.left, safe.bottom, unrestricted.right, unrestricted.bottom);
|
||||
- } else {
|
||||
- state.removeSource(ITYPE_BOTTOM_DISPLAY_CUTOUT);
|
||||
- }
|
||||
+ state.removeSource(ITYPE_LEFT_DISPLAY_CUTOUT);
|
||||
+ state.removeSource(ITYPE_TOP_DISPLAY_CUTOUT);
|
||||
+ state.removeSource(ITYPE_RIGHT_DISPLAY_CUTOUT);
|
||||
+ state.removeSource(ITYPE_BOTTOM_DISPLAY_CUTOUT);
|
||||
return true;
|
||||
}
|
||||
|
||||
diff --git a/services/core/java/com/android/server/wm/DisplayPolicy.java b/services/core/java/com/android/server/wm/DisplayPolicy.java
|
||||
index 1468360b37b7..a1f70e4c8deb 100644
|
||||
--- a/services/core/java/com/android/server/wm/DisplayPolicy.java
|
||||
+++ b/services/core/java/com/android/server/wm/DisplayPolicy.java
|
||||
@@ -1558,6 +1558,7 @@ public class DisplayPolicy {
|
||||
displayFrames = win.getDisplayFrames(displayFrames);
|
||||
|
||||
final WindowManager.LayoutParams attrs = win.mAttrs.forRotation(displayFrames.mRotation);
|
||||
+ attrs.layoutInDisplayCutoutMode = LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;
|
||||
sTmpClientFrames.attachedFrame = attached != null ? attached.getFrame() : null;
|
||||
|
||||
// If this window has different LayoutParams for rotations, we cannot trust its requested
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,133 @@
|
||||
From 00720384d76b0a650014db49705df71e055b18ec Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 20 Mar 2021 10:35:14 +0000
|
||||
Subject: [PATCH 15/18] Keyguard/UI: Fix status bar margins and paddings
|
||||
|
||||
- Change keyguard_carrier_text_margin into a padding
|
||||
- Link keyguard paddings to status_bar_padding_{start|end}
|
||||
- Add status_bar_padding_{start|end} to quick settings header
|
||||
|
||||
Change-Id: Ic91fa398813e1907297bb0892c444d96405950e7
|
||||
---
|
||||
packages/SystemUI/res/layout/keyguard_status_bar.xml | 2 +-
|
||||
.../layout/quick_status_bar_header_system_icons.xml | 6 ++++--
|
||||
packages/SystemUI/res/values-sw600dp/dimens.xml | 6 ------
|
||||
packages/SystemUI/res/values/dimens.xml | 4 ++--
|
||||
.../statusbar/phone/KeyguardStatusBarView.java | 11 -----------
|
||||
5 files changed, 7 insertions(+), 22 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res/layout/keyguard_status_bar.xml b/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
index 58343800c2e..3782df2539e 100644
|
||||
--- a/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
+++ b/packages/SystemUI/res/layout/keyguard_status_bar.xml
|
||||
@@ -68,7 +68,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingTop="@dimen/status_bar_padding_top"
|
||||
- android:layout_marginStart="@dimen/keyguard_carrier_text_margin"
|
||||
+ android:paddingStart="@dimen/keyguard_carrier_text_margin"
|
||||
android:layout_toStartOf="@id/system_icons_container"
|
||||
android:gravity="center_vertical"
|
||||
android:ellipsize="marquee"
|
||||
diff --git a/packages/SystemUI/res/layout/quick_status_bar_header_system_icons.xml b/packages/SystemUI/res/layout/quick_status_bar_header_system_icons.xml
|
||||
index 3c748018187..74bcbf2685e 100644
|
||||
--- a/packages/SystemUI/res/layout/quick_status_bar_header_system_icons.xml
|
||||
+++ b/packages/SystemUI/res/layout/quick_status_bar_header_system_icons.xml
|
||||
@@ -32,7 +32,8 @@
|
||||
android:layout_height="match_parent"
|
||||
android:layout_weight="1"
|
||||
android:orientation="horizontal"
|
||||
- android:gravity="center_vertical|start" >
|
||||
+ android:gravity="center_vertical|start"
|
||||
+ android:paddingStart="@dimen/status_bar_padding_start" >
|
||||
|
||||
<com.android.systemui.statusbar.policy.Clock
|
||||
android:id="@+id/clock"
|
||||
@@ -59,7 +60,8 @@
|
||||
android:layout_height="match_parent"
|
||||
android:layout_weight="1"
|
||||
android:orientation="horizontal"
|
||||
- android:gravity="center_vertical|end" >
|
||||
+ android:gravity="center_vertical|end"
|
||||
+ android:paddingEnd="@dimen/status_bar_padding_end" >
|
||||
|
||||
<include layout="@layout/ongoing_privacy_chip" />
|
||||
|
||||
diff --git a/packages/SystemUI/res/values-sw600dp/dimens.xml b/packages/SystemUI/res/values-sw600dp/dimens.xml
|
||||
index d06906bab08..75fd4abba84 100644
|
||||
--- a/packages/SystemUI/res/values-sw600dp/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values-sw600dp/dimens.xml
|
||||
@@ -60,9 +60,6 @@
|
||||
<!-- end margin for multi user switch in collapsed quick settings -->
|
||||
<dimen name="multi_user_switch_keyguard_margin">6dp</dimen>
|
||||
|
||||
- <!-- Margin on the left side of the carrier text on Keyguard -->
|
||||
- <dimen name="keyguard_carrier_text_margin">24dp</dimen>
|
||||
-
|
||||
<!-- The width/height of the phone/camera/unlock icon on keyguard. -->
|
||||
<dimen name="keyguard_affordance_height">80dp</dimen>
|
||||
<dimen name="keyguard_affordance_width">120dp</dimen>
|
||||
@@ -73,9 +70,6 @@
|
||||
|
||||
<dimen name="keyguard_indication_margin_bottom">40dp</dimen>
|
||||
|
||||
- <!-- Margin on the right side of the system icon group on Keyguard. -->
|
||||
- <dimen name="system_icons_keyguard_padding_end">2dp</dimen>
|
||||
-
|
||||
<!-- Screen pinning request width -->
|
||||
<dimen name="screen_pinning_request_width">400dp</dimen>
|
||||
<!-- Screen pinning request bottom button circle widths -->
|
||||
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
|
||||
index 7190def8786..9172bfa823e 100644
|
||||
--- a/packages/SystemUI/res/values/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values/dimens.xml
|
||||
@@ -784,7 +784,7 @@
|
||||
<dimen name="kg_framed_avatar_size">54dp</dimen>
|
||||
|
||||
<!-- Margin on the left side of the carrier text on Keyguard -->
|
||||
- <dimen name="keyguard_carrier_text_margin">16dp</dimen>
|
||||
+ <dimen name="keyguard_carrier_text_margin">@dimen/status_bar_padding_start</dimen>
|
||||
|
||||
<!-- Margin on the left side of the battery % in the header. -->
|
||||
<dimen name="header_battery_margin_expanded">6dp</dimen>
|
||||
@@ -793,7 +793,7 @@
|
||||
<dimen name="header_battery_margin_keyguard">6dp</dimen>
|
||||
|
||||
<!-- Margin on the right side of the system icon group on Keyguard. -->
|
||||
- <dimen name="system_icons_keyguard_padding_end">4dp</dimen>
|
||||
+ <dimen name="system_icons_keyguard_padding_end">@dimen/status_bar_padding_end</dimen>
|
||||
|
||||
<!-- Additional translation (downwards) for appearing notifications when going to the full shade
|
||||
from Keyguard. -->
|
||||
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java
|
||||
index 9baac56410a..c75cab3d469 100644
|
||||
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java
|
||||
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarView.java
|
||||
@@ -238,7 +238,6 @@ public class KeyguardStatusBarView extends RelativeLayout
|
||||
Pair<Integer, Integer> cornerCutoutMargins =
|
||||
StatusBarWindowView.cornerCutoutMargins(mDisplayCutout, getDisplay());
|
||||
updatePadding(cornerCutoutMargins);
|
||||
- updateCarrierLabelParams();
|
||||
if (mDisplayCutout == null || cornerCutoutMargins != null) {
|
||||
return updateLayoutParamsNoCutout();
|
||||
} else {
|
||||
@@ -255,16 +254,6 @@ public class KeyguardStatusBarView extends RelativeLayout
|
||||
setPadding(mPadding.first, waterfallTop, mPadding.second, 0);
|
||||
}
|
||||
|
||||
- private void updateCarrierLabelParams() {
|
||||
- int marginStart = calculateMargin(
|
||||
- getResources().getDimensionPixelSize(R.dimen.keyguard_carrier_text_margin),
|
||||
- mPadding.first);
|
||||
- MarginLayoutParams lp = (MarginLayoutParams) mCarrierLabel.getLayoutParams();
|
||||
- lp.setMarginStart(marginStart);
|
||||
-
|
||||
- mCarrierLabel.setLayoutParams(lp);
|
||||
- }
|
||||
-
|
||||
private boolean updateLayoutParamsNoCutout() {
|
||||
if (mLayoutState == LAYOUT_NO_CUTOUT) {
|
||||
return false;
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,28 +0,0 @@
|
||||
From 89c565bf1a9ce56a64191059424bf9f5fe04f1d9 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 1 Sep 2021 14:10:50 +0000
|
||||
Subject: [PATCH 15/21] UI: Kill rounded corners in notification scrim
|
||||
|
||||
Rounded corners in S is nicely implemented, but this is one occasion where it looks out of place
|
||||
|
||||
Change-Id: I09ed59e0e658ebd512a9d02a8ef3edfe2c9888da
|
||||
---
|
||||
packages/SystemUI/res/values/dimens.xml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
|
||||
index d0a9055e1905..30881992795d 100644
|
||||
--- a/packages/SystemUI/res/values/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values/dimens.xml
|
||||
@@ -726,7 +726,7 @@
|
||||
<!-- With the large clock, move up slightly from the center -->
|
||||
<dimen name="keyguard_large_clock_top_margin">-60dp</dimen>
|
||||
|
||||
- <dimen name="notification_scrim_corner_radius">32dp</dimen>
|
||||
+ <dimen name="notification_scrim_corner_radius">0dp</dimen>
|
||||
|
||||
<!-- The minimum amount the user needs to swipe to go to the camera / phone. -->
|
||||
<dimen name="keyguard_min_swipe_amount">110dp</dimen>
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,53 @@
|
||||
From 0d94e66575aa5c5eda8a4a93b8747fd335db5dce Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Fri, 22 Mar 2019 00:41:20 +0800
|
||||
Subject: [PATCH 16/18] Disable FP lockouts
|
||||
|
||||
Both timed and permanent lockouts - GET THE FUCK OUT
|
||||
Android 10 seems to have unified biometrics procedures - only disable lockouts for FP for now
|
||||
|
||||
Change-Id: I2d4b091f3546d4d7903bfb4d5585629212dc9915
|
||||
---
|
||||
.../fingerprint/FingerprintService.java | 19 +------------------
|
||||
1 file changed, 1 insertion(+), 18 deletions(-)
|
||||
|
||||
diff --git a/services/core/java/com/android/server/biometrics/fingerprint/FingerprintService.java b/services/core/java/com/android/server/biometrics/fingerprint/FingerprintService.java
|
||||
index def1a873590..e8362580510 100644
|
||||
--- a/services/core/java/com/android/server/biometrics/fingerprint/FingerprintService.java
|
||||
+++ b/services/core/java/com/android/server/biometrics/fingerprint/FingerprintService.java
|
||||
@@ -173,15 +173,7 @@ public class FingerprintService extends BiometricServiceBase {
|
||||
|
||||
@Override
|
||||
public int handleFailedAttempt() {
|
||||
- final int currentUser = ActivityManager.getCurrentUser();
|
||||
- mFailedAttempts.put(currentUser, mFailedAttempts.get(currentUser, 0) + 1);
|
||||
- mTimedLockoutCleared.put(ActivityManager.getCurrentUser(), false);
|
||||
-
|
||||
- if (getLockoutMode() != AuthenticationClient.LOCKOUT_NONE) {
|
||||
- scheduleLockoutResetForUser(currentUser);
|
||||
- }
|
||||
-
|
||||
- return super.handleFailedAttempt();
|
||||
+ return AuthenticationClient.LOCKOUT_NONE;
|
||||
}
|
||||
|
||||
boolean isDetectOnly() {
|
||||
@@ -983,15 +975,6 @@ public class FingerprintService extends BiometricServiceBase {
|
||||
|
||||
@Override
|
||||
protected int getLockoutMode() {
|
||||
- final int currentUser = ActivityManager.getCurrentUser();
|
||||
- final int failedAttempts = mFailedAttempts.get(currentUser, 0);
|
||||
- if (failedAttempts >= MAX_FAILED_ATTEMPTS_LOCKOUT_PERMANENT) {
|
||||
- return AuthenticationClient.LOCKOUT_PERMANENT;
|
||||
- } else if (failedAttempts > 0
|
||||
- && !mTimedLockoutCleared.get(currentUser, false)
|
||||
- && (failedAttempts % MAX_FAILED_ATTEMPTS_LOCKOUT_TIMED == 0)) {
|
||||
- return AuthenticationClient.LOCKOUT_TIMED;
|
||||
- }
|
||||
return AuthenticationClient.LOCKOUT_NONE;
|
||||
}
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,32 +0,0 @@
|
||||
From be2477f3314d044e1d7581905a4d358aa0f0a2a7 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Mon, 26 Oct 2020 14:06:56 +0000
|
||||
Subject: [PATCH 16/21] UI: Reconfigure power menu items
|
||||
|
||||
Change-Id: I32cca6e2c6bb64d891efee959127edf7c0802cbc
|
||||
---
|
||||
core/res/res/values/config.xml | 5 +----
|
||||
1 file changed, 1 insertion(+), 4 deletions(-)
|
||||
|
||||
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
|
||||
index 87e3ddcf8fdf..64d592b2230b 100644
|
||||
--- a/core/res/res/values/config.xml
|
||||
+++ b/core/res/res/values/config.xml
|
||||
@@ -3305,13 +3305,10 @@
|
||||
"logout" = Logout the current user
|
||||
-->
|
||||
<string-array translatable="false" name="config_globalActionsList">
|
||||
- <item>emergency</item>
|
||||
- <item>lockdown</item>
|
||||
<item>power</item>
|
||||
<item>restart</item>
|
||||
- <item>logout</item>
|
||||
<item>screenshot</item>
|
||||
- <item>bugreport</item>
|
||||
+ <item>airplane</item>
|
||||
</string-array>
|
||||
|
||||
<!-- Number of milliseconds to hold a wake lock to ensure that drawing is fully
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,13 +1,13 @@
|
||||
From 2e9df83d63b2c316a6cec6fcbc253ef0919cf5d3 Mon Sep 17 00:00:00 2001
|
||||
From 8670dcd137ae5b202cb97e83e60f8ba672395a82 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 20 Jun 2021 03:39:32 +0000
|
||||
Subject: [PATCH 02/21] Add MiuiNavbarOverlay
|
||||
Subject: [PATCH 17/18] Add MiuiNavbarOverlay
|
||||
|
||||
Change-Id: I0e6791abc3c9521d7dc612df2fec2b041affe7e9
|
||||
---
|
||||
packages/overlays/Android.mk | 1 +
|
||||
.../overlays/MiuiNavbarOverlay/Android.bp | 28 ++++++++++++++++++
|
||||
.../MiuiNavbarOverlay/AndroidManifest.xml | 22 ++++++++++++++
|
||||
.../overlays/MiuiNavbarOverlay/Android.mk | 27 ++++++++++++++++++
|
||||
.../MiuiNavbarOverlay/AndroidManifest.xml | 21 ++++++++++++++
|
||||
.../res/drawable-440dpi-v4/ic_sysbar_back.png | Bin 0 -> 2756 bytes
|
||||
.../ic_sysbar_back_darkmode.png | Bin 0 -> 2547 bytes
|
||||
.../drawable-440dpi-v4/ic_sysbar_docked.png | Bin 0 -> 3642 bytes
|
||||
@ -16,8 +16,8 @@ Change-Id: I0e6791abc3c9521d7dc612df2fec2b041affe7e9
|
||||
.../ic_sysbar_home_darkmode.png | Bin 0 -> 980 bytes
|
||||
.../drawable-440dpi-v4/ic_sysbar_recent.png | Bin 0 -> 278 bytes
|
||||
.../ic_sysbar_recent_darkmode.png | Bin 0 -> 205 bytes
|
||||
11 files changed, 51 insertions(+)
|
||||
create mode 100644 packages/overlays/MiuiNavbarOverlay/Android.bp
|
||||
11 files changed, 49 insertions(+)
|
||||
create mode 100644 packages/overlays/MiuiNavbarOverlay/Android.mk
|
||||
create mode 100644 packages/overlays/MiuiNavbarOverlay/AndroidManifest.xml
|
||||
create mode 100644 packages/overlays/MiuiNavbarOverlay/res/drawable-440dpi-v4/ic_sysbar_back.png
|
||||
create mode 100644 packages/overlays/MiuiNavbarOverlay/res/drawable-440dpi-v4/ic_sysbar_back_darkmode.png
|
||||
@ -29,59 +29,58 @@ Change-Id: I0e6791abc3c9521d7dc612df2fec2b041affe7e9
|
||||
create mode 100644 packages/overlays/MiuiNavbarOverlay/res/drawable-440dpi-v4/ic_sysbar_recent_darkmode.png
|
||||
|
||||
diff --git a/packages/overlays/Android.mk b/packages/overlays/Android.mk
|
||||
index 69641e69a9f2..1efc296d9689 100644
|
||||
index 999ab080246..de3afebac43 100644
|
||||
--- a/packages/overlays/Android.mk
|
||||
+++ b/packages/overlays/Android.mk
|
||||
@@ -26,6 +26,7 @@ LOCAL_REQUIRED_MODULES := \
|
||||
DisplayCutoutEmulationTallOverlay \
|
||||
DisplayCutoutEmulationWaterfallOverlay \
|
||||
FontNotoSerifSourceOverlay \
|
||||
@@ -72,6 +72,7 @@ LOCAL_REQUIRED_MODULES := \
|
||||
IconShapeTaperedRectOverlay \
|
||||
IconShapeTeardropOverlay \
|
||||
IconShapeVesselOverlay \
|
||||
+ MiuiNavbarOverlay \
|
||||
NavigationBarMode3ButtonOverlay \
|
||||
NavigationBarModeGesturalOverlay \
|
||||
NavigationBarModeGesturalOverlayNarrowBack \
|
||||
diff --git a/packages/overlays/MiuiNavbarOverlay/Android.bp b/packages/overlays/MiuiNavbarOverlay/Android.bp
|
||||
diff --git a/packages/overlays/MiuiNavbarOverlay/Android.mk b/packages/overlays/MiuiNavbarOverlay/Android.mk
|
||||
new file mode 100644
|
||||
index 000000000000..fc724fb7a686
|
||||
index 00000000000..3a577ef5920
|
||||
--- /dev/null
|
||||
+++ b/packages/overlays/MiuiNavbarOverlay/Android.bp
|
||||
@@ -0,0 +1,28 @@
|
||||
+//
|
||||
+// Copyright 2021, The Android Open Source Project
|
||||
+//
|
||||
+// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+// you may not use this file except in compliance with the License.
|
||||
+// You may obtain a copy of the License at
|
||||
+//
|
||||
+// http://www.apache.org/licenses/LICENSE-2.0
|
||||
+//
|
||||
+// Unless required by applicable law or agreed to in writing, software
|
||||
+// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
+// See the License for the specific language governing permissions and
|
||||
+// limitations under the License.
|
||||
+//
|
||||
+package {
|
||||
+ // See: http://go/android-license-faq
|
||||
+ // A large-scale-change added 'default_applicable_licenses' to import
|
||||
+ // all of the 'license_kinds' from "frameworks_base_license"
|
||||
+ // to get the below license kinds:
|
||||
+ // SPDX-license-identifier-Apache-2.0
|
||||
+ default_applicable_licenses: ["frameworks_base_license"],
|
||||
+}
|
||||
+++ b/packages/overlays/MiuiNavbarOverlay/Android.mk
|
||||
@@ -0,0 +1,27 @@
|
||||
+#
|
||||
+# Copyright (C) 2020, The Android Open Source Project
|
||||
+#
|
||||
+# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+# you may not use this file except in compliance with the License.
|
||||
+# You may obtain a copy of the License at
|
||||
+#
|
||||
+# http://www.apache.org/licenses/LICENSE-2.0
|
||||
+#
|
||||
+# Unless required by applicable law or agreed to in writing, software
|
||||
+# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
+# See the License for the specific language governing permissions and
|
||||
+# limitations under the License.
|
||||
+#
|
||||
+
|
||||
+runtime_resource_overlay {
|
||||
+ name: "MiuiNavbarOverlay",
|
||||
+ product_specific: true,
|
||||
+}
|
||||
+LOCAL_PATH:= $(call my-dir)
|
||||
+include $(CLEAR_VARS)
|
||||
+
|
||||
+LOCAL_PRODUCT_MODULE := true
|
||||
+
|
||||
+LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
|
||||
+
|
||||
+LOCAL_PACKAGE_NAME := MiuiNavbarOverlay
|
||||
+LOCAL_SDK_VERSION := current
|
||||
+
|
||||
+include $(BUILD_RRO_PACKAGE)
|
||||
diff --git a/packages/overlays/MiuiNavbarOverlay/AndroidManifest.xml b/packages/overlays/MiuiNavbarOverlay/AndroidManifest.xml
|
||||
new file mode 100644
|
||||
index 000000000000..3f10e2e03675
|
||||
index 00000000000..3956effddfb
|
||||
--- /dev/null
|
||||
+++ b/packages/overlays/MiuiNavbarOverlay/AndroidManifest.xml
|
||||
@@ -0,0 +1,22 @@
|
||||
@@ -0,0 +1,21 @@
|
||||
+<!--
|
||||
+ ~ Copyright (C) 2021 The Android Open Source Project
|
||||
+ ~ Copyright (C) 2020 The Android Open Source Project
|
||||
+ ~
|
||||
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+ ~ you may not use this file except in compliance with the License.
|
||||
@ -95,7 +94,6 @@ index 000000000000..3f10e2e03675
|
||||
+ ~ See the License for the specific language governing permissions and
|
||||
+ ~ limitations under the License.
|
||||
+ -->
|
||||
+
|
||||
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
+ package="com.miui.systemui.navbar.overlay"
|
||||
+ android:versionCode="1"
|
||||
@ -385,5 +383,5 @@ literal 0
|
||||
HcmV?d00001
|
||||
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
@ -1,26 +0,0 @@
|
||||
From f22928416285a9ac0ab6f8cd683c8dd5d95bf15b Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 5 Mar 2022 01:43:37 +0000
|
||||
Subject: [PATCH 17/21] UI: Reconfigure quick settings tiles
|
||||
|
||||
Change-Id: I743f52ef3a95db0ca2c02ae973faa4629e41885d
|
||||
---
|
||||
packages/SystemUI/res/values/config.xml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
|
||||
index 418bbc7c7932..245bde4c543a 100644
|
||||
--- a/packages/SystemUI/res/values/config.xml
|
||||
+++ b/packages/SystemUI/res/values/config.xml
|
||||
@@ -68,7 +68,7 @@
|
||||
|
||||
<!-- The default tiles to display in QuickSettings -->
|
||||
<string name="quick_settings_tiles_default" translatable="false">
|
||||
- internet,bt,flashlight,dnd,alarm,airplane,controls,wallet,rotation,battery,cast,screenrecord,mictoggle,cameratoggle
|
||||
+ wifi,cell,hotspot,location,rotation,flashlight
|
||||
</string>
|
||||
|
||||
<!-- The class path of the Safety Quick Settings Tile -->
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,81 @@
|
||||
From e799f913b42c58821408527a73aac4115d69df11 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 8 Aug 2021 01:43:42 +0000
|
||||
Subject: [PATCH 18/18] Revert "[DO NOT MERGE] Reduce padding in QS for small
|
||||
screens"
|
||||
|
||||
This reverts commit c3182c54802105c614848b26250c2682eb9900bf.
|
||||
---
|
||||
.../res/values-h740dp-port/dimens.xml | 27 -------------------
|
||||
packages/SystemUI/res/values/dimens.xml | 11 ++++----
|
||||
2 files changed, 5 insertions(+), 33 deletions(-)
|
||||
delete mode 100644 packages/SystemUI/res/values-h740dp-port/dimens.xml
|
||||
|
||||
diff --git a/packages/SystemUI/res/values-h740dp-port/dimens.xml b/packages/SystemUI/res/values-h740dp-port/dimens.xml
|
||||
deleted file mode 100644
|
||||
index 966066ffe56..00000000000
|
||||
--- a/packages/SystemUI/res/values-h740dp-port/dimens.xml
|
||||
+++ /dev/null
|
||||
@@ -1,27 +0,0 @@
|
||||
-<!--
|
||||
- ~ Copyright (C) 2020 The Android Open Source Project
|
||||
- ~
|
||||
- ~ Licensed under the Apache License, Version 2.0 (the "License");
|
||||
- ~ you may not use this file except in compliance with the License.
|
||||
- ~ You may obtain a copy of the License at
|
||||
- ~
|
||||
- ~ http://www.apache.org/licenses/LICENSE-2.0
|
||||
- ~
|
||||
- ~ Unless required by applicable law or agreed to in writing, software
|
||||
- ~ distributed under the License is distributed on an "AS IS" BASIS,
|
||||
- ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
- ~ See the License for the specific language governing permissions and
|
||||
- ~ limitations under the License
|
||||
- -->
|
||||
-
|
||||
-<resources>
|
||||
- <dimen name="qs_tile_height">106dp</dimen>
|
||||
- <dimen name="qs_tile_margin_vertical">24dp</dimen>
|
||||
-
|
||||
- <!-- The height of the qs customize header. Should be
|
||||
- (qs_panel_padding_top (48dp) + brightness_mirror_height (48dp) + qs_tile_margin_top (18dp)) -
|
||||
- (Toolbar_minWidth (56dp) + qs_tile_margin_top_bottom (12dp))
|
||||
- -->
|
||||
- <dimen name="qs_customize_header_min_height">46dp</dimen>
|
||||
- <dimen name="qs_tile_margin_top">18dp</dimen>
|
||||
-</resources>
|
||||
\ No newline at end of file
|
||||
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
|
||||
index 9172bfa823e..cb6f550ec49 100644
|
||||
--- a/packages/SystemUI/res/values/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values/dimens.xml
|
||||
@@ -490,21 +490,20 @@
|
||||
<!-- The size of the gesture span needed to activate the "pull" notification expansion -->
|
||||
<dimen name="pull_span_min">25dp</dimen>
|
||||
|
||||
- <dimen name="qs_tile_height">96dp</dimen>
|
||||
+ <dimen name="qs_tile_height">106dp</dimen>
|
||||
<!--notification_side_paddings + notification_content_margin_start - (qs_quick_tile_size - qs_tile_background_size) / 2 -->
|
||||
<dimen name="qs_tile_layout_margin_side">18dp</dimen>
|
||||
<dimen name="qs_tile_margin_horizontal">18dp</dimen>
|
||||
<dimen name="qs_tile_margin_horizontal_two_line">2dp</dimen>
|
||||
- <dimen name="qs_tile_margin_vertical">2dp</dimen>
|
||||
+ <dimen name="qs_tile_margin_vertical">24dp</dimen>
|
||||
<dimen name="qs_tile_margin_top_bottom">12dp</dimen>
|
||||
<dimen name="qs_tile_margin_top_bottom_negative">-12dp</dimen>
|
||||
<!-- The height of the qs customize header. Should be
|
||||
- (qs_panel_padding_top (48dp) + brightness_mirror_height (48dp) + qs_tile_margin_top (0dp)) -
|
||||
+ (qs_panel_padding_top (48dp) + brightness_mirror_height (48dp) + qs_tile_margin_top (18dp)) -
|
||||
(Toolbar_minWidth (56dp) + qs_tile_margin_top_bottom (12dp))
|
||||
-->
|
||||
- <dimen name="qs_customize_header_min_height">28dp</dimen>
|
||||
- <dimen name="qs_tile_margin_top">0dp</dimen>
|
||||
- <dimen name="qs_tile_icon_background_stroke_width">-1dp</dimen>
|
||||
+ <dimen name="qs_customize_header_min_height">46dp</dimen>
|
||||
+ <dimen name="qs_tile_margin_top">18dp</dimen>
|
||||
<dimen name="qs_tile_background_size">44dp</dimen>
|
||||
<dimen name="qs_quick_tile_size">48dp</dimen>
|
||||
<dimen name="qs_quick_tile_padding">12dp</dimen>
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,32 +0,0 @@
|
||||
From a0cd4caf1cd92218e44db206ec2f67839ce4dbe8 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 19 Oct 2021 12:09:34 +0000
|
||||
Subject: [PATCH 19/21] UI: Remove privacy dot
|
||||
|
||||
Change-Id: I5d2e2b3e36f027b4348a83030d4b4d3c4f0209d1
|
||||
---
|
||||
packages/SystemUI/res/values/dimens.xml | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
|
||||
index 30881992795d..7ead38868815 100644
|
||||
--- a/packages/SystemUI/res/values/dimens.xml
|
||||
+++ b/packages/SystemUI/res/values/dimens.xml
|
||||
@@ -1059,12 +1059,12 @@
|
||||
<dimen name="ongoing_appops_chip_min_width">56dp</dimen>
|
||||
<!-- Three privacy items. This value must not be exceeded -->
|
||||
<dimen name="ongoing_appops_chip_max_width">76dp</dimen>
|
||||
- <dimen name="ongoing_appops_dot_diameter">6dp</dimen>
|
||||
+ <dimen name="ongoing_appops_dot_diameter">0dp</dimen>
|
||||
<dimen name="ongoing_appops_chip_min_animation_width">10dp</dimen>
|
||||
<dimen name="ongoing_appops_chip_animation_in_status_bar_translation_x">15dp</dimen>
|
||||
<dimen name="ongoing_appops_chip_animation_out_status_bar_translation_x">7dp</dimen>
|
||||
<!-- Total minimum padding to enforce to ensure that the dot can always show -->
|
||||
- <dimen name="ongoing_appops_dot_min_padding">20dp</dimen>
|
||||
+ <dimen name="ongoing_appops_dot_min_padding">0dp</dimen>
|
||||
|
||||
<dimen name="ongoing_appops_dialog_side_margins">@dimen/notification_shade_content_margin_horizontal</dimen>
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,35 +0,0 @@
|
||||
From 7cacf0df0092432cd2347e0cbae0c1c3d0f5dcf9 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 22 Mar 2023 00:29:13 +0000
|
||||
Subject: [PATCH 20/21] UI: Restore quick settings fonts to pre-T-QPR2
|
||||
|
||||
TODO: Large header clock looks better in Regular - perhaps figure out how to transition smoothly?
|
||||
Change-Id: If2e57fee61b6bd4b6b7fedc7e3011164cd2cb56f
|
||||
---
|
||||
packages/SystemUI/res/values/styles.xml | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res/values/styles.xml b/packages/SystemUI/res/values/styles.xml
|
||||
index 6996e41e08da..5e6d45ac9305 100644
|
||||
--- a/packages/SystemUI/res/values/styles.xml
|
||||
+++ b/packages/SystemUI/res/values/styles.xml
|
||||
@@ -134,7 +134,7 @@
|
||||
<!-- This is hard coded to be sans-serif-condensed to match the icons -->
|
||||
|
||||
<style name="TextAppearance.QS.Status">
|
||||
- <item name="android:fontFamily">@*android:string/config_headlineFontFamily</item>
|
||||
+ <item name="android:fontFamily">@*android:string/config_headlineFontFamilyMedium</item>
|
||||
<item name="android:textColor">?android:attr/textColorPrimary</item>
|
||||
<item name="android:textSize">14sp</item>
|
||||
<item name="android:letterSpacing">0.01</item>
|
||||
@@ -152,6 +152,7 @@
|
||||
</style>
|
||||
|
||||
<style name="TextAppearance.QS.Status.Build">
|
||||
+ <item name="android:fontFamily">@*android:string/config_headlineFontFamily</item>
|
||||
<item name="android:textColor">?android:attr/textColorSecondary</item>
|
||||
</style>
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,47 +0,0 @@
|
||||
From 9732bf6c88d489f587e62d9f6b382e876295cbd6 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Fri, 30 Sep 2022 16:02:16 +0000
|
||||
Subject: [PATCH 21/21] UI: Revert to HSL luminance for wallpaper dark hints
|
||||
|
||||
Y U no test for consistency, Google?
|
||||
|
||||
Change-Id: Ie5663bdf518b4ef93d6deb634e707a32d052ac55
|
||||
---
|
||||
core/java/android/app/WallpaperColors.java | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/core/java/android/app/WallpaperColors.java b/core/java/android/app/WallpaperColors.java
|
||||
index 028f77fb21b0..63ccf961a2d8 100644
|
||||
--- a/core/java/android/app/WallpaperColors.java
|
||||
+++ b/core/java/android/app/WallpaperColors.java
|
||||
@@ -555,15 +555,15 @@ public final class WallpaperColors implements Parcelable {
|
||||
float[] tmpHsl = new float[3];
|
||||
for (int i = 0; i < pixels.length; i++) {
|
||||
int pixelColor = pixels[i];
|
||||
- ColorUtils.colorToHSL(pixelColor, tmpHsl);
|
||||
final int alpha = Color.alpha(pixelColor);
|
||||
|
||||
// Apply composite colors where the foreground is a black layer with an alpha value of
|
||||
// the dim amount and the background is the wallpaper pixel color.
|
||||
int compositeColors = ColorUtils.compositeColors(blackTransparent, pixelColor);
|
||||
|
||||
- // Calculate the adjusted luminance of the dimmed wallpaper pixel color.
|
||||
- double adjustedLuminance = ColorUtils.calculateLuminance(compositeColors);
|
||||
+ // Calculate the luminance of the dimmed wallpaper pixel color.
|
||||
+ ColorUtils.colorToHSL(compositeColors, tmpHsl);
|
||||
+ double luminance = tmpHsl[2];
|
||||
|
||||
// Make sure we don't have a dark pixel mass that will
|
||||
// make text illegible.
|
||||
@@ -575,7 +575,7 @@ public final class WallpaperColors implements Parcelable {
|
||||
pixels[i] = Color.RED;
|
||||
}
|
||||
}
|
||||
- totalLuminance += adjustedLuminance;
|
||||
+ totalLuminance += luminance;
|
||||
}
|
||||
|
||||
int hints = 0;
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,28 @@
|
||||
From e89e2d8f376fcb77078ba06138afa395f91ab55d Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 5 Jun 2019 05:10:00 +0000
|
||||
Subject: [PATCH] WiFi: Relax throttling greatly for foreground apps
|
||||
|
||||
...to the extent that it virtually doesn't exist
|
||||
|
||||
Change-Id: Ic01d08ef9c09de128ac08ecebb52aa7f90cf9e4e
|
||||
---
|
||||
service/java/com/android/server/wifi/ScanRequestProxy.java | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/service/java/com/android/server/wifi/ScanRequestProxy.java b/service/java/com/android/server/wifi/ScanRequestProxy.java
|
||||
index 0a9a446ab..3cedc343e 100644
|
||||
--- a/service/java/com/android/server/wifi/ScanRequestProxy.java
|
||||
+++ b/service/java/com/android/server/wifi/ScanRequestProxy.java
|
||||
@@ -67,7 +67,7 @@ public class ScanRequestProxy {
|
||||
private static final String TAG = "WifiScanRequestProxy";
|
||||
|
||||
@VisibleForTesting
|
||||
- public static final int SCAN_REQUEST_THROTTLE_TIME_WINDOW_FG_APPS_MS = 120 * 1000;
|
||||
+ public static final int SCAN_REQUEST_THROTTLE_TIME_WINDOW_FG_APPS_MS = 1;
|
||||
@VisibleForTesting
|
||||
public static final int SCAN_REQUEST_THROTTLE_MAX_IN_TIME_WINDOW_FG_APPS = 4;
|
||||
@VisibleForTesting
|
||||
--
|
||||
2.17.1
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,561 @@
|
||||
From 9dbc9d8105c3df1efe714d509622d338e7b9413f Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 26 Dec 2018 22:38:54 +0800
|
||||
Subject: [PATCH 2/3] DeskClock: Revert date and clock to Lollipop style
|
||||
|
||||
Also added dynamic date format based on alarm presence
|
||||
|
||||
Change-Id: I04ce41d4817c794edb1579dc3a493a1cf1e8d658
|
||||
---
|
||||
res/layout-land/main_clock_frame.xml | 1 +
|
||||
res/layout/date_and_next_alarm_time.xml | 6 ++----
|
||||
res/layout/digital_widget.xml | 4 ++--
|
||||
res/layout/digital_widget_sizer.xml | 2 --
|
||||
res/layout/main_clock_frame.xml | 1 +
|
||||
res/layout/stopwatch_time.xml | 1 -
|
||||
res/layout/timer_setup_time.xml | 2 +-
|
||||
res/layout/world_clock_remote_list_item.xml | 8 +++----
|
||||
res/values-h560dp/dimens.xml | 2 +-
|
||||
res/values-h650dp/dimens.xml | 2 +-
|
||||
res/values-v21/styles.xml | 8 +++----
|
||||
res/values-v23/styles.xml | 2 --
|
||||
res/values/dimens.xml | 10 ++++-----
|
||||
res/values/styles.xml | 5 +++--
|
||||
.../alarmclock/DigitalAppWidgetProvider.java | 10 +++++++--
|
||||
src/com/android/deskclock/ClockFragment.java | 21 ++++++++++++-------
|
||||
src/com/android/deskclock/Screensaver.java | 8 ++++---
|
||||
.../deskclock/ScreensaverActivity.java | 8 ++++---
|
||||
src/com/android/deskclock/Utils.java | 16 ++++++++++++--
|
||||
19 files changed, 70 insertions(+), 47 deletions(-)
|
||||
|
||||
diff --git a/res/layout-land/main_clock_frame.xml b/res/layout-land/main_clock_frame.xml
|
||||
index b72f62333..a1fa3557d 100644
|
||||
--- a/res/layout-land/main_clock_frame.xml
|
||||
+++ b/res/layout-land/main_clock_frame.xml
|
||||
@@ -38,6 +38,7 @@
|
||||
<com.android.deskclock.widget.AutoSizingTextClock
|
||||
android:id="@+id/digital_clock"
|
||||
style="@style/display_time"
|
||||
+ android:fontFamily="sans-serif-thin"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="none"
|
||||
diff --git a/res/layout/date_and_next_alarm_time.xml b/res/layout/date_and_next_alarm_time.xml
|
||||
index ad25502a8..e4edff237 100644
|
||||
--- a/res/layout/date_and_next_alarm_time.xml
|
||||
+++ b/res/layout/date_and_next_alarm_time.xml
|
||||
@@ -25,8 +25,7 @@
|
||||
android:id="@+id/date"
|
||||
style="@style/body"
|
||||
android:layout_width="wrap_content"
|
||||
- android:layout_height="wrap_content"
|
||||
- android:textAllCaps="true" />
|
||||
+ android:layout_height="wrap_content" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/nextAlarmIcon"
|
||||
@@ -45,7 +44,6 @@
|
||||
android:id="@+id/nextAlarm"
|
||||
style="@style/body"
|
||||
android:layout_width="wrap_content"
|
||||
- android:layout_height="wrap_content"
|
||||
- android:textAllCaps="true" />
|
||||
+ android:layout_height="wrap_content" />
|
||||
|
||||
</LinearLayout>
|
||||
\ No newline at end of file
|
||||
diff --git a/res/layout/digital_widget.xml b/res/layout/digital_widget.xml
|
||||
index c5b4837a6..7e2bae454 100644
|
||||
--- a/res/layout/digital_widget.xml
|
||||
+++ b/res/layout/digital_widget.xml
|
||||
@@ -43,13 +43,13 @@
|
||||
<TextClock
|
||||
android:id="@+id/date"
|
||||
style="@style/widget_label"
|
||||
+ android:fontFamily="sans-serif"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:ellipsize="none"
|
||||
android:includeFontPadding="false"
|
||||
android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
android:textColor="@color/white" />
|
||||
|
||||
<ImageView
|
||||
@@ -63,13 +63,13 @@
|
||||
<TextView
|
||||
android:id="@+id/nextAlarm"
|
||||
style="@style/widget_label"
|
||||
+ android:fontFamily="sans-serif"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:ellipsize="none"
|
||||
android:includeFontPadding="false"
|
||||
android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
android:textColor="@color/white" />
|
||||
|
||||
</LinearLayout>
|
||||
diff --git a/res/layout/digital_widget_sizer.xml b/res/layout/digital_widget_sizer.xml
|
||||
index f524cf536..7b08ca590 100644
|
||||
--- a/res/layout/digital_widget_sizer.xml
|
||||
+++ b/res/layout/digital_widget_sizer.xml
|
||||
@@ -46,7 +46,6 @@
|
||||
android:includeFontPadding="false"
|
||||
android:ellipsize="none"
|
||||
android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
android:textColor="@color/white" />
|
||||
|
||||
<!-- This view is drawn to a Bitmap and sent to the widget as an icon. -->
|
||||
@@ -71,7 +70,6 @@
|
||||
android:includeFontPadding="false"
|
||||
android:ellipsize="none"
|
||||
android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
android:textColor="@color/white" />
|
||||
|
||||
</LinearLayout>
|
||||
diff --git a/res/layout/main_clock_frame.xml b/res/layout/main_clock_frame.xml
|
||||
index ab960728f..2042c5b04 100644
|
||||
--- a/res/layout/main_clock_frame.xml
|
||||
+++ b/res/layout/main_clock_frame.xml
|
||||
@@ -51,6 +51,7 @@
|
||||
<com.android.deskclock.widget.AutoSizingTextClock
|
||||
android:id="@+id/digital_clock"
|
||||
style="@style/display_time"
|
||||
+ android:fontFamily="sans-serif-thin"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="none"
|
||||
diff --git a/res/layout/stopwatch_time.xml b/res/layout/stopwatch_time.xml
|
||||
index c1895b488..71320fcd0 100644
|
||||
--- a/res/layout/stopwatch_time.xml
|
||||
+++ b/res/layout/stopwatch_time.xml
|
||||
@@ -42,7 +42,6 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:duplicateParentState="true"
|
||||
- android:fontFamily="sans-serif"
|
||||
android:includeFontPadding="false"
|
||||
android:paddingEnd="30dp"
|
||||
android:paddingStart="3dp"
|
||||
diff --git a/res/layout/timer_setup_time.xml b/res/layout/timer_setup_time.xml
|
||||
index 572063fc6..14e9ea3bb 100644
|
||||
--- a/res/layout/timer_setup_time.xml
|
||||
+++ b/res/layout/timer_setup_time.xml
|
||||
@@ -32,7 +32,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:ellipsize="none"
|
||||
- android:fontFamily="sans-serif"
|
||||
+ android:fontFamily="sans-serif-light"
|
||||
android:fontFeatureSettings="tnum"
|
||||
android:includeFontPadding="false"
|
||||
android:singleLine="true"
|
||||
diff --git a/res/layout/world_clock_remote_list_item.xml b/res/layout/world_clock_remote_list_item.xml
|
||||
index 9a69cb517..f5f4eaa21 100644
|
||||
--- a/res/layout/world_clock_remote_list_item.xml
|
||||
+++ b/res/layout/world_clock_remote_list_item.xml
|
||||
@@ -58,13 +58,13 @@
|
||||
<TextView
|
||||
android:id="@+id/city_name_left"
|
||||
style="@style/widget_label"
|
||||
+ android:fontFamily="sans-serif"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="end"
|
||||
android:ellipsize="end"
|
||||
android:includeFontPadding="false"
|
||||
android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/city_widget_name_font_size" />
|
||||
|
||||
@@ -73,6 +73,7 @@
|
||||
<TextView
|
||||
android:id="@+id/city_day_left"
|
||||
style="@style/widget_label"
|
||||
+ android:fontFamily="sans-serif"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/style_label_space"
|
||||
@@ -81,7 +82,6 @@
|
||||
android:format24Hour="@string/abbrev_wday"
|
||||
android:includeFontPadding="false"
|
||||
android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/city_widget_name_font_size" />
|
||||
|
||||
@@ -120,13 +120,13 @@
|
||||
<TextView
|
||||
android:id="@+id/city_name_right"
|
||||
style="@style/widget_label"
|
||||
+ android:fontFamily="sans-serif"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="end"
|
||||
android:ellipsize="end"
|
||||
android:includeFontPadding="false"
|
||||
android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/city_widget_name_font_size" />
|
||||
|
||||
@@ -135,6 +135,7 @@
|
||||
<TextView
|
||||
android:id="@+id/city_day_right"
|
||||
style="@style/widget_label"
|
||||
+ android:fontFamily="sans-serif"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/style_label_space"
|
||||
@@ -143,7 +144,6 @@
|
||||
android:format24Hour="@string/abbrev_wday"
|
||||
android:includeFontPadding="false"
|
||||
android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/city_widget_name_font_size" />
|
||||
|
||||
diff --git a/res/values-h560dp/dimens.xml b/res/values-h560dp/dimens.xml
|
||||
index 003a5ad9f..6e25621ab 100644
|
||||
--- a/res/values-h560dp/dimens.xml
|
||||
+++ b/res/values-h560dp/dimens.xml
|
||||
@@ -16,5 +16,5 @@
|
||||
|
||||
<resources>
|
||||
<!-- The maximum size of the font for the time in widgets. -->
|
||||
- <dimen name="widget_max_clock_font_size">96dp</dimen>
|
||||
+ <dimen name="widget_max_clock_font_size">88dp</dimen>
|
||||
</resources>
|
||||
\ No newline at end of file
|
||||
diff --git a/res/values-h650dp/dimens.xml b/res/values-h650dp/dimens.xml
|
||||
index 2cc58cb32..6e25621ab 100644
|
||||
--- a/res/values-h650dp/dimens.xml
|
||||
+++ b/res/values-h650dp/dimens.xml
|
||||
@@ -16,5 +16,5 @@
|
||||
|
||||
<resources>
|
||||
<!-- The maximum size of the font for the time in widgets. -->
|
||||
- <dimen name="widget_max_clock_font_size">100dp</dimen>
|
||||
+ <dimen name="widget_max_clock_font_size">88dp</dimen>
|
||||
</resources>
|
||||
\ No newline at end of file
|
||||
diff --git a/res/values-v21/styles.xml b/res/values-v21/styles.xml
|
||||
index f1dca16c0..7bc382a4d 100644
|
||||
--- a/res/values-v21/styles.xml
|
||||
+++ b/res/values-v21/styles.xml
|
||||
@@ -18,17 +18,17 @@
|
||||
<resources>
|
||||
|
||||
<style name="body">
|
||||
- <item name="android:textSize">14sp</item>
|
||||
+ <item name="android:textSize">16sp</item>
|
||||
<item name="android:textColor">@color/white</item>
|
||||
- <item name="android:fontFamily">sans-serif-medium</item>
|
||||
+ <item name="android:fontFamily">sans-serif</item>
|
||||
</style>
|
||||
|
||||
<style name="PrimaryLabelTextAppearance" parent="PrimaryLabelTextParentAppearance">
|
||||
- <item name="android:fontFamily">sans-serif-medium</item>
|
||||
+ <item name="android:fontFamily">sans-serif</item>
|
||||
</style>
|
||||
|
||||
<style name="SecondaryLabelTextAppearance" parent="SecondaryLabelTextParentAppearance">
|
||||
- <item name="android:fontFamily">sans-serif-medium</item>
|
||||
+ <item name="android:fontFamily">sans-serif</item>
|
||||
</style>
|
||||
|
||||
</resources>
|
||||
diff --git a/res/values-v23/styles.xml b/res/values-v23/styles.xml
|
||||
index 34dcf5d73..6bf964256 100644
|
||||
--- a/res/values-v23/styles.xml
|
||||
+++ b/res/values-v23/styles.xml
|
||||
@@ -26,8 +26,6 @@
|
||||
</style>
|
||||
|
||||
<style name="widget_label" parent="label">
|
||||
- <item name="android:textAllCaps">true</item>
|
||||
- <item name="android:letterSpacing">0.15</item>
|
||||
<item name="android:shadowRadius">@dimen/widget_shadow_radius</item>
|
||||
<item name="android:shadowColor">@color/widget_shadow_color</item>
|
||||
<item name="android:shadowDx">@dimen/widget_shadow_dx</item>
|
||||
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
|
||||
index 6a384e94b..442fdb1cc 100644
|
||||
--- a/res/values/dimens.xml
|
||||
+++ b/res/values/dimens.xml
|
||||
@@ -44,7 +44,7 @@
|
||||
<dimen name="alarm_lockscreen_bottom_margin">40dp</dimen>
|
||||
|
||||
<dimen name="main_clock_font_size">64sp</dimen>
|
||||
- <dimen name="main_clock_digital_font_size">90sp</dimen>
|
||||
+ <dimen name="main_clock_digital_font_size">88sp</dimen>
|
||||
<dimen name="main_clock_digital_padding">24dp</dimen>
|
||||
<dimen name="big_font_size">32sp</dimen>
|
||||
<dimen name="label_font_size">16sp</dimen>
|
||||
@@ -93,15 +93,15 @@
|
||||
<dimen name="digital_widget_city_24_medium_font_size">40sp</dimen>
|
||||
|
||||
<!-- The fixed size of the font for the city name / day of week in the city widget. -->
|
||||
- <dimen name="city_widget_name_font_size">10dp</dimen>
|
||||
+ <dimen name="city_widget_name_font_size">12dp</dimen>
|
||||
<!-- The maximum size of the font for the time in widgets. -->
|
||||
<dimen name="widget_max_clock_font_size">88dp</dimen>
|
||||
<dimen name="widget_min_world_city_list_size">80dp</dimen>
|
||||
|
||||
<!-- shadow styles for widget text with drop shadows -->
|
||||
- <item name="widget_shadow_radius" format="float" type="dimen">2.75</item>
|
||||
- <item name="widget_shadow_dx" format="float" type="dimen">2.0</item>
|
||||
- <item name="widget_shadow_dy" format="float" type="dimen">2.0</item>
|
||||
+ <item name="widget_shadow_radius" format="float" type="dimen">0</item>
|
||||
+ <item name="widget_shadow_dx" format="float" type="dimen">0</item>
|
||||
+ <item name="widget_shadow_dy" format="float" type="dimen">0</item>
|
||||
|
||||
<!-- Divider height -->
|
||||
<dimen name="hairline_height">1dp</dimen>
|
||||
diff --git a/res/values/styles.xml b/res/values/styles.xml
|
||||
index fbe62ae3a..ca60e46b8 100644
|
||||
--- a/res/values/styles.xml
|
||||
+++ b/res/values/styles.xml
|
||||
@@ -51,12 +51,13 @@
|
||||
<style name="world_clock_time">
|
||||
<item name="android:textSize">48sp</item>
|
||||
<item name="android:textColor">@color/white</item>
|
||||
- <item name="android:fontFamily">sans-serif-light</item>
|
||||
+ <item name="android:fontFamily">sans-serif-thin</item>
|
||||
</style>
|
||||
|
||||
<style name="body">
|
||||
- <item name="android:textSize">14sp</item>
|
||||
+ <item name="android:textSize">16sp</item>
|
||||
<item name="android:textColor">@color/white</item>
|
||||
+ <item name="android:fontFamily">sans-serif</item>
|
||||
</style>
|
||||
|
||||
<style name="big_thin">
|
||||
diff --git a/src/com/android/alarmclock/DigitalAppWidgetProvider.java b/src/com/android/alarmclock/DigitalAppWidgetProvider.java
|
||||
index 3be07eca7..86f1d991e 100644
|
||||
--- a/src/com/android/alarmclock/DigitalAppWidgetProvider.java
|
||||
+++ b/src/com/android/alarmclock/DigitalAppWidgetProvider.java
|
||||
@@ -453,7 +453,13 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
*/
|
||||
private static String getDateFormat(Context context) {
|
||||
final Locale locale = Locale.getDefault();
|
||||
- final String skeleton = context.getString(R.string.abbrev_wday_month_day_no_year);
|
||||
+ final String nextAlarmTime = Utils.getNextAlarm(context);
|
||||
+ final String skeleton;
|
||||
+ if (TextUtils.isEmpty(nextAlarmTime)) {
|
||||
+ skeleton = context.getString(R.string.full_wday_month_day_no_year);
|
||||
+ } else {
|
||||
+ skeleton = context.getString(R.string.abbrev_wday_month_day_no_year);
|
||||
+ }
|
||||
return DateFormat.getBestDateTimePattern(locale, skeleton);
|
||||
}
|
||||
|
||||
@@ -495,7 +501,7 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
private int getClockFontSizePx() { return mClockFontSizePx; }
|
||||
private void setClockFontSizePx(int clockFontSizePx) {
|
||||
mClockFontSizePx = clockFontSizePx;
|
||||
- mFontSizePx = max(1, round(clockFontSizePx / 7.5f));
|
||||
+ mFontSizePx = max(1, round(clockFontSizePx / 5.5f));
|
||||
mIconFontSizePx = (int) (mFontSizePx * 1.4f);
|
||||
mIconPaddingPx = mFontSizePx / 3;
|
||||
}
|
||||
diff --git a/src/com/android/deskclock/ClockFragment.java b/src/com/android/deskclock/ClockFragment.java
|
||||
index b487e52be..1459094ee 100644
|
||||
--- a/src/com/android/deskclock/ClockFragment.java
|
||||
+++ b/src/com/android/deskclock/ClockFragment.java
|
||||
@@ -80,6 +80,7 @@ public final class ClockFragment extends DeskClockFragment {
|
||||
private SelectedCitiesAdapter mCityAdapter;
|
||||
private RecyclerView mCityList;
|
||||
private String mDateFormat;
|
||||
+ private String mDateFormatAlarm;
|
||||
private String mDateFormatForAccessibility;
|
||||
|
||||
/**
|
||||
@@ -103,11 +104,12 @@ public final class ClockFragment extends DeskClockFragment {
|
||||
|
||||
final View fragmentView = inflater.inflate(R.layout.clock_fragment, container, false);
|
||||
|
||||
- mDateFormat = getString(R.string.abbrev_wday_month_day_no_year);
|
||||
+ mDateFormat = getString(R.string.full_wday_month_day_no_year);
|
||||
+ mDateFormatAlarm = getString(R.string.abbrev_wday_month_day_no_year);
|
||||
mDateFormatForAccessibility = getString(R.string.full_wday_month_day_no_year);
|
||||
|
||||
mCityAdapter = new SelectedCitiesAdapter(getActivity(), mDateFormat,
|
||||
- mDateFormatForAccessibility);
|
||||
+ mDateFormatAlarm, mDateFormatForAccessibility);
|
||||
|
||||
mCityList = (RecyclerView) fragmentView.findViewById(R.id.cities);
|
||||
mCityList.setLayoutManager(new LinearLayoutManager(getActivity()));
|
||||
@@ -129,7 +131,7 @@ public final class ClockFragment extends DeskClockFragment {
|
||||
mDigitalClock = (TextClock) mClockFrame.findViewById(R.id.digital_clock);
|
||||
mAnalogClock = (AnalogClock) mClockFrame.findViewById(R.id.analog_clock);
|
||||
Utils.setClockIconTypeface(mClockFrame);
|
||||
- Utils.updateDate(mDateFormat, mDateFormatForAccessibility, mClockFrame);
|
||||
+ Utils.updateDate(getActivity(), mDateFormat, mDateFormatAlarm, mDateFormatForAccessibility, mClockFrame);
|
||||
Utils.setClockStyle(mDigitalClock, mAnalogClock);
|
||||
Utils.setClockSecondsEnabled(mDigitalClock, mAnalogClock);
|
||||
}
|
||||
@@ -146,7 +148,8 @@ public final class ClockFragment extends DeskClockFragment {
|
||||
|
||||
final Activity activity = getActivity();
|
||||
|
||||
- mDateFormat = getString(R.string.abbrev_wday_month_day_no_year);
|
||||
+ mDateFormat = getString(R.string.full_wday_month_day_no_year);
|
||||
+ mDateFormatAlarm = getString(R.string.abbrev_wday_month_day_no_year);
|
||||
mDateFormatForAccessibility = getString(R.string.full_wday_month_day_no_year);
|
||||
|
||||
// Watch for system events that effect clock time or format.
|
||||
@@ -348,13 +351,15 @@ public final class ClockFragment extends DeskClockFragment {
|
||||
private final Context mContext;
|
||||
private final boolean mIsPortrait;
|
||||
private final boolean mShowHomeClock;
|
||||
- private final String mDateFormat;
|
||||
- private final String mDateFormatForAccessibility;
|
||||
+ private static String mDateFormat;
|
||||
+ private static String mDateFormatAlarm;
|
||||
+ private static String mDateFormatForAccessibility;
|
||||
|
||||
private SelectedCitiesAdapter(Context context, String dateFormat,
|
||||
- String dateFormatForAccessibility) {
|
||||
+ String dateFormatAlarm, String dateFormatForAccessibility) {
|
||||
mContext = context;
|
||||
mDateFormat = dateFormat;
|
||||
+ mDateFormatAlarm = dateFormatAlarm;
|
||||
mDateFormatForAccessibility = dateFormatForAccessibility;
|
||||
mInflater = LayoutInflater.from(context);
|
||||
mIsPortrait = Utils.isPortrait(context);
|
||||
@@ -541,7 +546,7 @@ public final class ClockFragment extends DeskClockFragment {
|
||||
String dateFormatForAccessibility, boolean showHairline) {
|
||||
Utils.refreshAlarm(context, itemView);
|
||||
|
||||
- Utils.updateDate(dateFormat, dateFormatForAccessibility, itemView);
|
||||
+ Utils.updateDate(context, mDateFormat, mDateFormatAlarm, mDateFormatForAccessibility, itemView);
|
||||
Utils.setClockStyle(mDigitalClock, mAnalogClock);
|
||||
mHairline.setVisibility(showHairline ? VISIBLE : GONE);
|
||||
|
||||
diff --git a/src/com/android/deskclock/Screensaver.java b/src/com/android/deskclock/Screensaver.java
|
||||
index 68899d96e..7f01d880a 100644
|
||||
--- a/src/com/android/deskclock/Screensaver.java
|
||||
+++ b/src/com/android/deskclock/Screensaver.java
|
||||
@@ -43,6 +43,7 @@ public final class Screensaver extends DreamService {
|
||||
private MoveScreensaverRunnable mPositionUpdater;
|
||||
|
||||
private String mDateFormat;
|
||||
+ private String mDateFormatAlarm;
|
||||
private String mDateFormatForAccessibility;
|
||||
|
||||
private View mContentView;
|
||||
@@ -63,7 +64,7 @@ public final class Screensaver extends DreamService {
|
||||
private final Runnable mMidnightUpdater = new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
- Utils.updateDate(mDateFormat, mDateFormatForAccessibility, mContentView);
|
||||
+ Utils.updateDate(Screensaver.this, mDateFormat, mDateFormatAlarm, mDateFormatForAccessibility, mContentView);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -84,7 +85,8 @@ public final class Screensaver extends DreamService {
|
||||
setTheme(R.style.Theme_DeskClock);
|
||||
super.onCreate();
|
||||
|
||||
- mDateFormat = getString(R.string.abbrev_wday_month_day_no_year);
|
||||
+ mDateFormat = getString(R.string.full_wday_month_day_no_year);
|
||||
+ mDateFormatAlarm = getString(R.string.abbrev_wday_month_day_no_year);
|
||||
mDateFormatForAccessibility = getString(R.string.full_wday_month_day_no_year);
|
||||
}
|
||||
|
||||
@@ -129,7 +131,7 @@ public final class Screensaver extends DreamService {
|
||||
getContentResolver().registerContentObserver(uri, false, mSettingsContentObserver);
|
||||
}
|
||||
|
||||
- Utils.updateDate(mDateFormat, mDateFormatForAccessibility, mContentView);
|
||||
+ Utils.updateDate(this, mDateFormat, mDateFormatAlarm, mDateFormatForAccessibility, mContentView);
|
||||
Utils.refreshAlarm(this, mContentView);
|
||||
|
||||
startPositionUpdater();
|
||||
diff --git a/src/com/android/deskclock/ScreensaverActivity.java b/src/com/android/deskclock/ScreensaverActivity.java
|
||||
index c7d54af3f..14c9bab00 100644
|
||||
--- a/src/com/android/deskclock/ScreensaverActivity.java
|
||||
+++ b/src/com/android/deskclock/ScreensaverActivity.java
|
||||
@@ -87,11 +87,12 @@ public class ScreensaverActivity extends BaseActivity {
|
||||
private final Runnable mMidnightUpdater = new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
- Utils.updateDate(mDateFormat, mDateFormatForAccessibility, mContentView);
|
||||
+ Utils.updateDate(ScreensaverActivity.this, mDateFormat, mDateFormatAlarm, mDateFormatForAccessibility, mContentView);
|
||||
}
|
||||
};
|
||||
|
||||
private String mDateFormat;
|
||||
+ private String mDateFormatAlarm;
|
||||
private String mDateFormatForAccessibility;
|
||||
|
||||
private View mContentView;
|
||||
@@ -103,7 +104,8 @@ public class ScreensaverActivity extends BaseActivity {
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
- mDateFormat = getString(R.string.abbrev_wday_month_day_no_year);
|
||||
+ mDateFormat = getString(R.string.full_wday_month_day_no_year);
|
||||
+ mDateFormatAlarm = getString(R.string.abbrev_wday_month_day_no_year);
|
||||
mDateFormatForAccessibility = getString(R.string.full_wday_month_day_no_year);
|
||||
|
||||
setContentView(R.layout.desk_clock_saver);
|
||||
@@ -160,7 +162,7 @@ public class ScreensaverActivity extends BaseActivity {
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
|
||||
- Utils.updateDate(mDateFormat, mDateFormatForAccessibility, mContentView);
|
||||
+ Utils.updateDate(ScreensaverActivity.this, mDateFormat, mDateFormatAlarm, mDateFormatForAccessibility, mContentView);
|
||||
Utils.refreshAlarm(ScreensaverActivity.this, mContentView);
|
||||
|
||||
startPositionUpdater();
|
||||
diff --git a/src/com/android/deskclock/Utils.java b/src/com/android/deskclock/Utils.java
|
||||
index 6d97912f7..cba5c0909 100644
|
||||
--- a/src/com/android/deskclock/Utils.java
|
||||
+++ b/src/com/android/deskclock/Utils.java
|
||||
@@ -353,6 +353,11 @@ public class Utils {
|
||||
nextAlarmView.setVisibility(View.GONE);
|
||||
nextAlarmIconView.setVisibility(View.GONE);
|
||||
}
|
||||
+
|
||||
+ String mDateFormat = context.getString(R.string.full_wday_month_day_no_year);
|
||||
+ String mDateFormatAlarm = context.getString(R.string.abbrev_wday_month_day_no_year);
|
||||
+ String mDateFormatForAccessibility = context.getString(R.string.full_wday_month_day_no_year);
|
||||
+ Utils.updateDate(context, mDateFormat, mDateFormatAlarm, mDateFormatForAccessibility, clock);
|
||||
}
|
||||
|
||||
public static void setClockIconTypeface(View clock) {
|
||||
@@ -363,14 +368,21 @@ public class Utils {
|
||||
/**
|
||||
* Clock views can call this to refresh their date.
|
||||
**/
|
||||
- public static void updateDate(String dateSkeleton, String descriptionSkeleton, View clock) {
|
||||
+ public static void updateDate(Context context, String dateSkeleton, String dateSkeletonAlarm, String descriptionSkeleton, View clock) {
|
||||
final TextView dateDisplay = (TextView) clock.findViewById(R.id.date);
|
||||
if (dateDisplay == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
final Locale l = Locale.getDefault();
|
||||
- final String datePattern = DateFormat.getBestDateTimePattern(l, dateSkeleton);
|
||||
+ final String datePattern;
|
||||
+ final String alarm = getNextAlarm(context);
|
||||
+ if (!TextUtils.isEmpty(alarm)) {
|
||||
+ datePattern = DateFormat.getBestDateTimePattern(l, dateSkeletonAlarm);
|
||||
+ } else {
|
||||
+ datePattern = DateFormat.getBestDateTimePattern(l, dateSkeleton);
|
||||
+ }
|
||||
+
|
||||
final String descriptionPattern = DateFormat.getBestDateTimePattern(l, descriptionSkeleton);
|
||||
|
||||
final Date now = new Date();
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,610 +0,0 @@
|
||||
From 3430de2c592c9d9b4a08c16477fff4ad1a4ca775 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 19 Jan 2022 18:04:36 +0000
|
||||
Subject: [PATCH 3/4] DeskClock: Adapt digital clocks to S style
|
||||
|
||||
Lollipop is so yesterday...
|
||||
Bring the layouts of various digital clocks (app, widget, daydream)
|
||||
in-line, and adjust their styles to match the custom keyguard on S
|
||||
|
||||
Caveats/TODO:
|
||||
- Widget swallows all touch events, even when touching an empty area
|
||||
- World clocks in widgets are left untouched
|
||||
|
||||
Change-Id: I10c6fa213c89ac2f6e342be13fdd6390f7f787b0
|
||||
---
|
||||
res/layout/date_and_next_alarm_time.xml | 53 +++++++------
|
||||
res/layout/desk_clock_saver.xml | 10 +--
|
||||
res/layout/digital_widget.xml | 69 ++++++++---------
|
||||
res/layout/digital_widget_sizer.xml | 77 ++++++++-----------
|
||||
res/layout/main_clock_frame.xml | 36 +++------
|
||||
res/values/dimens.xml | 12 ++-
|
||||
res/values/styles.xml | 18 +++++
|
||||
.../alarmclock/DigitalAppWidgetProvider.java | 31 ++++----
|
||||
src/com/android/deskclock/AlarmUtils.java | 2 +-
|
||||
src/com/android/deskclock/ClockFragment.java | 3 -
|
||||
src/com/android/deskclock/Utils.java | 19 -----
|
||||
11 files changed, 155 insertions(+), 175 deletions(-)
|
||||
|
||||
diff --git a/res/layout/date_and_next_alarm_time.xml b/res/layout/date_and_next_alarm_time.xml
|
||||
index 9a0cb9103..b29ffedcf 100644
|
||||
--- a/res/layout/date_and_next_alarm_time.xml
|
||||
+++ b/res/layout/date_and_next_alarm_time.xml
|
||||
@@ -18,36 +18,41 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
- android:layout_gravity="center_vertical"
|
||||
- android:gravity="center">
|
||||
+ android:gravity="center_vertical|start"
|
||||
+ android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/date"
|
||||
- style="@style/body"
|
||||
+ style="@style/sc_keyguard_row"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:textAllCaps="true"
|
||||
+ android:paddingTop="@dimen/sc_keyguard_status_area_top_padding"
|
||||
+ android:paddingStart="@dimen/sc_keyguard_row_date_start_padding"
|
||||
tools:text="Sa., 01.01."/>
|
||||
|
||||
- <TextView
|
||||
- android:id="@+id/nextAlarmIcon"
|
||||
- style="@style/body"
|
||||
- android:layout_width="wrap_content"
|
||||
- android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center"
|
||||
- android:layout_marginEnd="@dimen/alarm_icon_padding"
|
||||
- android:layout_marginStart="@dimen/alarm_icon_padding"
|
||||
- android:ellipsize="none"
|
||||
- android:includeFontPadding="false"
|
||||
- android:maxLines="1"
|
||||
- android:text="@string/clock_emoji" />
|
||||
-
|
||||
- <TextView
|
||||
- android:id="@+id/nextAlarm"
|
||||
- style="@style/body"
|
||||
- android:layout_width="wrap_content"
|
||||
- android:layout_height="wrap_content"
|
||||
- android:textAllCaps="true"
|
||||
- tools:text="Mo., 07:00"/>
|
||||
+ <LinearLayout
|
||||
+ android:layout_width="wrap_content"
|
||||
+ android:layout_height="wrap_content"
|
||||
+ android:paddingTop="@dimen/sc_keyguard_row_top_padding"
|
||||
+ android:paddingStart="@dimen/sc_keyguard_row_alarm_start_padding">
|
||||
+
|
||||
+ <TextView
|
||||
+ android:id="@+id/nextAlarmIcon"
|
||||
+ style="@style/sc_keyguard_row"
|
||||
+ android:layout_width="wrap_content"
|
||||
+ android:layout_height="wrap_content"
|
||||
+ android:layout_gravity="center"
|
||||
+ android:layout_marginEnd="@dimen/alarm_icon_padding"
|
||||
+ android:text="@string/clock_emoji"
|
||||
+ android:textSize="@dimen/sc_keyguard_alarm_icon_size" />
|
||||
+
|
||||
+ <TextView
|
||||
+ android:id="@+id/nextAlarm"
|
||||
+ style="@style/sc_keyguard_row"
|
||||
+ android:layout_width="wrap_content"
|
||||
+ android:layout_height="wrap_content"
|
||||
+ tools:text="Mo., 07:00"/>
|
||||
+
|
||||
+ </LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
diff --git a/res/layout/desk_clock_saver.xml b/res/layout/desk_clock_saver.xml
|
||||
index c147bf7cd..d24219dbb 100644
|
||||
--- a/res/layout/desk_clock_saver.xml
|
||||
+++ b/res/layout/desk_clock_saver.xml
|
||||
@@ -42,16 +42,10 @@
|
||||
|
||||
<TextClock
|
||||
android:id="@+id/digital_clock"
|
||||
- style="@style/big_thin"
|
||||
+ style="@style/sc_keyguard_clock"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center"
|
||||
- android:layout_marginBottom="@dimen/bottom_text_spacing_digital"
|
||||
- android:ellipsize="none"
|
||||
- android:gravity="center"
|
||||
- android:singleLine="true"
|
||||
- android:textColor="@color/white"
|
||||
- android:textSize="@dimen/main_clock_font_size" />
|
||||
+ android:fontFamily="sans-serif-thin" />
|
||||
|
||||
<include layout="@layout/date_and_next_alarm_time" />
|
||||
|
||||
diff --git a/res/layout/digital_widget.xml b/res/layout/digital_widget.xml
|
||||
index 5cf896a84..e376a5a7a 100644
|
||||
--- a/res/layout/digital_widget.xml
|
||||
+++ b/res/layout/digital_widget.xml
|
||||
@@ -19,58 +19,53 @@
|
||||
android:id="@+id/digital_widget"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
- android:gravity="top|center_horizontal"
|
||||
+ android:gravity="center"
|
||||
android:orientation="vertical">
|
||||
|
||||
- <TextClock
|
||||
- android:id="@+id/clock"
|
||||
- style="@style/widget_big_thin"
|
||||
- android:layout_width="wrap_content"
|
||||
- android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center_horizontal|top"
|
||||
- android:ellipsize="none"
|
||||
- android:format12Hour="@string/lock_screen_12_hour_format"
|
||||
- android:format24Hour="@string/lock_screen_24_hour_format"
|
||||
- android:includeFontPadding="false"
|
||||
- android:singleLine="true"
|
||||
- android:textColor="@color/white" />
|
||||
-
|
||||
<LinearLayout
|
||||
+ android:id="@+id/digital_widget_actual"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center_horizontal|top">
|
||||
+ android:gravity="center_vertical|start"
|
||||
+ android:orientation="vertical">
|
||||
|
||||
<TextClock
|
||||
- android:id="@+id/date"
|
||||
- style="@style/widget_label"
|
||||
+ android:id="@+id/clock"
|
||||
+ style="@style/sc_keyguard_clock"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center"
|
||||
- android:ellipsize="none"
|
||||
- android:includeFontPadding="false"
|
||||
- android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
- android:textColor="@color/white" />
|
||||
+ android:format12Hour="@string/lock_screen_12_hour_format"
|
||||
+ android:format24Hour="@string/lock_screen_24_hour_format" />
|
||||
|
||||
- <ImageView
|
||||
- android:id="@+id/nextAlarmIcon"
|
||||
+ <TextClock
|
||||
+ android:id="@+id/date"
|
||||
+ style="@style/sc_keyguard_row"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center"
|
||||
- android:contentDescription="@null"
|
||||
- android:scaleType="center" />
|
||||
+ android:paddingTop="@dimen/sc_keyguard_status_area_top_padding"
|
||||
+ android:paddingStart="@dimen/sc_keyguard_row_date_start_padding" />
|
||||
|
||||
- <TextView
|
||||
- android:id="@+id/nextAlarm"
|
||||
- style="@style/widget_label"
|
||||
+ <LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center"
|
||||
- android:ellipsize="none"
|
||||
- android:includeFontPadding="false"
|
||||
- android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
- android:textColor="@color/white" />
|
||||
+ android:paddingTop="@dimen/sc_keyguard_row_top_padding"
|
||||
+ android:paddingStart="@dimen/sc_keyguard_row_alarm_start_padding">
|
||||
+
|
||||
+ <ImageView
|
||||
+ android:id="@+id/nextAlarmIcon"
|
||||
+ android:layout_width="wrap_content"
|
||||
+ android:layout_height="wrap_content"
|
||||
+ android:layout_gravity="center"
|
||||
+ android:contentDescription="@null"
|
||||
+ android:scaleType="center" />
|
||||
+
|
||||
+ <TextView
|
||||
+ android:id="@+id/nextAlarm"
|
||||
+ style="@style/sc_keyguard_row"
|
||||
+ android:layout_width="wrap_content"
|
||||
+ android:layout_height="wrap_content" />
|
||||
+
|
||||
+ </LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
diff --git a/res/layout/digital_widget_sizer.xml b/res/layout/digital_widget_sizer.xml
|
||||
index f524cf536..b9a28c79f 100644
|
||||
--- a/res/layout/digital_widget_sizer.xml
|
||||
+++ b/res/layout/digital_widget_sizer.xml
|
||||
@@ -15,64 +15,55 @@
|
||||
-->
|
||||
<LinearLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
- android:layout_width="wrap_content"
|
||||
- android:layout_height="wrap_content"
|
||||
+ android:layout_width="match_parent"
|
||||
+ android:layout_height="match_parent"
|
||||
+ android:gravity="center"
|
||||
android:orientation="vertical">
|
||||
|
||||
- <TextClock
|
||||
- android:id="@+id/clock"
|
||||
- style="@style/widget_big_thin"
|
||||
- android:layout_width="wrap_content"
|
||||
- android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center_horizontal|top"
|
||||
- android:includeFontPadding="false"
|
||||
- android:ellipsize="none"
|
||||
- android:format12Hour="@string/lock_screen_12_hour_format"
|
||||
- android:format24Hour="@string/lock_screen_24_hour_format"
|
||||
- android:singleLine="true"
|
||||
- android:textColor="@color/white" />
|
||||
-
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center_horizontal|top">
|
||||
+ android:gravity="center_vertical|start"
|
||||
+ android:orientation="vertical">
|
||||
|
||||
<TextClock
|
||||
- android:id="@+id/date"
|
||||
- style="@style/widget_label"
|
||||
+ android:id="@+id/clock"
|
||||
+ style="@style/sc_keyguard_clock"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center"
|
||||
- android:includeFontPadding="false"
|
||||
- android:ellipsize="none"
|
||||
- android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
- android:textColor="@color/white" />
|
||||
+ android:format12Hour="@string/lock_screen_12_hour_format"
|
||||
+ android:format24Hour="@string/lock_screen_24_hour_format" />
|
||||
|
||||
- <!-- This view is drawn to a Bitmap and sent to the widget as an icon. -->
|
||||
- <TextView
|
||||
- android:id="@+id/nextAlarmIcon"
|
||||
- style="@style/widget_label"
|
||||
+ <TextClock
|
||||
+ android:id="@+id/date"
|
||||
+ style="@style/sc_keyguard_row"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center"
|
||||
- android:includeFontPadding="false"
|
||||
- android:ellipsize="none"
|
||||
- android:singleLine="true"
|
||||
- android:text="@string/clock_emoji"
|
||||
- android:textColor="@color/white" />
|
||||
+ android:paddingTop="@dimen/sc_keyguard_status_area_top_padding"
|
||||
+ android:paddingStart="@dimen/sc_keyguard_row_date_start_padding" />
|
||||
|
||||
- <TextView
|
||||
- android:id="@+id/nextAlarm"
|
||||
- style="@style/widget_label"
|
||||
+ <LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_gravity="center"
|
||||
- android:includeFontPadding="false"
|
||||
- android:ellipsize="none"
|
||||
- android:singleLine="true"
|
||||
- android:textAllCaps="true"
|
||||
- android:textColor="@color/white" />
|
||||
+ android:paddingTop="@dimen/sc_keyguard_row_top_padding"
|
||||
+ android:paddingStart="@dimen/sc_keyguard_row_alarm_start_padding">
|
||||
+
|
||||
+ <!-- This view is drawn to a Bitmap and sent to the widget as an icon. -->
|
||||
+ <TextView
|
||||
+ android:id="@+id/nextAlarmIcon"
|
||||
+ style="@style/sc_keyguard_row"
|
||||
+ android:layout_width="wrap_content"
|
||||
+ android:layout_height="wrap_content"
|
||||
+ android:layout_gravity="center"
|
||||
+ android:text="@string/clock_emoji" />
|
||||
+
|
||||
+ <TextView
|
||||
+ android:id="@+id/nextAlarm"
|
||||
+ style="@style/sc_keyguard_row"
|
||||
+ android:layout_width="wrap_content"
|
||||
+ android:layout_height="wrap_content" />
|
||||
+
|
||||
+ </LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
diff --git a/res/layout/main_clock_frame.xml b/res/layout/main_clock_frame.xml
|
||||
index c26f61dbd..c2e84eaa3 100644
|
||||
--- a/res/layout/main_clock_frame.xml
|
||||
+++ b/res/layout/main_clock_frame.xml
|
||||
@@ -26,44 +26,28 @@
|
||||
android:layout_marginEnd="24dp"
|
||||
android:orientation="vertical">
|
||||
|
||||
- <androidx.constraintlayout.widget.ConstraintLayout
|
||||
- android:layout_width="match_parent"
|
||||
+ <LinearLayout
|
||||
+ android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_gravity="start">
|
||||
+ android:gravity="center_vertical|start"
|
||||
+ android:orientation="vertical">
|
||||
|
||||
<com.android.deskclock.AnalogClock
|
||||
android:id="@+id/analog_clock"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:layout_marginTop="@dimen/circle_margin_top"
|
||||
- app:layout_constraintBottom_toBottomOf="parent"
|
||||
- app:layout_constraintDimensionRatio="1:1"
|
||||
- app:layout_constraintEnd_toEndOf="parent"
|
||||
- app:layout_constraintStart_toStartOf="parent"
|
||||
- app:layout_constraintTop_toTopOf="parent"
|
||||
- app:layout_constraintWidth_percent="@dimen/analog_clock_width_percent"/>
|
||||
+ android:layout_marginTop="@dimen/circle_margin_top"/>
|
||||
|
||||
<com.android.deskclock.widget.AutoSizingTextClock
|
||||
android:id="@+id/digital_clock"
|
||||
- style="@style/display_time"
|
||||
- android:layout_width="match_parent"
|
||||
+ style="@style/sc_keyguard_clock"
|
||||
+ android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
- android:ellipsize="none"
|
||||
- android:includeFontPadding="false"
|
||||
android:paddingTop="@dimen/main_clock_digital_padding"
|
||||
- android:singleLine="true"
|
||||
- android:textSize="@dimen/main_clock_digital_font_size"
|
||||
- app:layout_constraintBottom_toBottomOf="parent"
|
||||
- app:layout_constraintStart_toStartOf="parent"
|
||||
- app:layout_constraintTop_toTopOf="parent"
|
||||
tools:text="01:23"/>
|
||||
|
||||
- </androidx.constraintlayout.widget.ConstraintLayout>
|
||||
+ <include layout="@layout/date_and_next_alarm_time" />
|
||||
+
|
||||
+ </LinearLayout>
|
||||
|
||||
- <include
|
||||
- layout="@layout/date_and_next_alarm_time"
|
||||
- android:id="@+id/date_and_next_alarm_time"
|
||||
- android:layout_width="wrap_content"
|
||||
- android:layout_height="wrap_content"
|
||||
- android:layout_gravity="start"/>
|
||||
</LinearLayout>
|
||||
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
|
||||
index c136fe25a..58a9fedc0 100644
|
||||
--- a/res/values/dimens.xml
|
||||
+++ b/res/values/dimens.xml
|
||||
@@ -62,7 +62,7 @@
|
||||
<dimen name="body_font_padding">4dp</dimen>
|
||||
|
||||
<dimen name="alarm_label_size">14sp</dimen>
|
||||
- <dimen name="alarm_icon_padding">6dp</dimen>
|
||||
+ <dimen name="alarm_icon_padding">7dp</dimen>
|
||||
|
||||
<dimen name="backspace_icon_size">24dp</dimen>
|
||||
<dimen name="no_alarms_size">90dp</dimen>
|
||||
@@ -144,4 +144,14 @@
|
||||
<dimen name="settings_padding">4dp</dimen>
|
||||
|
||||
<dimen name="analog_clock_width_percent">0.5</dimen>
|
||||
+
|
||||
+ <!-- Keyguard dimens, taken from S fwb -->
|
||||
+ <dimen name="sc_keyguard_clock_text_size">86dp</dimen>
|
||||
+ <dimen name="sc_keyguard_row_text_size">16dp</dimen>
|
||||
+ <dimen name="sc_keyguard_alarm_icon_size">21dp</dimen>
|
||||
+ <!-- Padding correction values, measured from S fwb -->
|
||||
+ <dimen name="sc_keyguard_status_area_top_padding">9dp</dimen>
|
||||
+ <dimen name="sc_keyguard_row_top_padding">11dp</dimen>
|
||||
+ <dimen name="sc_keyguard_row_date_start_padding">6dp</dimen>
|
||||
+ <dimen name="sc_keyguard_row_alarm_start_padding">5.5dp</dimen>
|
||||
</resources>
|
||||
diff --git a/res/values/styles.xml b/res/values/styles.xml
|
||||
index 8c6364344..159f24766 100644
|
||||
--- a/res/values/styles.xml
|
||||
+++ b/res/values/styles.xml
|
||||
@@ -209,4 +209,22 @@
|
||||
<item name="layout_constraintStart_toStartOf">parent</item>
|
||||
<item name="layout_constraintTop_toBottomOf">@id/timer_setup_time</item>
|
||||
</style>
|
||||
+
|
||||
+ <style name="sc_keyguard_clock">
|
||||
+ <item name="android:fontFamily">sans-serif-light</item>
|
||||
+ <item name="android:fontFeatureSettings">tnum</item>
|
||||
+ <item name="android:textSize">@dimen/sc_keyguard_clock_text_size</item>
|
||||
+ <item name="android:textColor">@color/white</item>
|
||||
+ <item name="android:ellipsize">none</item>
|
||||
+ <item name="android:includeFontPadding">false</item>
|
||||
+ <item name="android:maxLines">1</item>
|
||||
+ </style>
|
||||
+
|
||||
+ <style name="sc_keyguard_row">
|
||||
+ <item name="android:textSize">@dimen/sc_keyguard_row_text_size</item>
|
||||
+ <item name="android:textColor">@color/white</item>
|
||||
+ <item name="android:ellipsize">none</item>
|
||||
+ <item name="android:includeFontPadding">false</item>
|
||||
+ <item name="android:maxLines">1</item>
|
||||
+ </style>
|
||||
</resources>
|
||||
diff --git a/src/com/android/alarmclock/DigitalAppWidgetProvider.java b/src/com/android/alarmclock/DigitalAppWidgetProvider.java
|
||||
index b54a500c5..fb1b30aa7 100644
|
||||
--- a/src/com/android/alarmclock/DigitalAppWidgetProvider.java
|
||||
+++ b/src/com/android/alarmclock/DigitalAppWidgetProvider.java
|
||||
@@ -223,7 +223,7 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
if (Utils.isWidgetClickable(wm, widgetId)) {
|
||||
final Intent openApp = new Intent(context, DeskClock.class);
|
||||
final PendingIntent pi = PendingIntent.getActivity(context, 0, openApp, FLAG_IMMUTABLE);
|
||||
- rv.setOnClickPendingIntent(R.id.digital_widget, pi);
|
||||
+ rv.setOnClickPendingIntent(R.id.digital_widget_actual, pi);
|
||||
}
|
||||
|
||||
// Configure child views of the remote view.
|
||||
@@ -255,7 +255,7 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
final int targetWidthPx = portrait ? minWidthPx : maxWidthPx;
|
||||
final int targetHeightPx = portrait ? maxHeightPx : minHeightPx;
|
||||
final int largestClockFontSizePx =
|
||||
- resources.getDimensionPixelSize(R.dimen.widget_max_clock_font_size);
|
||||
+ resources.getDimensionPixelSize(R.dimen.sc_keyguard_clock_text_size);
|
||||
|
||||
// Create a size template that describes the widget bounds.
|
||||
final Sizes template = new Sizes(targetWidthPx, targetHeightPx, largestClockFontSizePx);
|
||||
@@ -327,13 +327,13 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
}
|
||||
|
||||
// Measure the widget at the largest possible size.
|
||||
- Sizes high = measure(template, template.getLargestClockFontSizePx(), sizer);
|
||||
+ Sizes high = measure(context, template, template.getLargestClockFontSizePx(), sizer);
|
||||
if (!high.hasViolations()) {
|
||||
return high;
|
||||
}
|
||||
|
||||
// Measure the widget at the smallest possible size.
|
||||
- Sizes low = measure(template, template.getSmallestClockFontSizePx(), sizer);
|
||||
+ Sizes low = measure(context, template, template.getSmallestClockFontSizePx(), sizer);
|
||||
if (low.hasViolations()) {
|
||||
return low;
|
||||
}
|
||||
@@ -345,7 +345,7 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
return low;
|
||||
}
|
||||
|
||||
- final Sizes midSize = measure(template, midFontSize, sizer);
|
||||
+ final Sizes midSize = measure(context, template, midFontSize, sizer);
|
||||
if (midSize.hasViolations()) {
|
||||
high = midSize;
|
||||
} else {
|
||||
@@ -411,7 +411,7 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
* the offscreen {@code sizer} view. Measure the {@code sizer} view and return the resulting
|
||||
* size measurements.
|
||||
*/
|
||||
- private static Sizes measure(Sizes template, int clockFontSize, View sizer) {
|
||||
+ private static Sizes measure(Context context, Sizes template, int clockFontSize, View sizer) {
|
||||
// Create a copy of the given template sizes.
|
||||
final Sizes measuredSizes = template.newSize();
|
||||
|
||||
@@ -422,13 +422,13 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
final TextView nextAlarmIcon = sizer.findViewById(R.id.nextAlarmIcon);
|
||||
|
||||
// Adjust the font sizes.
|
||||
- measuredSizes.setClockFontSizePx(clockFontSize);
|
||||
+ measuredSizes.setClockFontSizePx(context, clockFontSize);
|
||||
clock.setText(getLongestTimeString(clock));
|
||||
clock.setTextSize(COMPLEX_UNIT_PX, measuredSizes.mClockFontSizePx);
|
||||
date.setTextSize(COMPLEX_UNIT_PX, measuredSizes.mFontSizePx);
|
||||
nextAlarm.setTextSize(COMPLEX_UNIT_PX, measuredSizes.mFontSizePx);
|
||||
nextAlarmIcon.setTextSize(COMPLEX_UNIT_PX, measuredSizes.mIconFontSizePx);
|
||||
- nextAlarmIcon.setPadding(measuredSizes.mIconPaddingPx, 0, measuredSizes.mIconPaddingPx, 0);
|
||||
+ nextAlarmIcon.setPadding(0, 0, measuredSizes.mIconPaddingPx, 0);
|
||||
|
||||
// Measure and layout the sizer.
|
||||
final int widthSize = View.MeasureSpec.getSize(measuredSizes.mTargetWidthPx);
|
||||
@@ -509,12 +509,17 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
private int getLargestClockFontSizePx() { return mLargestClockFontSizePx; }
|
||||
private int getSmallestClockFontSizePx() { return mSmallestClockFontSizePx; }
|
||||
private int getClockFontSizePx() { return mClockFontSizePx; }
|
||||
- private void setClockFontSizePx(int clockFontSizePx) {
|
||||
+ private void setClockFontSizePx(Context context, int clockFontSizePx) {
|
||||
+ final Resources resources = context.getResources();
|
||||
+ int keyguardClockTextSizePx = resources.getDimensionPixelSize(R.dimen.sc_keyguard_clock_text_size);
|
||||
+ int keyguardRowTextSizePx = resources.getDimensionPixelSize(R.dimen.sc_keyguard_row_text_size);
|
||||
+ int keyguardAlarmIconSizePx = resources.getDimensionPixelSize(R.dimen.sc_keyguard_alarm_icon_size);
|
||||
+ int alarmIconPaddingPx = resources.getDimensionPixelSize(R.dimen.alarm_icon_padding);
|
||||
mClockFontSizePx = clockFontSizePx;
|
||||
- mFontSizePx = max(1, round(clockFontSizePx / 7.5f));
|
||||
- mIconFontSizePx = (int) (mFontSizePx * 1.4f);
|
||||
- mIconPaddingPx = mFontSizePx / 3;
|
||||
- }
|
||||
+ mFontSizePx = max(1, round(clockFontSizePx / (float) keyguardClockTextSizePx * (float) keyguardRowTextSizePx));
|
||||
+ mIconFontSizePx = max(1, round(clockFontSizePx / (float) keyguardClockTextSizePx * (float) keyguardAlarmIconSizePx));
|
||||
+ mIconPaddingPx = max(1, round(clockFontSizePx / (float) keyguardClockTextSizePx * (float) alarmIconPaddingPx));
|
||||
+ }
|
||||
|
||||
/**
|
||||
* @return the amount of widget height available to the world cities list
|
||||
diff --git a/src/com/android/deskclock/AlarmUtils.java b/src/com/android/deskclock/AlarmUtils.java
|
||||
index c3739bac8..5b931a46d 100644
|
||||
--- a/src/com/android/deskclock/AlarmUtils.java
|
||||
+++ b/src/com/android/deskclock/AlarmUtils.java
|
||||
@@ -38,7 +38,7 @@ import java.util.Locale;
|
||||
public class AlarmUtils {
|
||||
|
||||
public static String getFormattedTime(Context context, Calendar time) {
|
||||
- final String skeleton = DateFormat.is24HourFormat(context) ? "EHm" : "Ehma";
|
||||
+ final String skeleton = DateFormat.is24HourFormat(context) ? "Hm" : "hma";
|
||||
final String pattern = DateFormat.getBestDateTimePattern(Locale.getDefault(), skeleton);
|
||||
return (String) DateFormat.format(pattern, time);
|
||||
}
|
||||
diff --git a/src/com/android/deskclock/ClockFragment.java b/src/com/android/deskclock/ClockFragment.java
|
||||
index bf53584e4..7a0e3ae0b 100644
|
||||
--- a/src/com/android/deskclock/ClockFragment.java
|
||||
+++ b/src/com/android/deskclock/ClockFragment.java
|
||||
@@ -123,7 +123,6 @@ public final class ClockFragment extends DeskClockFragment {
|
||||
Utils.updateDate(mDateFormat, mDateFormatForAccessibility, mClockFrame);
|
||||
Utils.setClockStyle(mDigitalClock, mAnalogClock);
|
||||
Utils.setClockSecondsEnabled(mDigitalClock, mAnalogClock);
|
||||
- Utils.updateDateGravity(mClockFrame);
|
||||
}
|
||||
|
||||
// Schedule a runnable to update the date every quarter hour.
|
||||
@@ -151,7 +150,6 @@ public final class ClockFragment extends DeskClockFragment {
|
||||
if (mDigitalClock != null && mAnalogClock != null) {
|
||||
Utils.setClockStyle(mDigitalClock, mAnalogClock);
|
||||
Utils.setClockSecondsEnabled(mDigitalClock, mAnalogClock);
|
||||
- Utils.updateDateGravity(mClockFrame);
|
||||
}
|
||||
|
||||
final View view = getView();
|
||||
@@ -493,7 +491,6 @@ public final class ClockFragment extends DeskClockFragment {
|
||||
Utils.updateDate(dateFormat, dateFormatForAccessibility, itemView);
|
||||
Utils.setClockStyle(mDigitalClock, mAnalogClock);
|
||||
Utils.setClockSecondsEnabled(mDigitalClock, mAnalogClock);
|
||||
- Utils.updateDateGravity(itemView);
|
||||
}
|
||||
}
|
||||
}
|
||||
diff --git a/src/com/android/deskclock/Utils.java b/src/com/android/deskclock/Utils.java
|
||||
index 4eea6beba..4a5ad5a0a 100644
|
||||
--- a/src/com/android/deskclock/Utils.java
|
||||
+++ b/src/com/android/deskclock/Utils.java
|
||||
@@ -52,9 +52,7 @@ import android.text.style.RelativeSizeSpan;
|
||||
import android.text.style.StyleSpan;
|
||||
import android.text.style.TypefaceSpan;
|
||||
import android.util.ArraySet;
|
||||
-import android.view.Gravity;
|
||||
import android.view.View;
|
||||
-import android.widget.LinearLayout;
|
||||
import android.widget.TextClock;
|
||||
import android.widget.TextView;
|
||||
|
||||
@@ -302,23 +300,6 @@ public class Utils {
|
||||
dateDisplay.setContentDescription(new SimpleDateFormat(descriptionPattern, l).format(now));
|
||||
}
|
||||
|
||||
- public static void updateDateGravity(View clockFrame) {
|
||||
- View dateAndNextAlarm = clockFrame.findViewById(R.id.date_and_next_alarm_time);
|
||||
- LinearLayout.LayoutParams lp =
|
||||
- (LinearLayout.LayoutParams)dateAndNextAlarm.getLayoutParams();
|
||||
-
|
||||
- final DataModel.ClockStyle clockStyle = DataModel.getDataModel().getClockStyle();
|
||||
- switch (clockStyle) {
|
||||
- case ANALOG:
|
||||
- lp.gravity = Gravity.CENTER;
|
||||
- break;
|
||||
- case DIGITAL:
|
||||
- lp.gravity = Gravity.START;
|
||||
- break;
|
||||
- }
|
||||
- dateAndNextAlarm.setLayoutParams(lp);
|
||||
- }
|
||||
-
|
||||
/***
|
||||
* Formats the time in the TextClock according to the Locale with a special
|
||||
* formatting treatment for the am/pm label.
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,36 +1,37 @@
|
||||
From ef3810b1d55f079278f3ac3ef83f7b5b2eaaa7c1 Mon Sep 17 00:00:00 2001
|
||||
From 5778373cb0bfbf81bfb264930a61435a1c5eda2a Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 5 Sep 2021 00:30:33 +0000
|
||||
Subject: [PATCH 2/4] DeskClock: Remove night mode
|
||||
Subject: [PATCH 3/3] DeskClock: Remove night mode
|
||||
|
||||
Change-Id: I885f39027e78fcda397f1be59d17bc24bc66671a
|
||||
---
|
||||
res/xml/screensaver_settings.xml | 7 -------
|
||||
res/xml/screensaver_settings.xml | 8 +-------
|
||||
src/com/android/deskclock/Screensaver.java | 5 ++---
|
||||
src/com/android/deskclock/ScreensaverActivity.java | 2 +-
|
||||
3 files changed, 3 insertions(+), 11 deletions(-)
|
||||
3 files changed, 4 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/res/xml/screensaver_settings.xml b/res/xml/screensaver_settings.xml
|
||||
index 7b8c9764a..908f76fef 100644
|
||||
index 1680aab83..73375dcfa 100644
|
||||
--- a/res/xml/screensaver_settings.xml
|
||||
+++ b/res/xml/screensaver_settings.xml
|
||||
@@ -26,11 +26,4 @@
|
||||
android:title="@string/clock_style"
|
||||
app:iconSpaceReserved="false" />
|
||||
@@ -24,10 +24,4 @@
|
||||
android:key="screensaver_clock_style"
|
||||
android:title="@string/clock_style" />
|
||||
|
||||
- <CheckBoxPreference
|
||||
- android:defaultValue="true"
|
||||
- android:key="screensaver_night_mode"
|
||||
- android:summary="@string/night_mode_summary"
|
||||
- android:title="@string/night_mode_title"
|
||||
- app:iconSpaceReserved="false" />
|
||||
- android:title="@string/night_mode_title" />
|
||||
-
|
||||
</PreferenceScreen>
|
||||
-</PreferenceScreen>
|
||||
\ No newline at end of file
|
||||
+</PreferenceScreen>
|
||||
diff --git a/src/com/android/deskclock/Screensaver.java b/src/com/android/deskclock/Screensaver.java
|
||||
index ad92b1149..f6c03ed0a 100644
|
||||
index 7f01d880a..b295d7a77 100644
|
||||
--- a/src/com/android/deskclock/Screensaver.java
|
||||
+++ b/src/com/android/deskclock/Screensaver.java
|
||||
@@ -136,9 +136,8 @@ public final class Screensaver extends DreamService {
|
||||
@@ -166,9 +166,8 @@ public final class Screensaver extends DreamService {
|
||||
|
||||
private void setClockStyle() {
|
||||
Utils.setScreensaverClockStyle(mDigitalClock, mAnalogClock);
|
||||
@ -43,10 +44,10 @@ index ad92b1149..f6c03ed0a 100644
|
||||
|
||||
/**
|
||||
diff --git a/src/com/android/deskclock/ScreensaverActivity.java b/src/com/android/deskclock/ScreensaverActivity.java
|
||||
index b30f82ee7..90235351f 100644
|
||||
index 14c9bab00..912d59b2c 100644
|
||||
--- a/src/com/android/deskclock/ScreensaverActivity.java
|
||||
+++ b/src/com/android/deskclock/ScreensaverActivity.java
|
||||
@@ -101,7 +101,7 @@ public class ScreensaverActivity extends BaseActivity {
|
||||
@@ -119,7 +119,7 @@ public class ScreensaverActivity extends BaseActivity {
|
||||
Utils.setClockIconTypeface(mMainClockView);
|
||||
Utils.setTimeFormat((TextClock) digitalClock, false);
|
||||
Utils.setClockStyle(digitalClock, analogClock);
|
||||
@ -56,5 +57,5 @@ index b30f82ee7..90235351f 100644
|
||||
|
||||
mContentView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
@ -1,118 +0,0 @@
|
||||
From 169570068c3a78f7294d581b2df864ccd3057579 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 20 Jan 2022 04:42:03 +0000
|
||||
Subject: [PATCH 4/4] DeskClock: Wallpaper-based text coloring for digital
|
||||
clock widget
|
||||
|
||||
RemoteViews is such a restrictive PITA
|
||||
|
||||
Change-Id: Ie22c4980526575f73ebb4e56780d4c2193cc45d3
|
||||
---
|
||||
.../alarmclock/DigitalAppWidgetProvider.java | 57 +++++++++++++++++++
|
||||
1 file changed, 57 insertions(+)
|
||||
|
||||
diff --git a/src/com/android/alarmclock/DigitalAppWidgetProvider.java b/src/com/android/alarmclock/DigitalAppWidgetProvider.java
|
||||
index fb1b30aa7..c04528240 100644
|
||||
--- a/src/com/android/alarmclock/DigitalAppWidgetProvider.java
|
||||
+++ b/src/com/android/alarmclock/DigitalAppWidgetProvider.java
|
||||
@@ -38,6 +38,8 @@ import static java.lang.Math.round;
|
||||
import android.annotation.SuppressLint;
|
||||
import android.app.AlarmManager;
|
||||
import android.app.PendingIntent;
|
||||
+import android.app.WallpaperColors;
|
||||
+import android.app.WallpaperManager;
|
||||
import android.appwidget.AppWidgetManager;
|
||||
import android.appwidget.AppWidgetProvider;
|
||||
import android.content.BroadcastReceiver;
|
||||
@@ -111,12 +113,40 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
/** Intent used to deliver the {@link #ACTION_ON_DAY_CHANGE} callback. */
|
||||
private static final Intent DAY_CHANGE_INTENT = new Intent(ACTION_ON_DAY_CHANGE);
|
||||
|
||||
+ private static WallpaperManager mWallpaperManager;
|
||||
+ private static boolean mDarkText;
|
||||
+
|
||||
+ private static void relayoutAllWidgets(Context context) {
|
||||
+ final AppWidgetManager wm = AppWidgetManager.getInstance(context);
|
||||
+ final ComponentName provider = new ComponentName(context, DigitalAppWidgetProvider.class);
|
||||
+ final int[] widgetIds = wm.getAppWidgetIds(provider);
|
||||
+ for (int widgetId : widgetIds) {
|
||||
+ relayoutWidget(context, wm, widgetId, wm.getAppWidgetOptions(widgetId));
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ private static void addOnColorsChangedListener(Context context) {
|
||||
+ mWallpaperManager.addOnColorsChangedListener(new WallpaperManager.OnColorsChangedListener() {
|
||||
+ @Override
|
||||
+ public void onColorsChanged(WallpaperColors colors, int which) {
|
||||
+ relayoutAllWidgets(context);
|
||||
+ }
|
||||
+ }, null);
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public void onEnabled(Context context) {
|
||||
super.onEnabled(context);
|
||||
|
||||
// Schedule the day-change callback if necessary.
|
||||
updateDayChangeCallback(context);
|
||||
+
|
||||
+ // Listen for wallpaper color changes
|
||||
+ mWallpaperManager = WallpaperManager.getInstance(context);
|
||||
+ addOnColorsChangedListener(context);
|
||||
+
|
||||
+ // Force a relayout to pick up initial colors
|
||||
+ relayoutAllWidgets(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -215,6 +245,19 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
*/
|
||||
private static RemoteViews relayoutWidget(Context context, AppWidgetManager wm, int widgetId,
|
||||
Bundle options, boolean portrait) {
|
||||
+ // Determine text colors.
|
||||
+ if (mWallpaperManager == null) {
|
||||
+ mWallpaperManager = WallpaperManager.getInstance(context);
|
||||
+ addOnColorsChangedListener(context);
|
||||
+ }
|
||||
+ WallpaperColors wallpaperColors = mWallpaperManager.getWallpaperColors(WallpaperManager.FLAG_SYSTEM);
|
||||
+ // Live wallpapers might not implement the WallpaperColors API.
|
||||
+ if (wallpaperColors == null) {
|
||||
+ mDarkText = false;
|
||||
+ } else {
|
||||
+ mDarkText = (wallpaperColors.getColorHints() & WallpaperColors.HINT_SUPPORTS_DARK_TEXT) != 0;
|
||||
+ }
|
||||
+
|
||||
// Create a remote view for the digital clock.
|
||||
final String packageName = context.getPackageName();
|
||||
final RemoteViews rv = new RemoteViews(packageName, R.layout.digital_widget);
|
||||
@@ -272,6 +315,17 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
rv.setTextViewTextSize(R.id.nextAlarm, COMPLEX_UNIT_PX, sizes.mFontSizePx);
|
||||
rv.setTextViewTextSize(R.id.clock, COMPLEX_UNIT_PX, sizes.mClockFontSizePx);
|
||||
|
||||
+ // Apply the text color to the remote views.
|
||||
+ if (mDarkText) {
|
||||
+ rv.setTextColor(R.id.clock, resources.getColor(R.color.black));
|
||||
+ rv.setTextColor(R.id.date, resources.getColor(R.color.black));
|
||||
+ rv.setTextColor(R.id.nextAlarm, resources.getColor(R.color.black));
|
||||
+ } else {
|
||||
+ rv.setTextColor(R.id.clock, resources.getColor(R.color.white));
|
||||
+ rv.setTextColor(R.id.date, resources.getColor(R.color.white));
|
||||
+ rv.setTextColor(R.id.nextAlarm, resources.getColor(R.color.white));
|
||||
+ }
|
||||
+
|
||||
final int smallestWorldCityListSizePx =
|
||||
resources.getDimensionPixelSize(R.dimen.widget_min_world_city_list_size);
|
||||
if (sizes.getListHeight() <= smallestWorldCityListSizePx) {
|
||||
@@ -430,6 +484,9 @@ public class DigitalAppWidgetProvider extends AppWidgetProvider {
|
||||
nextAlarmIcon.setTextSize(COMPLEX_UNIT_PX, measuredSizes.mIconFontSizePx);
|
||||
nextAlarmIcon.setPadding(0, 0, measuredSizes.mIconPaddingPx, 0);
|
||||
|
||||
+ // Adjust the alarm icon text color before generating its bitmap.
|
||||
+ nextAlarmIcon.setTextColor(context.getResources().getColor(mDarkText ? R.color.black : R.color.white));
|
||||
+
|
||||
// Measure and layout the sizer.
|
||||
final int widthSize = View.MeasureSpec.getSize(measuredSizes.mTargetWidthPx);
|
||||
final int heightSize = View.MeasureSpec.getSize(measuredSizes.mTargetHeightPx);
|
||||
--
|
||||
2.34.1
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,26 +0,0 @@
|
||||
From 99b3533fe66a7bdc71dd6c63c4ba6c75e2ef2082 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Micay <danielmicay@gmail.com>
|
||||
Date: Sat, 6 Jun 2015 10:40:51 -0400
|
||||
Subject: [PATCH] NfcService: Disable NFC by default
|
||||
|
||||
Change-Id: Ibe6abec7fa84c6fde476b8a083f57a3f61b50909
|
||||
---
|
||||
src/com/android/nfc/NfcService.java | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/com/android/nfc/NfcService.java b/src/com/android/nfc/NfcService.java
|
||||
index 3facdeeb..878b7e21 100644
|
||||
--- a/src/com/android/nfc/NfcService.java
|
||||
+++ b/src/com/android/nfc/NfcService.java
|
||||
@@ -133,7 +133,7 @@ public class NfcService implements DeviceHostListener {
|
||||
public static final String PREF = "NfcServicePrefs";
|
||||
|
||||
static final String PREF_NFC_ON = "nfc_on";
|
||||
- static final boolean NFC_ON_DEFAULT = true;
|
||||
+ static final boolean NFC_ON_DEFAULT = false;
|
||||
static final String PREF_NDEF_PUSH_ON = "ndef_push_on";
|
||||
static final boolean NDEF_PUSH_ON_DEFAULT = false;
|
||||
static final String PREF_SECURE_NFC_ON = "secure_nfc_on";
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,227 +0,0 @@
|
||||
From 4c3fbe18f838dce0c06342016ca4c933cf077a05 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 13 Mar 2022 11:22:48 +0000
|
||||
Subject: [PATCH] Revert "[DO NOT MERGE] Allow a settings override for
|
||||
double-line clock"
|
||||
|
||||
Sorry but I SAID NEVER!
|
||||
|
||||
This reverts commit cb4836b4868adc1f06212ce82851a5f16169ab5c.
|
||||
|
||||
Change-Id: I8b4b1354f23981f6edbe7f3c81ec4f511da3cc1a
|
||||
---
|
||||
res/values/strings.xml | 4 -
|
||||
res/xml/security_lockscreen_settings.xml | 6 --
|
||||
.../LockscreenClockPreferenceController.java | 70 ---------------
|
||||
...ckscreenClockPreferenceControllerTest.java | 90 -------------------
|
||||
4 files changed, 170 deletions(-)
|
||||
delete mode 100644 src/com/android/settings/display/LockscreenClockPreferenceController.java
|
||||
delete mode 100644 tests/robotests/src/com/android/settings/display/LockscreenClockPreferenceControllerTest.java
|
||||
|
||||
diff --git a/res/values/strings.xml b/res/values/strings.xml
|
||||
index 62062b5fe8..35a8a39689 100644
|
||||
--- a/res/values/strings.xml
|
||||
+++ b/res/values/strings.xml
|
||||
@@ -13812,10 +13812,6 @@
|
||||
<string name="lockscreen_trivial_controls_summary">Control external devices without unlocking your phone or tablet if allowed by the device controls app</string>
|
||||
<!-- Trivial Device disabled controls summary [CHAR LIMIT=NONE] -->
|
||||
<string name="lockscreen_trivial_disabled_controls_summary">To use, first turn on \u0022Show device controls\u0022</string>
|
||||
- <!-- Lockscreen double-line clock summary [CHAR LIMIT=NONE] -->
|
||||
- <string name="lockscreen_double_line_clock_summary">Show double-line clock when available</string>
|
||||
- <!-- Lockscreen double-line clock toggle [CHAR LIMIT=60] -->
|
||||
- <string name="lockscreen_double_line_clock_setting_toggle">Double-line clock</string>
|
||||
<!-- Lock screen shortcuts preference [CHAR LIMIT=60] -->
|
||||
<string name="lockscreen_quick_affordances_title">Shortcuts</string>
|
||||
<!-- Summary for the lock screen button preference [CHAR LIMIT=60] -->
|
||||
diff --git a/res/xml/security_lockscreen_settings.xml b/res/xml/security_lockscreen_settings.xml
|
||||
index 77a32122ee..b71839fe23 100644
|
||||
--- a/res/xml/security_lockscreen_settings.xml
|
||||
+++ b/res/xml/security_lockscreen_settings.xml
|
||||
@@ -78,12 +78,6 @@
|
||||
android:key="customizable_lock_screen_quick_affordances"
|
||||
android:title="@string/lockscreen_quick_affordances_title"
|
||||
settings:controller="com.android.settings.display.CustomizableLockScreenQuickAffordancesPreferenceController" />
|
||||
-
|
||||
- <SwitchPreference
|
||||
- android:key="lockscreen_double_line_clock_switch"
|
||||
- android:title="@string/lockscreen_double_line_clock_setting_toggle"
|
||||
- android:summary="@string/lockscreen_double_line_clock_summary"
|
||||
- settings:controller="com.android.settings.display.LockscreenClockPreferenceController" />
|
||||
</PreferenceCategory>
|
||||
|
||||
<PreferenceCategory
|
||||
diff --git a/src/com/android/settings/display/LockscreenClockPreferenceController.java b/src/com/android/settings/display/LockscreenClockPreferenceController.java
|
||||
deleted file mode 100644
|
||||
index 70ae55eaf9..0000000000
|
||||
--- a/src/com/android/settings/display/LockscreenClockPreferenceController.java
|
||||
+++ /dev/null
|
||||
@@ -1,70 +0,0 @@
|
||||
-/*
|
||||
- * Copyright (C) 2021 The Android Open Source Project
|
||||
- *
|
||||
- * Licensed under the Apache License, Version 2.0 (the "License");
|
||||
- * you may not use this file except in compliance with the License.
|
||||
- * You may obtain a copy of the License at
|
||||
- *
|
||||
- * http://www.apache.org/licenses/LICENSE-2.0
|
||||
- *
|
||||
- * Unless required by applicable law or agreed to in writing, software
|
||||
- * distributed under the License is distributed on an "AS IS" BASIS,
|
||||
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
- * See the License for the specific language governing permissions and
|
||||
- * limitations under the License.
|
||||
- */
|
||||
-
|
||||
-package com.android.settings.display;
|
||||
-
|
||||
-import android.content.Context;
|
||||
-import android.provider.Settings;
|
||||
-
|
||||
-import androidx.preference.Preference;
|
||||
-
|
||||
-import com.android.settings.R;
|
||||
-import com.android.settings.core.TogglePreferenceController;
|
||||
-
|
||||
-/**
|
||||
- * Preference to enable/disable the large double-line clock on lockscreen
|
||||
- */
|
||||
-public class LockscreenClockPreferenceController extends TogglePreferenceController {
|
||||
-
|
||||
- private static final String SETTING_KEY = Settings.Secure.LOCKSCREEN_USE_DOUBLE_LINE_CLOCK;
|
||||
-
|
||||
- public LockscreenClockPreferenceController(Context context, String preferenceKey) {
|
||||
- super(context, preferenceKey);
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- public boolean isChecked() {
|
||||
- return Settings.Secure.getInt(mContext.getContentResolver(), SETTING_KEY, 1) != 0;
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- public boolean setChecked(boolean isChecked) {
|
||||
- return Settings.Secure.putInt(mContext.getContentResolver(), SETTING_KEY,
|
||||
- isChecked ? 1 : 0);
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- public CharSequence getSummary() {
|
||||
- return mContext.getText(R.string.lockscreen_double_line_clock_summary);
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- public int getAvailabilityStatus() {
|
||||
- return AVAILABLE;
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- public void updateState(Preference preference) {
|
||||
- super.updateState(preference);
|
||||
- preference.setEnabled(true);
|
||||
- refreshSummary(preference);
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- public int getSliceHighlightMenuRes() {
|
||||
- return R.string.menu_key_display;
|
||||
- }
|
||||
-}
|
||||
diff --git a/tests/robotests/src/com/android/settings/display/LockscreenClockPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/LockscreenClockPreferenceControllerTest.java
|
||||
deleted file mode 100644
|
||||
index 94f2dc6655..0000000000
|
||||
--- a/tests/robotests/src/com/android/settings/display/LockscreenClockPreferenceControllerTest.java
|
||||
+++ /dev/null
|
||||
@@ -1,90 +0,0 @@
|
||||
-/*
|
||||
- * Copyright (C) 2021 The Android Open Source Project
|
||||
- *
|
||||
- * Licensed under the Apache License, Version 2.0 (the "License");
|
||||
- * you may not use this file except in compliance with the License.
|
||||
- * You may obtain a copy of the License at
|
||||
- *
|
||||
- * http://www.apache.org/licenses/LICENSE-2.0
|
||||
- *
|
||||
- * Unless required by applicable law or agreed to in writing, software
|
||||
- * distributed under the License is distributed on an "AS IS" BASIS,
|
||||
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
- * See the License for the specific language governing permissions and
|
||||
- * limitations under the License.
|
||||
- */
|
||||
-
|
||||
-package com.android.settings.display;
|
||||
-
|
||||
-import static com.google.common.truth.Truth.assertThat;
|
||||
-
|
||||
-import android.content.ContentResolver;
|
||||
-import android.content.Context;
|
||||
-import android.provider.Settings;
|
||||
-
|
||||
-import androidx.preference.Preference;
|
||||
-
|
||||
-import org.junit.Before;
|
||||
-import org.junit.Test;
|
||||
-import org.junit.runner.RunWith;
|
||||
-import org.mockito.Mock;
|
||||
-import org.mockito.MockitoAnnotations;
|
||||
-import org.robolectric.RobolectricTestRunner;
|
||||
-import org.robolectric.RuntimeEnvironment;
|
||||
-
|
||||
-@RunWith(RobolectricTestRunner.class)
|
||||
-public class LockscreenClockPreferenceControllerTest {
|
||||
-
|
||||
- private static final String TEST_KEY = "test_key";
|
||||
- private static final String SETTING_KEY = Settings.Secure.LOCKSCREEN_USE_DOUBLE_LINE_CLOCK;
|
||||
-
|
||||
- private Context mContext;
|
||||
- private ContentResolver mContentResolver;
|
||||
- private LockscreenClockPreferenceController mController;
|
||||
-
|
||||
- @Mock
|
||||
- private Preference mPreference;
|
||||
-
|
||||
- @Before
|
||||
- public void setUp() {
|
||||
- MockitoAnnotations.initMocks(this);
|
||||
- mContext = RuntimeEnvironment.application;
|
||||
- mContentResolver = mContext.getContentResolver();
|
||||
- mController = new LockscreenClockPreferenceController(mContext, TEST_KEY);
|
||||
- }
|
||||
-
|
||||
- @Test
|
||||
- public void isChecked_SettingIs1_returnTrue() {
|
||||
- Settings.Secure.putInt(mContentResolver, SETTING_KEY, 1);
|
||||
-
|
||||
- assertThat(mController.isChecked()).isTrue();
|
||||
- }
|
||||
-
|
||||
- @Test
|
||||
- public void isChecked_SettingIs0_returnFalse() {
|
||||
- Settings.Secure.putInt(mContentResolver, SETTING_KEY, 0);
|
||||
-
|
||||
- assertThat(mController.isChecked()).isFalse();
|
||||
- }
|
||||
-
|
||||
- @Test
|
||||
- public void isChecked_SettingIsNotSet_returnTrue() {
|
||||
- Settings.Secure.putString(mContentResolver, SETTING_KEY, null);
|
||||
-
|
||||
- assertThat(mController.isChecked()).isTrue();
|
||||
- }
|
||||
-
|
||||
- @Test
|
||||
- public void setChecked_true_SettingIsNot0() {
|
||||
- mController.setChecked(true);
|
||||
-
|
||||
- assertThat(Settings.Secure.getInt(mContentResolver, SETTING_KEY, 0)).isNotEqualTo(0);
|
||||
- }
|
||||
-
|
||||
- @Test
|
||||
- public void setChecked_false_SettingIs0() {
|
||||
- mController.setChecked(false);
|
||||
-
|
||||
- assertThat(Settings.Secure.getInt(mContentResolver, SETTING_KEY, 0)).isEqualTo(0);
|
||||
- }
|
||||
-}
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,86 +0,0 @@
|
||||
From f32dde0ff88ec58029be1fe4a1b42b94ff1bdbab Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 28 Oct 2021 02:30:59 +0000
|
||||
Subject: [PATCH 1/2] Trebuchet: Make overview scrim transparent again
|
||||
|
||||
Also revert texts/buttons to workspace color
|
||||
|
||||
Change-Id: I78c84865eb06b8e59c9c271cd2e267ae4cd7cc08
|
||||
---
|
||||
quickstep/res/values/styles.xml | 2 +-
|
||||
quickstep/src/com/android/quickstep/views/RecentsView.java | 2 +-
|
||||
res/color-v31/overview_scrim.xml | 2 +-
|
||||
res/color-v31/overview_scrim_dark.xml | 2 +-
|
||||
res/color/overview_button.xml | 6 +++---
|
||||
5 files changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/quickstep/res/values/styles.xml b/quickstep/res/values/styles.xml
|
||||
index 8eea37f6c2..623f60f81a 100644
|
||||
--- a/quickstep/res/values/styles.xml
|
||||
+++ b/quickstep/res/values/styles.xml
|
||||
@@ -176,7 +176,7 @@
|
||||
parent="@android:style/Widget.DeviceDefault.Button.Borderless">
|
||||
<item name="android:textColor">@color/overview_button</item>
|
||||
<item name="android:drawableTint">@color/overview_button</item>
|
||||
- <item name="android:tint">?android:attr/textColorPrimary</item>
|
||||
+ <item name="android:tint">?attr/workspaceTextColor</item>
|
||||
<item name="android:drawablePadding">8dp</item>
|
||||
<item name="android:textAllCaps">false</item>
|
||||
</style>
|
||||
diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java
|
||||
index 9222e456e5..678c0dfd80 100644
|
||||
--- a/quickstep/src/com/android/quickstep/views/RecentsView.java
|
||||
+++ b/quickstep/src/com/android/quickstep/views/RecentsView.java
|
||||
@@ -783,7 +783,7 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
|
||||
mEmptyIcon.setCallback(this);
|
||||
mEmptyMessage = context.getText(R.string.recents_empty_message);
|
||||
mEmptyMessagePaint = new TextPaint();
|
||||
- mEmptyMessagePaint.setColor(Themes.getAttrColor(context, android.R.attr.textColorPrimary));
|
||||
+ mEmptyMessagePaint.setColor(Themes.getAttrColor(context, R.attr.workspaceTextColor));
|
||||
mEmptyMessagePaint.setTextSize(getResources()
|
||||
.getDimension(R.dimen.recents_empty_message_text_size));
|
||||
mEmptyMessagePaint.setTypeface(Typeface.create(Themes.getDefaultBodyFont(context),
|
||||
diff --git a/res/color-v31/overview_scrim.xml b/res/color-v31/overview_scrim.xml
|
||||
index 212518ff65..894997c59a 100644
|
||||
--- a/res/color-v31/overview_scrim.xml
|
||||
+++ b/res/color-v31/overview_scrim.xml
|
||||
@@ -14,5 +14,5 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
- <item android:color="@android:color/system_neutral2_200" />
|
||||
+ <item android:color="@android:color/transparent" />
|
||||
</selector>
|
||||
diff --git a/res/color-v31/overview_scrim_dark.xml b/res/color-v31/overview_scrim_dark.xml
|
||||
index 2ab8ecdec9..894997c59a 100644
|
||||
--- a/res/color-v31/overview_scrim_dark.xml
|
||||
+++ b/res/color-v31/overview_scrim_dark.xml
|
||||
@@ -14,5 +14,5 @@
|
||||
limitations under the License.
|
||||
-->
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
- <item android:color="@android:color/system_neutral1_500" android:lStar="35" />
|
||||
+ <item android:color="@android:color/transparent" />
|
||||
</selector>
|
||||
diff --git a/res/color/overview_button.xml b/res/color/overview_button.xml
|
||||
index aa48b78604..e638ac2d4a 100644
|
||||
--- a/res/color/overview_button.xml
|
||||
+++ b/res/color/overview_button.xml
|
||||
@@ -2,10 +2,10 @@
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item
|
||||
android:alpha="1"
|
||||
- android:color="?android:attr/textColorPrimary"
|
||||
+ android:color="?attr/workspaceTextColor"
|
||||
android:state_enabled="true" />
|
||||
<item
|
||||
android:alpha="?android:disabledAlpha"
|
||||
- android:color="?android:attr/textColorPrimary"
|
||||
+ android:color="?attr/workspaceTextColor"
|
||||
android:state_enabled="false" />
|
||||
-</selector>
|
||||
\ No newline at end of file
|
||||
+</selector>
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,82 +0,0 @@
|
||||
From c04fae6b45b624a39d684c4b6cf02440a3fe83b5 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Fri, 18 Mar 2022 08:42:18 +0000
|
||||
Subject: [PATCH 2/2] Trebuchet: Kill haptics in recents
|
||||
|
||||
This partially reverts commit cc5c8843dfebfa92057b6ce8904ac58cd05ffaef.
|
||||
|
||||
Change-Id: Ie3b0eabe8cc0421e696720740edc492cae2f5153
|
||||
---
|
||||
.../NoButtonQuickSwitchTouchController.java | 8 --------
|
||||
.../TaskViewTouchController.java | 5 -----
|
||||
.../android/quickstep/views/RecentsView.java | 19 -------------------
|
||||
3 files changed, 32 deletions(-)
|
||||
|
||||
diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java
|
||||
index 847114a960..eef4be2964 100644
|
||||
--- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java
|
||||
+++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java
|
||||
@@ -419,14 +419,6 @@ public class NoButtonQuickSwitchTouchController implements TouchController,
|
||||
nonOverviewAnim.setFloatValues(startProgress, endProgress);
|
||||
mNonOverviewAnim.dispatchOnStart();
|
||||
}
|
||||
- if (targetState == QUICK_SWITCH_FROM_HOME) {
|
||||
- // Navigating to quick switch, add scroll feedback since the first time is not
|
||||
- // considered a scroll by the RecentsView.
|
||||
- VibratorWrapper.INSTANCE.get(mLauncher).vibrate(
|
||||
- RecentsView.SCROLL_VIBRATION_PRIMITIVE,
|
||||
- RecentsView.SCROLL_VIBRATION_PRIMITIVE_SCALE,
|
||||
- RecentsView.SCROLL_VIBRATION_FALLBACK);
|
||||
- }
|
||||
|
||||
nonOverviewAnim.setDuration(Math.max(xDuration, yDuration));
|
||||
mNonOverviewAnim.setEndAction(() -> onAnimationToStateCompleted(targetState));
|
||||
diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java
|
||||
index eddc50c64f..09f253b08d 100644
|
||||
--- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java
|
||||
+++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java
|
||||
@@ -369,11 +369,6 @@ public abstract class TaskViewTouchController<T extends BaseDraggingActivity>
|
||||
mCurrentAnimation.startWithVelocity(mActivity, goingToEnd,
|
||||
velocity * orientationHandler.getSecondaryTranslationDirectionFactor(),
|
||||
mEndDisplacement, animationDuration);
|
||||
- if (goingUp && goingToEnd && !mIsDismissHapticRunning) {
|
||||
- VibratorWrapper.INSTANCE.get(mActivity).vibrate(TASK_DISMISS_VIBRATION_PRIMITIVE,
|
||||
- TASK_DISMISS_VIBRATION_PRIMITIVE_SCALE, TASK_DISMISS_VIBRATION_FALLBACK);
|
||||
- mIsDismissHapticRunning = true;
|
||||
- }
|
||||
}
|
||||
|
||||
private void clearState() {
|
||||
diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java
|
||||
index 678c0dfd80..8e75a7c18d 100644
|
||||
--- a/quickstep/src/com/android/quickstep/views/RecentsView.java
|
||||
+++ b/quickstep/src/com/android/quickstep/views/RecentsView.java
|
||||
@@ -1466,25 +1466,6 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
|
||||
}
|
||||
}
|
||||
|
||||
- @Override
|
||||
- protected void onEdgeAbsorbingScroll() {
|
||||
- vibrateForScroll();
|
||||
- }
|
||||
-
|
||||
- @Override
|
||||
- protected void onScrollOverPageChanged() {
|
||||
- vibrateForScroll();
|
||||
- }
|
||||
-
|
||||
- private void vibrateForScroll() {
|
||||
- long now = SystemClock.uptimeMillis();
|
||||
- if (now - mScrollLastHapticTimestamp > mScrollHapticMinGapMillis) {
|
||||
- mScrollLastHapticTimestamp = now;
|
||||
- VibratorWrapper.INSTANCE.get(mContext).vibrate(SCROLL_VIBRATION_PRIMITIVE,
|
||||
- SCROLL_VIBRATION_PRIMITIVE_SCALE, SCROLL_VIBRATION_FALLBACK);
|
||||
- }
|
||||
- }
|
||||
-
|
||||
@Override
|
||||
protected void determineScrollingStart(MotionEvent ev, float touchSlopScale) {
|
||||
// Enables swiping to the left or right only if the task overlay is not modal.
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,87 +0,0 @@
|
||||
From b09034c7e5f9bbc2d29c3f10452259956fcb9f46 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 16 Oct 2021 00:33:15 +0000
|
||||
Subject: [PATCH] Replace captive portal URLs globally
|
||||
|
||||
...so that it works even without a SIM inserted, which is a typical usecase of mine
|
||||
URLs from Chinese OEM UIs are faster and more reliable than g.cn and other int'l ones
|
||||
|
||||
Change-Id: Ic3e124b2b62838a2bcf1dad0d670515f3d056964
|
||||
---
|
||||
res/values-mcc460/config.xml | 31 -------------------------------
|
||||
res/values/config.xml | 7 +++----
|
||||
2 files changed, 3 insertions(+), 35 deletions(-)
|
||||
delete mode 100644 res/values-mcc460/config.xml
|
||||
|
||||
diff --git a/res/values-mcc460/config.xml b/res/values-mcc460/config.xml
|
||||
deleted file mode 100644
|
||||
index 3c4b4933..00000000
|
||||
--- a/res/values-mcc460/config.xml
|
||||
+++ /dev/null
|
||||
@@ -1,31 +0,0 @@
|
||||
-<?xml version="1.0" encoding="utf-8"?>
|
||||
-<resources>
|
||||
- <!-- Network validation URL configuration for devices using a Chinese SIM (MCC 460).
|
||||
- The below URLs are often whitelisted by captive portals, so they should not be used in the
|
||||
- general case as this could degrade the user experience (portals not detected properly).
|
||||
- However in China the default URLs are not accessible in general. The below alternatives
|
||||
- should allow users to connect to local networks normally. -->
|
||||
- <!-- default_captive_portal_http_url is not configured as overlayable so
|
||||
- OEMs that wish to change captive_portal_http_url configuration must
|
||||
- do so via configuring runtime resource overlay to
|
||||
- config_captive_portal_http_url and *NOT* by changing or overlaying
|
||||
- this resource. It will break if the enforcement of overlayable starts.
|
||||
- -->
|
||||
- <string name="default_captive_portal_http_url" translatable="false">http://connectivitycheck.gstatic.cn/generate_204</string>
|
||||
- <!-- default_captive_portal_https_url is not configured as overlayable so
|
||||
- OEMs that wish to change captive_portal_https_url configuration must
|
||||
- do so via configuring runtime resource overlay to
|
||||
- config_captive_portal_https_url and *NOT* by changing or overlaying
|
||||
- this resource. It will break if the enforcement of overlayable starts.
|
||||
- -->
|
||||
- <string name="default_captive_portal_https_url" translatable="false">https://connectivitycheck.gstatic.cn/generate_204</string>
|
||||
- <!-- default_captive_portal_fallback_urls is not configured as overlayable
|
||||
- so OEMs that wish to change captive_portal_fallback_urls configuration
|
||||
- must do so via configuring runtime resource overlay to
|
||||
- config_captive_portal_fallback_urls and *NOT* by changing or overlaying
|
||||
- this resource. It will break if the enforcement of overlayable starts.
|
||||
- -->
|
||||
- <string-array name="default_captive_portal_fallback_urls" translatable="false">
|
||||
- <item>http://www.googleapis.cn/generate_204</item>
|
||||
- </string-array>
|
||||
-</resources>
|
||||
diff --git a/res/values/config.xml b/res/values/config.xml
|
||||
index 805ca041..61297dda 100644
|
||||
--- a/res/values/config.xml
|
||||
+++ b/res/values/config.xml
|
||||
@@ -13,7 +13,7 @@
|
||||
config_captive_portal_http_url and *NOT* by changing or overlaying
|
||||
this resource. It will break if the enforcement of overlayable starts.
|
||||
-->
|
||||
- <string name="default_captive_portal_http_url" translatable="false">http://connectivitycheck.gstatic.com/generate_204</string>
|
||||
+ <string name="default_captive_portal_http_url" translatable="false">http://conn4.coloros.com/generate204</string>
|
||||
<!-- HTTPS URL for network validation, to use for confirming internet connectivity. -->
|
||||
<!-- default_captive_portal_https_url is not configured as overlayable so
|
||||
OEMs that wish to change captive_portal_https_url configuration must
|
||||
@@ -21,7 +21,7 @@
|
||||
config_captive_portal_https_url and *NOT* by changing or overlaying
|
||||
this resource. It will break if the enforcement of overlayable starts.
|
||||
-->
|
||||
- <string name="default_captive_portal_https_url" translatable="false">https://www.google.com/generate_204</string>
|
||||
+ <string name="default_captive_portal_https_url" translatable="false">https://conn4.coloros.com/generate204</string>
|
||||
|
||||
<!-- List of fallback URLs to use for detecting captive portals. -->
|
||||
<!-- default_captive_portal_fallback_urls is not configured as overlayable
|
||||
@@ -31,8 +31,7 @@
|
||||
this resource. It will break if the enforcement of overlayable starts.
|
||||
-->
|
||||
<string-array name="default_captive_portal_fallback_urls" translatable="false">
|
||||
- <item>http://www.google.com/gen_204</item>
|
||||
- <item>http://play.googleapis.com/generate_204</item>
|
||||
+ <item>http://connect.rom.miui.com/generate_204</item>
|
||||
</string-array>
|
||||
<!-- Configuration hooks for the above settings.
|
||||
Empty by default but may be overridden by RROs. -->
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 84b5b23519166701423a324cac955e9110e36eae Mon Sep 17 00:00:00 2001
|
||||
From 734d1b69c62d1ab2e097da3e5c15ce041394d558 Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Mon, 1 Jul 2019 07:03:04 +0000
|
||||
Subject: [PATCH 3/4] vendor_lineage: Ignore neverallows... again
|
||||
Subject: [PATCH 1/2] vendor_lineage: Ignore neverallows... again
|
||||
|
||||
Because unofficial builds are better than no builds!
|
||||
|
||||
@ -26,5 +26,5 @@ index f2e595ff..d6d036a9 100644
|
||||
# Rules for QCOM targets
|
||||
include $(TOPDIR)vendor/lineage/build/core/qcom_target.mk
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 863e8f70e3a4f987938ff4ad01c22822bc38e409 Mon Sep 17 00:00:00 2001
|
||||
From f20707d1b08d3c6fbaf301e4fb621f081b7a81f1 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 20 Jun 2021 09:09:15 +0000
|
||||
Subject: [PATCH 1/4] build: Integrate prop modifications (2/2)
|
||||
Subject: [PATCH 2/2] build: Integrate prop modifications (2/2)
|
||||
|
||||
Change-Id: I076973f902ab20011964e50955e4326c18d5b34e
|
||||
---
|
||||
@ -9,15 +9,15 @@ Change-Id: I076973f902ab20011964e50955e4326c18d5b34e
|
||||
1 file changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/build/core/main_version.mk b/build/core/main_version.mk
|
||||
index 28044e2c..c5aa9617 100644
|
||||
index dddeee77..dd86cbfd 100644
|
||||
--- a/build/core/main_version.mk
|
||||
+++ b/build/core/main_version.mk
|
||||
@@ -5,17 +5,12 @@ ADDITIONAL_SYSTEM_PROPERTIES += \
|
||||
@@ -5,17 +5,12 @@ ADDITIONAL_BUILD_PROPERTIES += \
|
||||
endif
|
||||
|
||||
# LineageOS System Version
|
||||
+# Do not set Display Versions here, due to Makefile not playing nice with spaces
|
||||
ADDITIONAL_SYSTEM_PROPERTIES += \
|
||||
ADDITIONAL_BUILD_PROPERTIES += \
|
||||
- ro.lineage.version=$(LINEAGE_VERSION) \
|
||||
ro.lineage.releasetype=$(LINEAGE_BUILDTYPE) \
|
||||
ro.lineage.build.version=$(PRODUCT_VERSION_MAJOR).$(PRODUCT_VERSION_MINOR) \
|
||||
@ -25,12 +25,12 @@ index 28044e2c..c5aa9617 100644
|
||||
ro.lineagelegal.url=https://lineageos.org/legal
|
||||
|
||||
-# LineageOS Platform Display Version
|
||||
-ADDITIONAL_SYSTEM_PROPERTIES += \
|
||||
-ADDITIONAL_BUILD_PROPERTIES += \
|
||||
- ro.lineage.display.version=$(LINEAGE_DISPLAY_VERSION)
|
||||
-
|
||||
# LineageOS Platform SDK Version
|
||||
ADDITIONAL_SYSTEM_PROPERTIES += \
|
||||
ADDITIONAL_BUILD_PROPERTIES += \
|
||||
ro.lineage.build.version.plat.sdk=$(LINEAGE_PLATFORM_SDK_VERSION)
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
@ -1,40 +0,0 @@
|
||||
From 34f8aa093286970f82014f1dae0e86e4cbeba896 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 16 Oct 2021 00:41:07 +0000
|
||||
Subject: [PATCH 2/4] build: Remove Stk (2/2)
|
||||
|
||||
Change-Id: I4e1cfacd296e47ef1731f3c32555089a5fca6f0c
|
||||
---
|
||||
config/data_only.mk | 4 ----
|
||||
config/telephony.mk | 3 +--
|
||||
2 files changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/config/data_only.mk b/config/data_only.mk
|
||||
index 5ff877c9..ab70301b 100644
|
||||
--- a/config/data_only.mk
|
||||
+++ b/config/data_only.mk
|
||||
@@ -1,7 +1,3 @@
|
||||
# World APN list
|
||||
PRODUCT_PACKAGES += \
|
||||
apns-conf.xml
|
||||
-
|
||||
-# Telephony packages
|
||||
-PRODUCT_PACKAGES += \
|
||||
- Stk
|
||||
diff --git a/config/telephony.mk b/config/telephony.mk
|
||||
index 6adf48d9..e63b320d 100644
|
||||
--- a/config/telephony.mk
|
||||
+++ b/config/telephony.mk
|
||||
@@ -8,8 +8,7 @@ PRODUCT_PACKAGES += \
|
||||
|
||||
# Telephony packages
|
||||
PRODUCT_PACKAGES += \
|
||||
- messaging \
|
||||
- Stk
|
||||
+ messaging
|
||||
|
||||
# Default ringtone
|
||||
PRODUCT_PRODUCT_PROPERTIES += \
|
||||
--
|
||||
2.34.1
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,48 @@
|
||||
From 44c6b955f1b787984bcddb53d35bf8eda20e02d1 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 8 Aug 2021 01:43:40 +0000
|
||||
Subject: [PATCH] Revert "recovery: Allow custom bootloader msg offset in block
|
||||
misc"
|
||||
|
||||
This reverts commit 0e369f42b82c4d12edba9a46dd20bee0d4b783ec.
|
||||
---
|
||||
bootloader_message/Android.bp | 1 -
|
||||
.../include/bootloader_message/bootloader_message.h | 10 +++++-----
|
||||
2 files changed, 5 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/bootloader_message/Android.bp b/bootloader_message/Android.bp
|
||||
index f23b1dea..6443a077 100644
|
||||
--- a/bootloader_message/Android.bp
|
||||
+++ b/bootloader_message/Android.bp
|
||||
@@ -16,7 +16,6 @@
|
||||
|
||||
cc_defaults {
|
||||
name: "libbootloader_message_defaults",
|
||||
- defaults: ["bootloader_message_offset_defaults"],
|
||||
srcs: ["bootloader_message.cpp"],
|
||||
cflags: [
|
||||
"-Wall",
|
||||
diff --git a/bootloader_message/include/bootloader_message/bootloader_message.h b/bootloader_message/include/bootloader_message/bootloader_message.h
|
||||
index 387692b9..e4cf09b2 100644
|
||||
--- a/bootloader_message/include/bootloader_message/bootloader_message.h
|
||||
+++ b/bootloader_message/include/bootloader_message/bootloader_message.h
|
||||
@@ -29,11 +29,11 @@
|
||||
// 32K - 64K System space, used for miscellanious AOSP features. See below.
|
||||
// Note that these offsets are admitted by bootloader,recovery and uncrypt, so they
|
||||
// are not configurable without changing all of them.
|
||||
-constexpr size_t BOOTLOADER_MESSAGE_OFFSET_IN_MISC = BOARD_RECOVERY_BLDRMSG_OFFSET;
|
||||
-constexpr size_t VENDOR_SPACE_OFFSET_IN_MISC = 2 * 1024 + BOARD_RECOVERY_BLDRMSG_OFFSET;
|
||||
-constexpr size_t WIPE_PACKAGE_OFFSET_IN_MISC = 16 * 1024 + BOARD_RECOVERY_BLDRMSG_OFFSET;
|
||||
-constexpr size_t SYSTEM_SPACE_OFFSET_IN_MISC = 32 * 1024 + BOARD_RECOVERY_BLDRMSG_OFFSET;
|
||||
-constexpr size_t SYSTEM_SPACE_SIZE_IN_MISC = 32 * 1024 + BOARD_RECOVERY_BLDRMSG_OFFSET;
|
||||
+constexpr size_t BOOTLOADER_MESSAGE_OFFSET_IN_MISC = 0;
|
||||
+constexpr size_t VENDOR_SPACE_OFFSET_IN_MISC = 2 * 1024;
|
||||
+constexpr size_t WIPE_PACKAGE_OFFSET_IN_MISC = 16 * 1024;
|
||||
+constexpr size_t SYSTEM_SPACE_OFFSET_IN_MISC = 32 * 1024;
|
||||
+constexpr size_t SYSTEM_SPACE_SIZE_IN_MISC = 32 * 1024;
|
||||
|
||||
/* Bootloader Message (2-KiB)
|
||||
*
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,75 +0,0 @@
|
||||
From faff60c8814e2d31519d86e92faf08761a1d1de1 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 8 Dec 2021 07:04:53 +0000
|
||||
Subject: [PATCH] Remove init.vndk-nodef.rc
|
||||
|
||||
This partially reverts "Deprecate VNDK-lite support from Legacy GSI".
|
||||
|
||||
Paired with https://github.com/LineageOS/android_system_core/commit/0b265e35ddf42638fa807f5349a10c40e3d46446, it kicks permissive devices into bootloader.
|
||||
Given that GSI+permissive won't ever be a Lineage official scenario, revert this only on our side.
|
||||
Thanks @Kethen for the insight!
|
||||
|
||||
Change-Id: I7c14fe5229e953f620bb225fa5c981752d0ac5f9
|
||||
---
|
||||
target/product/gsi/Android.mk | 13 -------------
|
||||
target/product/gsi/init.gsi.rc | 2 --
|
||||
target/product/gsi/init.vndk-nodef.rc | 3 ---
|
||||
target/product/gsi_release.mk | 1 -
|
||||
4 files changed, 19 deletions(-)
|
||||
delete mode 100644 target/product/gsi/init.vndk-nodef.rc
|
||||
|
||||
diff --git a/target/product/gsi/Android.mk b/target/product/gsi/Android.mk
|
||||
index 85e551d3f..c1f37e07f 100644
|
||||
--- a/target/product/gsi/Android.mk
|
||||
+++ b/target/product/gsi/Android.mk
|
||||
@@ -247,16 +247,3 @@ LOCAL_SYSTEM_EXT_MODULE := true
|
||||
LOCAL_MODULE_RELATIVE_PATH := init
|
||||
|
||||
include $(BUILD_PREBUILT)
|
||||
-
|
||||
-
|
||||
-include $(CLEAR_VARS)
|
||||
-LOCAL_MODULE := init.vndk-nodef.rc
|
||||
-LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
|
||||
-LOCAL_LICENSE_CONDITIONS := notice
|
||||
-LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
|
||||
-LOCAL_SRC_FILES := $(LOCAL_MODULE)
|
||||
-LOCAL_MODULE_CLASS := ETC
|
||||
-LOCAL_SYSTEM_EXT_MODULE := true
|
||||
-LOCAL_MODULE_RELATIVE_PATH := gsi
|
||||
-
|
||||
-include $(BUILD_PREBUILT)
|
||||
diff --git a/target/product/gsi/init.gsi.rc b/target/product/gsi/init.gsi.rc
|
||||
index 69c8e467b..c6faba78d 100644
|
||||
--- a/target/product/gsi/init.gsi.rc
|
||||
+++ b/target/product/gsi/init.gsi.rc
|
||||
@@ -1,5 +1,3 @@
|
||||
#
|
||||
# Android init script for GSI required initialization
|
||||
#
|
||||
-
|
||||
-import /system/system_ext/etc/gsi/init.vndk-${ro.vndk.version:-nodef}.rc
|
||||
diff --git a/target/product/gsi/init.vndk-nodef.rc b/target/product/gsi/init.vndk-nodef.rc
|
||||
deleted file mode 100644
|
||||
index 1b141a05e..000000000
|
||||
--- a/target/product/gsi/init.vndk-nodef.rc
|
||||
+++ /dev/null
|
||||
@@ -1,3 +0,0 @@
|
||||
-on early-init
|
||||
- # Reboot if BOARD_VNDK_VERSION is not defined
|
||||
- exec - root -- /system/bin/reboot bootloader
|
||||
diff --git a/target/product/gsi_release.mk b/target/product/gsi_release.mk
|
||||
index 74501cd1f..575e90b14 100644
|
||||
--- a/target/product/gsi_release.mk
|
||||
+++ b/target/product/gsi_release.mk
|
||||
@@ -60,7 +60,6 @@ PRODUCT_PACKAGES += com.android.apex.cts.shim.v1_with_prebuilts.flattened
|
||||
PRODUCT_PACKAGES += \
|
||||
gsi_skip_mount.cfg \
|
||||
init.gsi.rc \
|
||||
- init.vndk-nodef.rc \
|
||||
|
||||
# Support additional VNDK snapshots
|
||||
PRODUCT_EXTRA_VNDK_VERSIONS := \
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,31 @@
|
||||
From 9dd12aff1bdee7020ddd18c4821d390611dc2b5f Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 8 Aug 2021 01:43:40 +0000
|
||||
Subject: [PATCH] Revert "mainline_system: Exclude vendor.lineage.power@1.0
|
||||
from artifact path requirements"
|
||||
|
||||
This reverts commit 78c28df40f72fdcbe3f82a83828060ad19765fa1.
|
||||
---
|
||||
target/product/mainline_system.mk | 6 ------
|
||||
1 file changed, 6 deletions(-)
|
||||
|
||||
diff --git a/target/product/mainline_system.mk b/target/product/mainline_system.mk
|
||||
index e9f9dde13..a787707a0 100644
|
||||
--- a/target/product/mainline_system.mk
|
||||
+++ b/target/product/mainline_system.mk
|
||||
@@ -135,12 +135,6 @@ _base_mk_allowed_list :=
|
||||
|
||||
_my_allowed_list := $(_base_mk_allowed_list)
|
||||
|
||||
-# vendor.lineage.power@1.0 currently violates the artifact path requirements
|
||||
-# Exclude it from the check for now
|
||||
-_my_allowed_list += \
|
||||
- $(TARGET_COPY_OUT_SYSTEM_EXT)/lib/vendor.lineage.power@1.0.so \
|
||||
- $(TARGET_COPY_OUT_SYSTEM_EXT)/lib64/vendor.lineage.power@1.0.so \
|
||||
-
|
||||
# For mainline, system.img should be mounted at /, so we include ROOT here.
|
||||
_my_paths := \
|
||||
$(TARGET_COPY_OUT_ROOT)/ \
|
||||
--
|
||||
2.25.1
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,23 +1,22 @@
|
||||
From 5f607c73f8601349d166c461d2d96237ce2779cf Mon Sep 17 00:00:00 2001
|
||||
From 3003b3b500c33aca047d5c61e5d9bf1db9980faf Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 8 Aug 2021 09:29:32 +0000
|
||||
Subject: [PATCH 2/9] treble: Set BOARD_EXT4_SHARE_DUP_BLOCKS explicitly
|
||||
Subject: [PATCH 2/3] treble: Set BOARD_EXT4_SHARE_DUP_BLOCKS explicitly
|
||||
|
||||
Change-Id: I725443154fabde548d2e6c1b072d34c27596c421
|
||||
---
|
||||
board-base.mk | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
board-base.mk | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/board-base.mk b/board-base.mk
|
||||
index 2cb5dbc..e493d1c 100644
|
||||
index 0da1061..e270068 100644
|
||||
--- a/board-base.mk
|
||||
+++ b/board-base.mk
|
||||
@@ -10,3 +10,5 @@ BOARD_ROOT_EXTRA_FOLDERS += bt_firmware sec_storage efs persist
|
||||
BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true
|
||||
@@ -4,3 +4,4 @@ TARGET_EXFAT_DRIVER := exfat
|
||||
DEVICE_FRAMEWORK_MANIFEST_FILE := device/phh/treble/framework_manifest.xml
|
||||
|
||||
BOARD_ROOT_EXTRA_SYMLINKS := $(filter-out $(BOARD_ROOT_EXTRA_SYMLINKS),/mnt/vendor/persist:/persist)
|
||||
+
|
||||
BOARD_ROOT_EXTRA_FOLDERS += bt_firmware sec_storage efs
|
||||
+BOARD_EXT4_SHARE_DUP_BLOCKS := true
|
||||
--
|
||||
2.34.1
|
||||
2.25.1
|
||||
|
||||
|
@ -0,0 +1,20 @@
|
||||
From 384487e08861871d0cdccadecc01abb14cfa8709 Mon Sep 17 00:00:00 2001
|
||||
From: Victor Bo <bvoid@yandex.ru>
|
||||
Date: Tue, 15 Sep 2020 21:26:45 -0400
|
||||
Subject: [PATCH 3/3] add offline charger sepolicy
|
||||
|
||||
---
|
||||
sepolicy/gsicharger.te | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
create mode 100644 sepolicy/gsicharger.te
|
||||
|
||||
diff --git a/sepolicy/gsicharger.te b/sepolicy/gsicharger.te
|
||||
new file mode 100644
|
||||
index 0000000..91cfb5c
|
||||
--- /dev/null
|
||||
+++ b/sepolicy/gsicharger.te
|
||||
@@ -0,0 +1 @@
|
||||
+permissive charger;
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,25 +0,0 @@
|
||||
From 637b46fa0db205ba2b592e8a081680d3c281c792 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 20 Oct 2021 11:30:25 +0000
|
||||
Subject: [PATCH 3/9] treble: Set TARGET_NO_KERNEL_OVERRIDE
|
||||
|
||||
Taken from Lineage generic targets - skips building kernel cleanly
|
||||
|
||||
Change-Id: Id71d3a3aed56fd4e815a64ef4191b125fc5026ce
|
||||
---
|
||||
board-base.mk | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/board-base.mk b/board-base.mk
|
||||
index e493d1c..9d1d45e 100644
|
||||
--- a/board-base.mk
|
||||
+++ b/board-base.mk
|
||||
@@ -12,3 +12,5 @@ BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true
|
||||
BOARD_ROOT_EXTRA_SYMLINKS := $(filter-out $(BOARD_ROOT_EXTRA_SYMLINKS),/mnt/vendor/persist:/persist)
|
||||
|
||||
BOARD_EXT4_SHARE_DUP_BLOCKS := true
|
||||
+
|
||||
+TARGET_NO_KERNEL_OVERRIDE := true
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,40 +0,0 @@
|
||||
From 8db167728d498636399cf2ca04cbdd4a3e23b9f9 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 11 Oct 2022 11:29:02 +0000
|
||||
Subject: [PATCH 4/9] treble: Enable call recording
|
||||
|
||||
Change-Id: I57ca3604363547419a566b37b5151b6b30c46d28
|
||||
---
|
||||
.../dialer/callrecord/res/values/config.xml | 20 +++++++++++++++++++
|
||||
1 file changed, 20 insertions(+)
|
||||
create mode 100644 overlay-lineage/packages/apps/Dialer/java/com/android/dialer/callrecord/res/values/config.xml
|
||||
|
||||
diff --git a/overlay-lineage/packages/apps/Dialer/java/com/android/dialer/callrecord/res/values/config.xml b/overlay-lineage/packages/apps/Dialer/java/com/android/dialer/callrecord/res/values/config.xml
|
||||
new file mode 100644
|
||||
index 0000000..4cacde5
|
||||
--- /dev/null
|
||||
+++ b/overlay-lineage/packages/apps/Dialer/java/com/android/dialer/callrecord/res/values/config.xml
|
||||
@@ -0,0 +1,20 @@
|
||||
+<?xml version="1.0" encoding="UTF-8"?>
|
||||
+<!--
|
||||
+ Copyright (C) 2021 The LineageOS Project
|
||||
+
|
||||
+ Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+ you may not use this file except in compliance with the License.
|
||||
+ You may obtain a copy of the License at
|
||||
+
|
||||
+ http://www.apache.org/licenses/LICENSE-2.0
|
||||
+
|
||||
+ Unless required by applicable law or agreed to in writing, software
|
||||
+ distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
+ See the License for the specific language governing permissions and
|
||||
+ limitations under the License.
|
||||
+-->
|
||||
+<resources>
|
||||
+ <bool name="call_recording_enabled">true</bool>
|
||||
+ <integer name="call_recording_audio_source">4</integer>
|
||||
+</resources>
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,46 +0,0 @@
|
||||
From eec24080edaf13ebf8d4b58815a5ef7c22f88658 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sat, 5 Nov 2022 23:49:11 +0000
|
||||
Subject: [PATCH 5/9] treble: Switch to MindTheGapps
|
||||
|
||||
Change-Id: I1b80d4c5176cbf4af21d147c71b0abce6027c7c7
|
||||
---
|
||||
generate.sh | 13 +++++++------
|
||||
1 file changed, 7 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/generate.sh b/generate.sh
|
||||
index 89fa88b..8654eeb 100644
|
||||
--- a/generate.sh
|
||||
+++ b/generate.sh
|
||||
@@ -24,9 +24,15 @@ for part in a ab;do
|
||||
extra_packages=""
|
||||
vndk="vndk.mk"
|
||||
optional_base=""
|
||||
+
|
||||
+ baseArch="$arch"
|
||||
+ if [ "$arch" = "a64" ];then
|
||||
+ baseArch="arm"
|
||||
+ fi
|
||||
+
|
||||
if [ "$apps" == "gapps" ];then
|
||||
apps_suffix="g"
|
||||
- apps_script='$(call inherit-product, device/phh/treble/gapps.mk)'
|
||||
+ apps_script='$(call inherit-product, vendor/gapps/'$baseArch'/'$baseArch'-vendor.mk)'
|
||||
apps_name="with GApps"
|
||||
fi
|
||||
if [ "$apps" == "gapps-go" ];then
|
||||
@@ -66,11 +72,6 @@ for part in a ab;do
|
||||
|
||||
target="lineage_${arch}_${part_suffix}${apps_suffix}${su_suffix}"
|
||||
|
||||
- baseArch="$arch"
|
||||
- if [ "$arch" = "a64" ];then
|
||||
- baseArch="arm"
|
||||
- fi
|
||||
-
|
||||
zygote=32
|
||||
if [ "$arch" = "arm64" ];then
|
||||
zygote=64_32
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,35 +0,0 @@
|
||||
From fd621da49491bdb2272a076778c7c0374b3f6d1f Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 22 Nov 2022 00:36:15 +0000
|
||||
Subject: [PATCH 6/9] treble: Stop securing ADB
|
||||
|
||||
Seems to kill USB Debugging altogether on certain devices,
|
||||
and unrelated to SN anyway
|
||||
Build-time macro coupled with vendor/lineage might do better...
|
||||
|
||||
Change-Id: I0215b3ed970dd53a124f48e30ca2cf4b0c6d2899
|
||||
---
|
||||
rw-system.sh | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
|
||||
diff --git a/rw-system.sh b/rw-system.sh
|
||||
index d78d6f2..dfd9305 100644
|
||||
--- a/rw-system.sh
|
||||
+++ b/rw-system.sh
|
||||
@@ -786,13 +786,10 @@ if [ -f /system/phh/secure ] || [ -f /metadata/phh/secure ];then
|
||||
resetprop_phh ro.boot.veritymode enforcing
|
||||
resetprop_phh ro.boot.warranty_bit 0
|
||||
resetprop_phh ro.warranty_bit 0
|
||||
- resetprop_phh ro.debuggable 0
|
||||
resetprop_phh ro.secure 1
|
||||
resetprop_phh ro.build.type user
|
||||
resetprop_phh ro.build.selinux 0
|
||||
|
||||
- resetprop_phh ro.adb.secure 1
|
||||
-
|
||||
# Hide system/xbin/su
|
||||
mount /mnt/phh/empty_dir /system/xbin
|
||||
mount /mnt/phh/empty_dir /system/app/me.phh.superuser
|
||||
--
|
||||
2.34.1
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user