Commit Graph

681 Commits

Author SHA1 Message Date
Arc Wang
ff8c5e0079 Fix crash when switching Display size
Ensure mHighlightMixin is not null before using it.

Bug: 269385877
Test: manual
      Change Display size and observe if Settings crashes.
Change-Id: I9c7ca8d490f7ede6b73d09d51c3e304844e7df0c
2023-02-15 16:03:24 +08:00
Nikhil Kumar
71214f0457 Merge "SettingsHomepageActivity: Get profile parent using UM.getProfileParent" 2023-02-13 09:58:44 +00:00
Nikhil Kumar
69bc7b0438 SettingsHomepageActivity: Get profile parent using UM.getProfileParent
In the headless system user mode(hsum) non-primary users can also have a profile.
The existing implementation in SettingsHomepageActivity always gets the primary user as the profile parent, refactored the implementation to get profile parent using UserManager.getProfileParent.

Get parent user id instead of primary user as profile parent

Bug: 267299459
Test: croot && make RunSettingsRoboTests -j40
ROBOTEST_FILTER=SettingsHomepageActivityTest

Change-Id: I36845eb5b1a09b0ff3d87c7d08b120c95f59783b
2023-02-10 09:15:03 +00:00
jasonwshsu
c1fb0ae240 [Pair hearing devices] Add "Saved devices" to show bonded but not connected hearing devices
* BaseHearingDevicePreferenceController will also be used in "Hearing devices", so extract to parent class first.

Bug: 237625815
Test: make RunSettingsRoboTests ROBOTEST_FILTER="(SavedHearingDeviceUpdaterTest|BaseBluetoothDevicePreferenceControllerTest|BluetoothDeviceUpdaterTest|AvailableMediaBluetoothDeviceUpdaterTest|ConnectedBluetoothDeviceUpdaterTest|SavedBluetoothDeviceUpdaterTest)"
Change-Id: I8a492866f48e3a664b9ff78bce5a4f082c0dc465
2023-02-09 10:17:25 +08:00
Jiaming Liu
e65283de6a Fix build for jetpack update
Fix build for jetpack update

Bug: 265818545
Test: build

Change-Id: If48e7338ee560d995cb8bff7b5348ab36c457836
2023-02-03 02:37:42 +00:00
Diego Vela
a9394d1796 Update ActivityEmbedding usage.
Update ActivityEmbedding usage.

Bug: 259592300
Test: build.
Change-Id: I8e4aa8daf51cb9c669d06b152cc5a2fc69a06571
2023-02-03 02:34:20 +00:00
Calvin Pan
f03d4106fa Force Settings to align locales of embedded activities
Android 13 introduces the feature of per-app language that allows
users to set a preferred language for each app. However, Settings
embeds many activities from different apps, which may cause
multiple languages to be displayed on one Settings page.

Enable TaskLocaleOverride to align the locales of activities
launched in the same task.

Bug: 199277729
Test: Verified on Cuttlefish
Change-Id: I9ee2b8c481f9c0cb5f17eb1cea037317df35e9d9
2023-01-17 04:27:39 +00:00
Weng Su
f077b83586 Refine TetherSettings
- Move TetherSettings to network/tether folder

- Refine unit tests

Bug: 237273138
Test: manual test
make RunSettingsRoboTests ROBOTEST_FILTER=TetherSettingsTest

Change-Id: I1eb79780df824c575e79047bdeb3a9276f061fe9
2022-12-22 23:04:59 +08:00
Arc Wang
86afd10ada Merge "Check Uri permission for FLAG_GRANT_READ/WRITE_URI_PERMISSION" 2022-12-14 05:52:29 +00:00
Arc Wang
aef9355579 Merge "Allow 2-pane deep link to access unexported Activity" 2022-12-14 05:52:15 +00:00
Jason Chiu
79d282bbfb Merge "Revert "Remove FLAG_ACTIVITY_FORWARD_RESULT in 2-pane flow"" 2022-12-14 02:49:17 +00:00
Arc Wang
0c18e8990c Check Uri permission for FLAG_GRANT_READ/WRITE_URI_PERMISSION
To improve security, calling app must be granted Uri permission
if it sets FLAG_GRANT_READ/WRITE_URI_PERMISSION in the Intent of
ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY.

