Commit Graph

21 Commits

Author SHA1 Message Date
Charles Chen
9dc35d21b4 Revert^2 Disable Settings large-screen optimization
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
2023-05-05 07:46:06 +00:00
Priyanka Advani
77f76267d2 Revert "Disable Settings large-screen optimization"
Revert submission 22926596-disable_large_screen_opt

Reason for revert: b/280606740

Reverted changes: /q/submissionid:22926596-disable_large_screen_opt

Change-Id: Ib918705206dc6b8bcbce21f83494d1108c6b8393
2023-05-03 16:05:25 +00:00
Charles Chen
1815ba7828 Disable Settings large-screen optimization
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
2023-05-02 14:16:22 +08: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
Cynthia Wasonga
166999e9bf Hide clone profile Settings app from launcher
Bug: 258063297
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SettingsInitializeTest

Change-Id: If46354271ed1288b5078c4d6100c6f79212f3901
2023-01-11 06:42:43 +00:00
Jason Chiu
a3b21cf017 Start deep link page synchronously in SettingsActivity
- Use a synchronous API to make SettingsActivity start deep link intent
  in onCreate
- Change SettingsHomepageActivity from an alias to a real activity
- Clean up redundant codes

Fix: 206585572
Test: Manual, robotest build pass
Change-Id: Idf42c026f593bb5801a13cae250d1523030b7092
2021-11-18 12:20:08 +08:00
Jason Chiu
3af73364ba Support highlighting the menu entry for Search results
1. Add a receiver to monitor the search state
2. Shoe/hide the menu highlight in the listener
3. Highlight the menu entry in SearchResultTrampoline
4. Enable/disable the receiver in SettingsInitialize

Bug: 205781792
Test: manual, robotest
Change-Id: Ia04901f504172f4f0c7b4b2ea7eda5f3713f676d
2021-11-11 14:33:26 +08:00
Arc Wang
3648d67201 Change DeepLinkHomepageActivity enable state for ACTION_USER_INITIALIZE
Each user has different components enable state,
should update enable state of DeepLinkHomepageActivity
for Intent#ACTION_USER_INITIALIZE.

Bug: 202364984
Test: manual
      Switch user -> long click Launcher -> Wallpaper & style
      See if it shows wallpaper app's Activity.
Change-Id: If50de0f017f5cd606ba0cbf88d41eeabf3f47506
2021-10-08 08:11:13 +00:00
Arc Wang
54f619dfb8 [Large screen] Disable/enable DeepLinkHomepageActivity
This change enable/disable DeepLinkHomepageActivity according to
SplitController#isSplitSupported when receiving PRE_BOOT_COMPLETED.

PRE_BOOT_COMPLETED is an Intent which broadcasts once when the user
is booting after a system update.

Bug: 201236463
Bug: 201237323
Test: manual
      1. On a large screen device, Launcher -> Wallpaper & style
         Observe it uses intent ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK.
      2. On a small screen device, Launcher -> Wallpaper & style
         Observe it does NOT use intent ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK.
Change-Id: Icf6ab6d0cba38224c4b80276141d84a8468da760
2021-09-29 03:39:35 +00:00
Tsung-Mao Fang
ebcabd9c07 Fix ANR on ShorcutManager#getPinnedShortcuts
By design, ShorcutManager#getPinnedShortcuts is meant to called on
a work thread.

Fix: 183785618
Test: Switch the user profile, and function works properly.
Change-Id: I87b8d3f57123ff12f83f95fc7f053b8840028ebe
2021-04-06 18:27:06 +08:00
Fan Zhang
c3fd289969 Remove dead code.
Bug: n/a
Test: rebuild
Change-Id: I71f8d9d99bbff1186e8df518ec8d27db3447ffbe
2019-01-29 16:27:31 -08:00
Doris Ling
79848abfbd Only update mutable shortcuts.
When trying to update the flags for the existing shortcuts, check and
skip the immutable shortcuts, since they should not be modified.

