By design, we want to show/hide back button for 2nd
layer page when it's in two pane mode.
Test: Manual test
Bug: 219000314
Change-Id: I14d8d7ee08280d5ce80c0b59e1e91d077f0b6d09
This allows the new avatar picker to open as a full screen activity
on tablet, rather than being embedded in the right-hand pane.
Bug: 215134398
Test: manual, opened avatar picker on tablet
Change-Id: Ide8f81643e90c90850ad93ec802bb557e260baed
This new config will be overlayed in titan devices to update the split
ratio to 30/70
Bug: 215707431
Test: locally on device
Change-Id: I7bd193d7516939f5c4d434cd3333456c20e53a91
Test: Make sure behavior is correct as it was in
search flow, higlight flow, regular settings flow, split screen flow.
Bug: 204399167
Change-Id: I7fc29c8cdbfc6682963591f4ff805070bea4ca22
- Create TopLevelHighlightMixin to handle highlight actions and simplify
TopLevelSettings
- Fix the error highlight and the flicker after screen rotation
- Postpone creating the fragment until it's needed to accelerate the
initialization and to fix the search highlight function breakage after
toggling light/dark mode
- Register activity embedding rules only once for injection and
wallpaper
- Do not highlight Tips & support since it's full screen
- Refactor ActivityEmbeddingRulesController
Bug: 207316936
Test: manual, robotest build pass
Change-Id: If322ec180b03ee123987c70779a25c6a570d9faf
Prior to this cl, if user opens settings app
in single-pane first and navigates to
the search page, then rotate the device,
user observed the search page was still shown
with full screen.
Because we didn't register correct split rule,
it causes the abormal behavior on two-pane mode.
In order to register correct rule, we also need
to assign correct component name while opening the
search page.
Fix: 206896763
Test: Rebuilt apk and verify the behavior
Change-Id: I7343467aa716d71da63f2ad0a034dc6c1b7fd415
Since the fingerprint registration sometimes has a hardware dependency,
to bring a better UX, make the flow full screen on large screen devices.
Bug: 197717071
Test: Try to register a new fingerprint and see the pages are full
screen.
Change-Id: I5dcb720a8b6a58bd9fc67ecae35f730c20a2c4d3
- 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
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
Bug: 204829538
Test: Open Settings in landscape in two panes, rotate to portrait to stack, rotate back to split
Change-Id: I5790962051d0b01902f3b50e958848eff7cf7334
Setting app should set SplitPairRule for all the alias of
SettingsHomepageActivity to handle all the different
launch cases.
Bug: 204156913
Bug: 204399375
Test: manual
1. Launch settings in unfold screen
2. Fold screen
3. Launch wallpaper app
4. Unfold screen
Change-Id: I3ad33a750ef19390bc8dc3fb4dc6f1c80630d57f
We should keep consistent split rule for wallpaper and other home menu
item. So, we create this cl to register the split rule for wallpaper.
Also, I do some minor refactoring in this cl for reusing existing
method and better code quality.
Test: Go to wallpaper, and click back key. App can close.
Fix: 204406425
Fix: 204364572
Change-Id: Ia7de9483b351d1121cc26c4af1cb8a89ad0a16bc
The callback of SplitStateObserver.SplitStateListener can have one
or more active splits when there is already 2-pane in Activity stack.
This change prevent unnecessary 2-pane deep link flow if the Activity
is already in 2-pane activity stack.
This solution does not work if the Activity was started in a new task.
(e.g., Intent.FLAG_ACTIVITY_NEW_TASK, launchMode singleTask).
Bug: 201379454
Bug: 201620626
Bug: 204398432
Bug: 204397936
Bug: 197609195
Bug: 197609197
Bug: 204501179
Bug: 204959335
Bug: 204845334
Test: manual
1. Settings -> Apps > Default apps > Opening links.
2. Click back button should back to Default apps page.
Change-Id: I04aaceed47a8f2754a4e17c53b49252f61e0a1d1
- add a standalone home activity for slice deep link.
- add EXTRA_IS_FROM_SLICE to control the slice deep link flow.
- Intent#parseUri fails if the intent data schema is set.
Add EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_DATA to relay the
data schema.
Bug: 201397123
Test: manual, robotest
1. Say 'Enable NFC'/'Enable Bluetooth'to Google assistant.
2. Click the the NFC/BT Slice.
Change-Id: Ia3216956328c32b2109cb2d70ad1105327661f26
Settings app registers SubSettings SplitPairRule with clearTop
true, it will finish Settings app if users click back button on
a SubSettings page.
This change registers SubSettings SplitPairRule with clearTop
true when users click a SubSettings item in Settings home menu.
And this change registers SubSettings SplitPairRule with clearTop
false when users click a SubSettings item in search result.
Bug: 204501750
Test: manual
1. Settings -> Search settings -> search a SubSettings item
(e.g., Battery)
2. Click the searched item.
3. Click back button.
Change-Id: I6e1862de528e971137ae7087de608bbdd79096b2
Create an new interface in the embedding provider,
this interface tells if settings app is in two pane or not.
To access the activity in the content provider, we need to store
the activity reference in the app application layer.
Test: See if two pane state is correct.
Bug: 203763572
Change-Id: Iae2245b84af2683d932f1900df9959dad98370d7
Prior to this cl, we checked the app bounds for deciding
app in two pane or not. However, this might be broken in some certain
sceanrios.
Currently, api will check the entire task bounds.
If the width of task bounds is larger than two pane criteria,
then we treat it as in two pane mode.
Test: Highlighted behavior works correct.
Fix: 203763572
Change-Id: Ib14851b1e3e097328874c7956bb653f50820f877
This reverts commit 096c090b80.
Reason for revert: crash is fixed in this change
Bug: 202510128
Test: manual, build
Change-Id: Ifff8d58cfdcf43e123b11dee308665b2617cb4b3
Set alwaysExpand and SearchActivity will show in full screen.
Bug: 196923591
Test: manual
Settings -> Search settings
Change-Id: I4174753bce15232342fa69d0845225a95d757782
1. Add a preference group adapter to perform highlighting
2. Add a class for mapping highlighable menu keys and preference keys
3. Add an API to determine if the screen is in split mode
Bug: 199017944
Test: manual, build
Change-Id: I8e3fe5fb96480a31ee0f3b3afb6ad78999d3d2bc
- Set both secondary ComponentName and secondary Intent action
in SplitPairFilter when registering SplitPairRule for deep link.
- Set ComponentName to the Intent which DeepLinkHomepageActivity
uses to start the deep link page.
This change setup Intent and SplitPairRule to have both
Intent action and ComponentName. It fixes matching problem.
Bug: 201627196
Bug: 199888089
Test: manual
[Unfolded] Long press home (workspace) -> Pop-up menu ->
Tap 'Wallpaper & style' -> Launch Settings in the left as
list and 'Wallpaper & style' in the right as detail.
Change-Id: I8cc8cef911ce0d7d05f332eb86f77f8d2543827f
Updating to the latest version of the library
that's added in the topic.
Bug: 199676595
Test: Build, install and test Settings
Change-Id: Ia08314a93c4b5263e2fb6c06a5b517a74e9e3745
Follow UI spec, we extend criteria width from 600dp -> 720dp
Original code checks if there is only one Activity in
Activity stack to decide if it's a deep link intent,
it has problem at configurationChange.
This change checks if the intent is from Settings app
itself to decide if it's a deep link intent.
Bug: 197716926
Bug: 199808997
Test: Build apk and run on the device.
Change-Id: Ide8ef2ccffa87b9ee4fab41ab4f395b00def9bd6
SettingsHomepageActivity may be launched by different alias,
this change sets placeholder for all these alias to ensure
placeholder is present.
Bug: 199363383
Test: manual
1. Click Settings icon button in quick setting panel.
2. Launch Settings app deep link, then move it to background,
and the launch Settings app.
Change-Id: I9ba6dbc5cfa2bac51bf53bb21f8983193ba053b6
This change supports deep link to Settings app internal pages
and external pages outside Settings app.
Apps need android.permission.ALLOW_TWO_PANES_DEEP_LINK_IN_SETTINGS
to send the intent of Settings#ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK.
Settings app will startActivity for the intent from
Settings#EXTRA_SETTINGS_LARGE_SCREEN_DEEP_LINK_INTENT_URI.
Bug: 197048599
Test: build pass
Change-Id: Idaf4a8be4603c1308f16fb4e378266c1e52acb40
This reverts commit 07037dbc3f.
Reason for revert: <Issue already was fixed in ag/15743576 and ag/15743577>
Bug: 197716926
Change-Id: I72b98f8feb513f34e88e735efd578a8e3d9a1963
This reverts commit a12a0d1eb2.
Reason for revert: See a build error in git_sc-v2-dev-plus-aosp/aosp_crosshatch-userdebug
Bug: 198722766
Change-Id: Ibf812bf92595f57409e3c6d9cda6a1dfa4a8c72c
1. Only enable this feature when the flag is on and library is supported
in this device.
2. Add a placeholder rule for home menu.
Network page will be shown to the right pane by default.
3. Add a rule for most sub settings pages.
Known issues:
1. Transition animation seems wrong in this cl.
2. App is closed if user taps back key on the second layer page in fold
state.
Test: Run the apk on large screen device and regular phone. No crash
happens
Bug: 197716926
Change-Id: I089717e84c5e92c6e5b02d9770a24376e250fea2