Bug: 250589026
Test: manual
Change-Id: I48f88c662b843212b1066369badff84cf98935a8
2022-12-13 21:21:42 +08:00
Arc Wang
1a49146508 Allow 2-pane deep link to access unexported Activity
If an Activity is not exported, the Activity still can be
launched by components of the same application, applications
with the same user ID, or privileged system components.

Bug: 261678674
Bug: 250589026
Test: manual visual
      Launcher -> context menu -> Wallpaper & style
Change-Id: I662df6cb287361b135e2c596abe946ddeb03bda4
2022-12-13 20:06:23 +08:00
Jason Chiu
8b1e5d9d7d Revert "Remove FLAG_ACTIVITY_FORWARD_RESULT in 2-pane flow"
This reverts commit ea1580f92b.

Reason for revert:
1. Search result trampoline should have that result sent back to the
reply target of the original activity.
2. To leverage the behavior of handheld's deep link case, large
screen's deep link should forward the result.

Change-Id: I55303070e35fc9430063655e0a9a0fd72e0823ac
2022-12-13 08:05:49 +00:00
Arc Wang
d115638c36 Merge "Fix SettingsHomepageActivity crash during configuration change" into tm-qpr-dev am: a0e5f09d94 am: a538747a6a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20615154

Change-Id: Id0b95aa046f8b225d75bedd0ff752f8f1b0b78d5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-13 02:45:16 +00:00
Arc Wang
a538747a6a Merge "Fix SettingsHomepageActivity crash during configuration change" into tm-qpr-dev am: a0e5f09d94
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20615154

Change-Id: I7acafe30f3cccfb2cf1428493f5cee42c5e8e9a7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-13 02:07:35 +00:00
Arc Wang
a0e5f09d94 Merge "Fix SettingsHomepageActivity crash during configuration change" into tm-qpr-dev 2022-12-13 01:19:06 +00:00
Arc Wang
da847e7f00 Fix SettingsHomepageActivity crash during configuration change
Attempt to remove the animator to avoid a RecyclerView crash.

Bug: 260208703
Test: compile
Change-Id: I568cf964107f832fde4d82306fc84772bb208e20
2022-12-05 11:35:15 +08:00
Arc Wang
c3141fa911 Settings 2-pane deep link vulnerabilities
Settings app must not start an deep link Activity if
1. The deep link Activity is not exported.
or
2. Calling package does not have the permission to
   start the deep link Activity.

Bug: 250589026
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SettingsHomepageActivityTest
Change-Id: I9a3bddfa5d9d1d2e924dd6f3e5e07dca6c11664f
2022-11-29 00:10:36 +08:00
Arc Wang
23412ad94a Settings 2-pane deep link vulnerabilities
Settings app must not start an deep link Activity if
1. The deep link Activity is not exported.
or
2. Calling package does not have the permission to
   start the deep link Activity.

Bug: 250589026
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SettingsHomepageActivityTest
Change-Id: I9a3bddfa5d9d1d2e924dd6f3e5e07dca6c11664f
Merged-In: I9a3bddfa5d9d1d2e924dd6f3e5e07dca6c11664f
2022-11-29 00:05:09 +08:00
Yi-Ling Chuang
2dd4058e37 Remove BatteryFixSlice as it's not used am: 2f80e073d0
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20514509

Change-Id: I536b1e852ddcf5154c8aeb64ae755156330aa9ed
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-19 19:16:34 +00:00
Yi-Ling Chuang
2f80e073d0 Remove BatteryFixSlice as it's not used
The BatteryFixSlice hasn't been used for a while, and it's introducing
memory leaks due to a design change at the framework's end. Hence,
remove it.

