From ea0b5d5950e70cb459b99bae20887f47c6a195ff Mon Sep 17 00:00:00 2001 From: Jaewan Kim Date: Tue, 5 Nov 2024 03:39:08 +0900 Subject: [PATCH] Clear Linux terminal app when disabled Bug: 374032310 Test: Manual, T/H Flag: Build.RELEASE_AVF_SUPPORT_CUSTOM_VM_WITH_PARAVIRTUALIZED_DEVICES Change-Id: Id56f98cf90b0598111baa3096b1b81307ebb99a3 --- res/xml/linux_terminal_settings.xml | 6 ++++++ .../EnableLinuxTerminalPreferenceController.java | 4 ++++ .../EnableLinuxTerminalPreferenceControllerTest.java | 2 ++ 3 files changed, 12 insertions(+) diff --git a/res/xml/linux_terminal_settings.xml b/res/xml/linux_terminal_settings.xml index 332ca860e50..bfb7328a294 100644 --- a/res/xml/linux_terminal_settings.xml +++ b/res/xml/linux_terminal_settings.xml @@ -24,4 +24,10 @@ android:title="@string/enable_linux_terminal_summary" settings:controller="com.android.settings.development.linuxterminal.EnableLinuxTerminalPreferenceController" /> + + diff --git a/src/com/android/settings/development/linuxterminal/EnableLinuxTerminalPreferenceController.java b/src/com/android/settings/development/linuxterminal/EnableLinuxTerminalPreferenceController.java index 5989aebb078..bc3b44b5d3c 100644 --- a/src/com/android/settings/development/linuxterminal/EnableLinuxTerminalPreferenceController.java +++ b/src/com/android/settings/development/linuxterminal/EnableLinuxTerminalPreferenceController.java @@ -95,6 +95,10 @@ public class EnableLinuxTerminalPreferenceController extends BasePreferenceContr ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED : PackageManager.COMPONENT_ENABLED_STATE_DEFAULT; mPackageManager.setApplicationEnabledSetting(mTerminalPackageName, state, /* flags= */ 0); + if (!isChecked) { + mPackageManager.clearApplicationUserData( + mTerminalPackageName, /* observer= */ null); + } } @Override diff --git a/tests/robotests/src/com/android/settings/development/linuxterminal/EnableLinuxTerminalPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/linuxterminal/EnableLinuxTerminalPreferenceControllerTest.java index 80d5ca5034d..a322f90f16c 100644 --- a/tests/robotests/src/com/android/settings/development/linuxterminal/EnableLinuxTerminalPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/development/linuxterminal/EnableLinuxTerminalPreferenceControllerTest.java @@ -139,6 +139,8 @@ public class EnableLinuxTerminalPreferenceControllerTest { mTerminalPackageName, PackageManager.COMPONENT_ENABLED_STATE_DEFAULT, /* flags= */ 0); + + verify(mPackageManager).clearApplicationUserData(mTerminalPackageName, null); } @Test