Change-Id: Iee70ed92f45c1b0b0f0c5b902069c017acfa4990
Fixes: 119119713
Test: make RunSettingsRoboTests
2018-11-15 16:29:53 -08:00
Fan Zhang
23f8d59d02 Sort imports
Having consistent import order will reduce chance of merge
conflict between internal and external master

Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
2018-08-28 22:13:15 +00:00
Fan Zhang
f1f0f8bea6 Convert CreateShortcut to DashboardFragment
Created a new xml and CreateShortcutPreferenceController to deal with
querying package manager and display list on UI.

Bug: 74806595
Test: robotests
Change-Id: I0945245c3856d12b7751d26fca324d2dbf31b230
2018-06-22 11:30:56 -07:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07:00
Doris Ling
f2d7680d2c Update launch intent flags for settings shortcut widgets.
- earlier changes were made to the intent flags when creating new
settings shortcut to ensure that it is launching a new task. However,
ShortcutManager is actually caching existing shortcut info, and it will
continue to use the existing shortcut info unless we explicitly update
the info.
- when rebooting from build upgrade, we will go through all existing
shortcut to update the launch intent flags to ensure that the shortcut
info is update to date.

Change-Id: Iee2365d9aec64a47b193e3c9be443c252504815b
Fixes: 76395879
Test: make RunSettingsRoboTests
2018-04-05 10:20:26 -07:00
Fan Zhang
409eab14de Fix shortcut icon in launcher
When building icon for shortcut, check if the icon is LayerDrawable.
- If yes, only take the second layer (foreground).

Also move the class to shortcut package

Change-Id: I3513dbeb6509f11aa70ab3230d441e268ca9356d
Fixes: 72553870
Test: atest
2018-01-29 11:39:48 -08:00
Kenny Guy
4761da3b73 Disable managed profile version of shortcut picker.
Don't show managed profile version of shortcut
picker as it lunaches same activities as personal
one.

Test: manual - check badged shortcut isn't present in launcher.
Bug: 38333213
Change-Id: Iade6595255524a8dbf223a70a6c8312087258c23
2017-05-17 16:44:01 +01:00
Gustav Sennton
4d3334c50b Update WebView implementation Dev Setting - new looks + descriptions.
Now that we are changing the WebView package mechanism so that a package
can only be used as WebView implementation if that package is enabled
for all users of the device we need to tell the user why a package can't
be chosen as WebView implementation.
With this CL we do so in the 'Set WebView Implementation' Developer
Setting.

We code for the WebView implementation Developer Setting is now based on
the same code as that of the Debug App Developer Setting.

Bug: 32894154
Test: Ensure WebView Implementation setting shows correct packages.
Test: Ensure WebView Implementation setting shows correct descriptions
for why a package is not usable - including the case where packages are
disabled/uninstalled for a second user.
Test: Ensure the summary for the WebView Implmentation setting is
updated after changing WebView package.
Test: Ensure the WebView package Activity
(Settings.ACTION_WEBVIEW_SETTINGS) is similar to the Dev Setting.
Test: ensure non-admin user cannot start WV-picker activity through
'adb shell am start -n com.android.settings/.WebViewImplementation'

Change-Id: Ia6e6e9e12ce8f8f45ec539807cd0c6479acb8ecb
2017-01-23 18:34:11 +00:00
Gustav Sennton
66313bb11d Disable WebViewSetting for non-admin users.
For an app to be able to know whether the WebViewSetting is enabled for
a user we disable the setting at boot for non-admin users. In this way
an app can call intent.resolveActivity[Info] for the WebViewSetting
intent to check whether the WebViewSetting is enabled before linking to
it.

Bug: 28034166
Change-Id: I33b3fa10a38f2a2600cddd0891ef746126abdd61
2016-05-12 11:13:26 +01:00