Bug: 245385410
Test: robotests
Change-Id: I517cab71a32613d5cb5fcd3beb991a24926a2902
Merged-In: I517cab71a32613d5cb5fcd3beb991a24926a2902
(cherry picked from commit e3fcf1f082)
2022-11-18 10:58:42 +00:00
Yi-Ling Chuang
e3fcf1f082 Remove BatteryFixSlice as it's not used
The BatteryFixSlice hasn't been used for a while, and it's introducing
memory leaks due to a design change at the framework's end. Hence,
remove it.

Bug: 245385410
Test: robotests
Change-Id: I517cab71a32613d5cb5fcd3beb991a24926a2902
2022-11-04 12:22:56 +08:00
Arc Wang
67dc170d66 [Activity embedding] Fix unexpected finished 2nd layer problem am: 9e207bfcd0
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20309891

Change-Id: I0ed23ce19ce4dca5308ecae20e891f4476738258
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-01 02:54:36 +00:00
Treehugger Robot
9040efdccc Merge "Fix errorprone warnings that should be errors" am: 5744d7c560 am: 7094507528 am: 778ef161bb
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2255054

Change-Id: I1f3cbce7d5de6e63477bc2da2ad115ec53b06472
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-01 00:02:10 +00:00
Treehugger Robot
778ef161bb Merge "Fix errorprone warnings that should be errors" am: 5744d7c560 am: 7094507528
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2255054

Change-Id: I369fd8dc4e2cec46ffd4e61a32e7e55cb11b41a8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-10-31 23:24:11 +00:00
Treehugger Robot
7094507528 Merge "Fix errorprone warnings that should be errors" am: 5744d7c560
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2255054

Change-Id: I65ce6c4fdedd32ff6feb4b5e210b508aafc4e589
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-10-31 22:57:02 +00:00
Arc Wang
9e207bfcd0 [Activity embedding] Fix unexpected finished 2nd layer problem
If Settings is started on an existing task, the existing SplitPairRule
may cause an unexpected app finish while navigating back from the
2nd layer page.

This change resets SplitPairRule in onNewIntent().

Bug: 247080168
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SettingsHomepageActivityTest
      manual
      1. Settings app -> 'Connexted device'.
      2. Launch Settings app again from Settings icon in quick Settings.
      3. Start a 3rd layer from 'Network & internet'
      4. Click back and see if the 2nd lay shows.
Change-Id: I262327cc49c3a4434a183eb00ac57f47fa598f70
Merged-In: I262327cc49c3a4434a183eb00ac57f47fa598f70
2022-10-31 21:33:02 +08:00
TreeHugger Robot
7ced3c187d Merge "Use correct menu key highlights for safety center" into tm-qpr-dev am: b0f38d29d2 am: dada288047
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20209766

Change-Id: Ie4bec451717442032411cad912810cbfd7a69baa
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-10-31 11:24:47 +00:00
TreeHugger Robot
dada288047 Merge "Use correct menu key highlights for safety center" into tm-qpr-dev am: b0f38d29d2
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20209766

Change-Id: I33446534e0f76df00fe3e5fad0e8ac135afafc5e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-10-31 10:54:00 +00:00
TreeHugger Robot
b0f38d29d2 Merge "Use correct menu key highlights for safety center" into tm-qpr-dev 2022-10-31 10:04:02 +00:00
Arc Wang
31eec49217 [Activity embedding] Fix unexpected finished 2nd layer problem
If Settings is started on an existing task, the existing SplitPairRule
may cause an unexpected app finish while navigating back from the
2nd layer page.

This change resets SplitPairRule in onCreate().

Bug: 247080168
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SettingsHomepageActivityTest
      manual
      1. Settings app -> 'Connexted device'.
      2. Launch Settings app again from Settings icon in quick Settings.
      3. Start a 3rd layer from 'Network & internet'
      4. Click back and see if the 2nd lay shows.
