There's a restriction on starting activities from PendingIntents. Opt-in
required when starting activities from PendingIntents. (https://goo.gle/android-bal#opt-in-required)
Bug: 346690654
Change-Id: I0525ebe5a49e7a7f5b07236e01cd3ababce1da4d
Test: manual
This will allow us to access it from SystemUI.
Bug: 346519570
Test: builds
Flag: EXEMPT trivial refactor
Change-Id: I5bc480bd4eb0cbf8a26989dd11c064e66e5ee70e
- unified Search and Suggestion behavior between regular phone and two
pane
- don't adjust padding
- update new icon drawable
- support group homepage preference with round corner on phone
- Remove avator from homepage
- Adjust homepage preference order
Bug: 333989622
Bug: 334130370
Test: visual
Change-Id: I9880b52553f164745766c8b9d5c996585285e52a
Fix: 336449492
Test: atest SettingsHomepageActivityTest LocationInjectedServicesPreferenceControllerTest UserDetailsSettingsTest ActionDisabledByAdminDialogHelperTest ProfileSelectFragmentTest ProfileSelectLocationFragmentTest
- Start a managed app's info page
- Start a private app's info page
- Switch to a secondary user and start Settings
- Switch to the guest user and start Settings
Change-Id: I1c7c95d95c4739d70839a742ebc4e72b59b1d555
This reverts commit f9fabeae1c.
Reason for revert: Java crash when trying to open Settings on secondary user
Bug: 336697633
Bug: 337044085
Change-Id: I0c6793ce2a28294c093c9786cecddd19bd643141
Settings homepage should be started with the flag FLAG_ACTIVITY_NEW_TASK
to ensure it's the first activity in a task. Otherwise, there will be UI
issues.
When homepage is started with FLAG_ACTIVITY_NEW_TASK but not the first
activity, it means another homepage activity has been started, so
finishing the current invocation will bring up the previous activity in
the task.
On the other hand, when homapage is not started with the flag and not
the first activty, it indicates that the invocation is from another
app. Restarting the homepage activity with FLAG_ACTIVITY_NEW_TASK will
keep the UI behavior consistent.
Fix: 297857732
Fix: 309045575
Test: robotest, manual
1. Start Settings from QuickSettings, go to any subpage, navigate to
home, click Settings icon on the launcher, and the previously
opened page should be kept.
2. On a LS device, start Settings from another app without
FLAG_ACTIVITY_NEW_TASK, Settings should be started in dual-pane
mode.
Change-Id: If1f31e26dc37f681bd97c185cbeac2de06bdd48f
This reverts commit 19d1d3d15d.
Reason for revert: revert it because this is not the root cause.
bug: 316867690
Change-Id: I0f168dbb64044aa720202af7b1040afd4f028c9c
This reverts commit cf0501e4d7.
Reason for revert: b/317462033, it seems a flaky but revert it first.
Change-Id: Ie1d5e279cca6477fc17d8c27c1ecda8d7a6b2553
HomepageActivity should be the first activity in a task, or be launched
in singleTask mode. Finishing it will bring up the previous activity in
the task.
Fix: 297857732
Test: robotest
Change-Id: Iddcba1652060d755693dd20d0e350e3d6c1ae138
The suggestion view could just be operated once to eliminate flicker.
When the suggestion is completed, there was no way to dismiss it unless
users kill Settings.
This patch allows updating the view's visibility after the activity is
stopped. When the activity restarts, the view can be updated.
Fix: 294153594
Test: robotest
Change-Id: Idc3aada3bff001d603bf2f7737f70f2880f6cc35
- Add a callback class to monitor the split behavior of the activity
embedding and update UI if necessary.
Fixes: 279516059
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.homepage.SettingsHomepageActivity
Change-Id: I32e86265638684ddde067539a0f493be4c04afae
Disable the optimization that is automatically enabled when
including Window Extensions through Activity Embedding.
The optimization causes to launch an additional trampoline
activity for deep links, even when the screen size is smaller
than required by Activity Embedding rules.
Bug: 267725145
Bug: 279461170
fixes: 280606740
Test: Build, perf metrics
Test: atest LauncherIronwoodIntegrationTests:android.platform.test.scenario.launcher.integration_tests.HomescreenCustomizationTests
Test: atest SettingsMultiPaneDeepLinkTest.java
Test: run v2/aep-ironwood/suite/test-mapping-ironwood-p0-cujs via ABTD
on cheetah/oriole/panther/raven in udc-dev/master branch
Change-Id: I74c9608fce92fc77c0f1ef2d61aba3af85afba02
Disable the optimization that is automatically enabled when
including Window Extensions through Activity Embedding.
The optimization causes to launch an additional trampoline
activity for deep links, even when the screen size is smaller
than required by Activity Embedding rules.
This CL also rename isActivityEmbeddingEnabled to
shouldEnableLargeScreenOptimization because the method
may report false even if the device supports the feature
but Settings app doesn't for performance concern.
Bug: 267725145
Bug: 279461170
Test: Build, perf metrics
Test: atest LauncherIronwoodIntegrationTests:android.platform.test.scenario.launcher.integration_tests.HomescreenCustomizationTests
Test: atest SettingsMultiPaneDeepLinkTest.java
Change-Id: I38e8c62a61a344eb7a5cbfd1cd2c2137357d1a87
- Check the deep link activity instance before rediercting to the
internal activity for the managed profile invocation so the caller
can't bypass the permission check.
- Get the referrer as the caller so that onNewIntent can recognize the
new caller and check if it has a permission to open the target page.
Test: robotest & manual
Bug: 268193384
Bug: 272437506
Change-Id: Ie69742983fb74ee2316b7aad16461db95ed927c2
Ensure mHighlightMixin is not null before using it.
Bug: 269385877
Test: manual
Change Display size and observe if Settings crashes.
Change-Id: I9c7ca8d490f7ede6b73d09d51c3e304844e7df0c
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
* 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
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
- Move TetherSettings to network/tether folder
- Refine unit tests
Bug: 237273138
Test: manual test
make RunSettingsRoboTests ROBOTEST_FILTER=TetherSettingsTest
Change-Id: I1eb79780df824c575e79047bdeb3a9276f061fe9