Change-Id: I262327cc49c3a4434a183eb00ac57f47fa598f70
2022-10-31 05:48:45 +00:00
Stanley Wang
cf38fb9701 Merge "Send pre-index intent at Settings first started" into tm-qpr-dev am: 5ba309c5ad
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20307417

Change-Id: I849c03cd70a2e5598d6b95cbaf2b4fcae5316831
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-10-28 11:19:05 +00:00
Stanley Wang
0a9a9d34a7 Send pre-index intent at Settings first started
Bug: 244521263
Test: manually test and review UI
Change-Id: I654a562b62256fd673f65949dd264f75574444c0
(cherry picked from commit 59446252d7)
2022-10-28 07:33:41 +00:00
Simon Wingrove
ea8a4adc91 Use correct menu key highlights for safety center
Adds a menu key for the security deeplink, and adds a remapping to
ensure the correct key is used depending on if safety center is
available or not.

Bug: 253553761
Test: manually
Change-Id: I8ed9efd084e1fdfa298be1826a215218c84b1f4a
2022-10-24 10:08:52 +01:00
Cole Faust
43ff89802c Fix errorprone warnings that should be errors
This commit is part of a large scale change to fix errorprone
errors that have been downgraded to warnings in the android
source tree, so that they can be promoted to errors again.
The full list of changes include the following, but not all
will be present in any one individual commit:

BadAnnotationImplementation
BadShiftAmount
BanJNDI
BoxedPrimitiveEquality
ComparableType
ComplexBooleanConstant
CollectionToArraySafeParameter
ConditionalExpressionNumericPromotion
DangerousLiteralNull
DoubleBraceInitialization
DurationFrom
DurationTemporalUnit
EmptyTopLevelDeclaration
EqualsNull
EqualsReference
FormatString
FromTemporalAccessor
GetClassOnAnnotation
GetClassOnClass
HashtableContains
IdentityBinaryExpression
IdentityHashMapBoxing
InstantTemporalUnit
InvalidTimeZoneID
InvalidZoneId
IsInstanceIncompatibleType
JUnitParameterMethodNotFound
LockOnBoxedPrimitive
MathRoundIntLong
MislabeledAndroidString
MisusedDayOfYear
MissingSuperCall
MisusedWeekYear
ModifyingCollectionWithItself
NoCanIgnoreReturnValueOnClasses
NonRuntimeAnnotation
NullableOnContainingClass
NullTernary
OverridesJavaxInjectableMethod
ParcelableCreator
PeriodFrom
PreconditionsInvalidPlaceholder
ProtoBuilderReturnValueIgnored
ProtoFieldNullComparison
RandomModInteger
RectIntersectReturnValueIgnored
ReturnValueIgnored
SelfAssignment
SelfComparison
SelfEquals
SizeGreaterThanOrEqualsZero
StringBuilderInitWithChar
TreeToString
TryFailThrowable
UnnecessaryCheckNotNull
UnusedCollectionModifiedInPlace
XorPower

See https://errorprone.info/bugpatterns for more
information on the checks.

Bug: 253827323
Test: m RUN_ERROR_PRONE=true javac-check
Change-Id: I29f691a22617b1fc834680ff1cf4ab4244203f06
2022-10-23 12:41:39 -07:00
Chaohui Wang
507e5f8c90 Fix some errors for Settings project
Attrs could not have same name, so create a common parent for the
messageText. And BiometricEnrollCheckbox is not in use.

Replace some com.android.settingslib.R with com.android.settings.R,
because these are files in settings instead of settingslib.

Bug: 253772249
Test: TAP
Change-Id: Ifa796e923bf26facf4935be4968637affdb4b48b
2022-10-16 14:14:02 +08:00
Stanley Wang
59446252d7 Send pre-index intent at Settings first started
Bug: 244521263
Test: manually test and review UI
Change-Id: I654a562b62256fd673f65949dd264f75574444c0
2022-09-05 18:31:43 +08:00
TreeHugger Robot
380dc18c0a Merge "Support target intent data relay in SearchResultTrampoline" 2022-09-05 06:30:51 +00:00
Les Lee
7f57ed8ea8 Merge "wifi: Handle wifi ap initial state before register intent" into tm-qpr-dev am: b75858bf82 am: 03cb9dcb8a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19491094

Change-Id: If2a889addd5a9d2a18960ac8c61173af6592a045
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-29 02:21:40 +00:00
Les Lee
03cb9dcb8a Merge "wifi: Handle wifi ap initial state before register intent" into tm-qpr-dev am: b75858bf82
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19491094

Change-Id: I65a54ab88204a4dfd484a8faf157d6b9db5b3f69
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-29 02:02:41 +00:00
Les Lee
c6c6ef3a58 wifi: Handle wifi ap initial state before register intent
The intent WIFI_AP_STATE_CHANGED_ACTION is not sticky intent after
SC-V2, query wifi ap state and run intent handling after registering intent.

Bug: 231214355
Test: make RunSettingsRoboTests ROBOTEST_FILTER=Hotspot
Test: make RunSettingsRoboTests ROBOTEST_FILTER=Tether
Test: Manual test, the state shows correctly even if resume hotspot settings page from recent app.
Change-Id: Iab6b2b8628d725b003d5e5c4086420a329611745
2022-08-25 23:07:40 +08:00
Jason Chiu
2118ea589b Support target intent data relay in SearchResultTrampoline
Bug: 240391954
Test: manual & robotest
Change-Id: I2798839dd03f3f2fd165c8cba86b748aa6257804
2022-08-22 18:16:11 +08:00
Arc Wang
95401fbade Merge "Remove FLAG_ACTIVITY_FORWARD_RESULT in 2-pane flow" 2022-08-11 01:17:03 +00:00
Arc Wang
ea1580f92b Remove FLAG_ACTIVITY_FORWARD_RESULT in 2-pane flow
Settings$CreateShortcutActivity does not necessary to be
displayed in 2-pane and it seems no scenario needs the flag
Intent.FLAG_ACTIVITY_FORWARD_RESULT.

Bug: 241346847
Test: build pass
Change-Id: I7a8fca61b453db70233b151711df516649424e3a
2022-08-10 16:14:11 +08:00
Chaohui Wang
0441f990f9 Merge "Remove the redundant constructor of SuggestionFeatureProviderImpl" 2022-08-08 06:47:18 +00:00
Arc Wang
be2ea9eb39 Avoid 2-pane deep link before gone through Setup Wizard
To improve security.

Fix: 238391432
Test: manual
      Flash ROM and check 2-pane bebavior
Change-Id: If96c645319d9df45930644fd438cf479462685b0
2022-07-27 11:27:33 +08:00
Chaohui Wang
80a11a251e Remove the redundant constructor of SuggestionFeatureProviderImpl
Fix: 175167313
Test: robotest
Change-Id: I7ebbaf92398a8300971d592e2ee7a6e0d82c1d2f
2022-07-13 03:44:26 +00:00
Arc Wang
69974d0c4f Add test cases for highlight Preference click behavior
On large screen Activity embedding devices, Settings homepage
shows a highlighted Preference which is mapped to current
right pane.

For better UX, when users click again on a highlighted Preference,
it should not launch SubSettings.

Fix: 236275503
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.dashboard.DashboardFeatureProviderImplTest
Change-Id: I222c9b015fb090f359c3c9f4187823477920715b
2022-07-04 18:20:22 +08:00
Zaiyue Xue
6470ada117 Merge "Move battery usage files to a separate folder." into tm-qpr-dev am: 3b7953eac2
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18797446

Change-Id: I3e0ae9d1922b8d6f55721ec3357d529a58a56dc3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-20 09:32:47 +00:00