Commit Graph

191 Commits

Author SHA1 Message Date
Behnam Heydarshahi
b443557d3d Remove ring_volume from VolumePanel
And from CustomSliceRegistry.

Bug: b/305280122
Test: make ROBOTEST_FILTER=VolumePanelTest RunSettingsRoboTests -j40
Change-Id: Iff444011399f09a5350de8aeacb724467364b61a
2023-10-30 17:58:49 +00:00
Behnam Heydarshahi
e711c0f256 Merge "PanelSlicesAdapter: load slice label safely" into udc-qpr-dev am: c46e8546b5 am: a38edf1ab2
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24664970

Change-Id: I09416fd5dee6842179358c6bb9bba6c533841045
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-16 02:55:24 +00:00
Behnam Heydarshahi
374b417b68 PanelSlicesAdapter: load slice label safely
Load the slice action label string safely when action label is set, and
no longer at adapter instantiation time.

Bug: b/298571448

Test: atest PanelSlicesAdapterTest
Change-Id: I0d5b6e0b2db2fa78d3f58ae2cb96f14437923ffd
2023-09-15 14:44:33 +00:00
Chaohui Wang
6e7b06f18e Clean up deprecated WifiSettings
Replace all references to NetworkProviderSettings.

Bug: 297036035
Test: robo test
Test: manual - on internet settings
Change-Id: I2a5ae5644042c982c2a284a303257896c20b7714
2023-09-01 13:24:29 +08:00
Behnam Heydarshahi
2329c823ab Merge "TalkBack: Clarify volume panel slice action label" into udc-qpr-dev am: a5b314b90f am: e16000bbae
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24005152

Change-Id: I925cca06a0fc7907f032448ab02411028f421000
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-08-31 15:31:35 +00:00
Behnam Heydarshahi
017fa1c652 TalkBack: Clarify volume panel slice action label
Change the generic "double-tap to activate" into "double-tap to enter
settings".

Bug: b/285516489

Test: atest PanelSlicesAdapterTest
Change-Id: I1bba0d625c93db90f347b756f5a20a7ac7e64d56
2023-08-24 19:02:55 +00:00
Chaohui Wang
8e2ae547d6 Clean up FeatureFactory.getFeature()
Bug: 286764889
Test: m Settings
Change-Id: I7e472e6b0ca6b7a735c1b92742ddf06c545176fc
2023-08-08 08:41:48 +00:00
Treehugger Robot
525b567db3 Merge "Align Settings and SystemUI packageName references" am: 1452f7dd3a am: ff6def3c7c
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2530819

Change-Id: I4dfc995e7185c5cb7a599156d71a198bd434cb74
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-12 10:18:17 +00:00
Shen Lin
57b03b309d Align Settings and SystemUI packageName references
This CL migrated both Settings and SystemUI packageName into Utils.java
to align references.

Bug: 277651621
Test: m Settings -j128
Change-Id: I3d6808de76120a2ddbbed4980b8a65cec81502c9
2023-04-11 10:27:04 +00:00
Behnam Heydarshahi
806297f85c Extend settings panel under navigation bar
The panel used to sit above the navigation bar. Now it extends down all
the way to the edge of the screen.

Bug: b/250484565
Test: make ROBOTEST_FILTER=SettingsPanelActivityTest RunSettingsRoboTests -j40
Test: Manual. When volume panel is opened, verify that it extends all
the way to the bottom of the window, instead of sitting on navigation
bar. Panel can be opened with:
adb shell am start -a android.settings.panel.action.VOLUME
Substitute VOLUME with NFC and WIFI for the other settings panels.

Change-Id: Ibae5d3602231e2309b5ff847c630a1f8c82ea355
2023-03-10 18:30:08 +00:00
Behnam Heydarshahi
4f87dd4b56 Implement a separate controller for ring volume
When ring volume is separated from notification, a new xml preferece and
controller is needed for it, so that the settings search can show/hide
the slice correctly.

1. Use a separate preference and controller for ring volume (vs ring &
notification combined)
2. Notification slice in settings no longer grays out when ringer mode
is set to mute or vibrate.
3. Introduce an abstract RingerModeAffected preference controller class
to factor out duplicate code among ring, notification, and separate-ring
controller classes.

Bug: b/259084354

Test:   make ROBOTEST_FILTER=RingVolumePreferenceControllerTest
RunSettingsRoboTests -j40
        make ROBOTEST_FILTER=SeparateRingVolumePreferenceControllerTest
RunSettingsRoboTests -j40
        make ROBOTEST_FILTER=NotificationVolumePreferenceControllerTest
RunSettingsRoboTests -j40
        make ROBOTEST_FILTER=VolumePanelTest RunSettingsRoboTests -j40
	make
ROBOTEST_FILTER=RingerModeAffectedVolumePreferenceControllerTest -j40

Known Issue:
1. When streams are separate and ring volume set to mute/vibrate,
notification is set to zero, but not disabled. So it can be turned on
by user (and in settings the icon will stay mute/vibrate instead of
changing to the normal notification icon).

2. In the above scenario after notification is unmuted in settings,
the notification icon continues to stay vibrate/mute -- should change
to the normal notification icon.

Note: This feature is controlled using a boolean DeviceConfig flag:
systemui/"volume_separate_ring". The default value is 'false', which is
meant to keep the experience the same as before. It will be set to
'true' for teamfood and dogfood. Eventually the flag will be removed and
the code in the 'true' branch will prevail.


Change-Id: Ibec871eafeef4081e96c5e0dd04535565d50a077
2022-12-28 22:33:50 +00:00
Jason Chiu
55b17eb3fb Fix IllegalArgumentException from RecyclerView in PanelFragment
The crash happens while RecyclerView is doing animation stuff. However,
The panel doesn't use any animation in the list, so the simplest
solution is to disable the ItemAnimator completely.

Fix: 260923012
Test: build
Change-Id: I9c5159366aca448a1075bee32ce940fbf902a450
2022-12-13 10:35:40 +08:00
shaoweishen
66098febbc [Sound Panel] Fix bugs for sound panel slice
1. notify item change when slice live data has update
2. keep showing Output Switcher slice when media state is in "Pause"
   state

Bug: 247043239
Bug: 238715094
Bug: 204165377
Test: verified on device
Change-Id: Ic56a70f2f2835231519e2fccf0d2e649d41b106e
2022-10-20 02:46:41 +00:00
Behnam Heydarshahi
3ac6aaf796 Add notification volume controller in settings
Separate notification and ring controllers based on the ring/volume
stream alias boolean in config.xml.

For both ring and volume controller: Not show vibrate icon when vibration is not supported on device. Show
silent icon instead.

Known issue: Add the notification volume slider only in Settings, and
not in VolumePanelDialog. When the alias is set to false and the streams
separated, the ring volume slider in VolumePanelDialog keeps its title
of "Ring & notification volume" instead of changing to "Ring volume".

Bug: b/38477228

Test: make DEBUG_ROBOLECTRIC=1 ROBOTEST_FILTER=NotificationVolumePreferenceControllerTest RunSettingsRoboTests -j40
      make DEBUG_ROBOLECTRIC=1 ROBOTEST_FILTER=RingVolumePreferenceControllerTest RunSettingsRoboTests -j40
      make DEBUG_ROBOLECTRIC=1 ROBOTEST_FILTER=SoundSettingsTest RunSettingsRoboTests

Change-Id: Id17523f49b291a5cf612b90f93c3b2ab6486c62f
2022-10-10 14:42:56 +00:00
Alan Huang
a0da5b36bc [VolumePanel] Redirect volume panel action to SystemUI
The volume panel is moved to SystemUIDialog, so we
redirect the volume
panel creation to SystemUI.

Bug: 202262476
Test: manual build and use adb to launch with the volume panel action
intent. $adb shell am start -a android.settings.panel.action.VOLUME

Change-Id: I9f23eb68fb7c83d6f0f023f5eefc4290a35db3c3
2022-08-29 18:50:30 +00:00
Alan Huang
b9be27b006 [VolumePanel] Fix the Hearable control slice uri parameter
The provided uri doesn't contain the formatted string, so just append
the width at the end

Bug: 229048602
Test: make -j64 RunSettingsRoboTests
Change-Id: Idadbb4d725c8ca65bac31fbead8ac1d429ebcea9
2022-06-09 08:22:33 +00:00
Alan Huang
dceda96854 [VolumePanel] Add Hearable control slice in VolumePanel
Bug: 229048602
Test: make -j64 RunSettingsRoboTests
Change-Id: Ia799a805594803a9a014eef76bb3db5a50a13524
2022-05-20 09:02:10 +00:00
changbetty
d1d9798a5d [LE Audio] Add entry point in Media Volume slice for broadcast sink
Bug: 228274114
Test: make RunSettingsRoboTests
Test: Manual test
Change-Id: I331232c30291348faf7166d4de8060a1cfe12bff
2022-04-25 02:42:46 +00:00
Michael Groover
911f7e7aa9 Add unaudited exported flag to exposed runtime receivers
Android T allows apps to declare a runtime receiver as not exported
by invoking registerReceiver with a new RECEIVER_NOT_EXPORTED flag;
receivers registered with this flag will only receive broadcasts from
the platform and the app itself. However to ensure developers can
properly protect their receivers, all apps targeting T or later
registering a receiver for non-system broadcasts must specify either
the exported or not exported flag when invoking #registerReceiver;
if one of these flags is not provided, the platform will throw a
SecurityException. This commit updates all the exposed receivers
with a new RECEIVER_EXPORTED_UNAUDITED flag to maintain the existing
behavior of exporting the receiver while also flagging the receiver
for audit before the T release.

Bug: 161145287
Test: Build
Change-Id: Ie97372efebd8258d9a4c503771d55109a85e6ae9
2021-12-09 20:34:02 -08:00
Jason Chiu
2989c50a23 Add highlight menu keys for all toggle pref controllers and custom slices
Bug: 204695404
Test: manual, robotest build pass, unit
Change-Id: Iad2e28ada8ddb766ffa7eff2c8dc581250cbd6f8
2021-11-01 15:00:18 +08:00
shaoweishen
fb164fe128 [Sound panel] Update Ui layout to match with mertial next
please check bug for before/after screenshot.

Bug: 191317779
Test: verified on device
Change-Id: Ia570dde71ce9f18376eaba48102cecde6adb85bb
2021-10-12 14:24:09 +00:00
Zoey Chen
6ce608787b [Provider Model] Redirect Settings Internet panel request to SystemUI.
From QPR, the panel should be launched from SystemUI, so redirect the panel to SystemUI

Test: make
Bug: 187779230
Change-Id: I5b4131c4d986399944c038f8bce0723fcb5ba3b3
(cherry picked from commit ab8a922f77)
Merged-In: I5b4131c4d986399944c038f8bce0723fcb5ba3b3
2021-08-13 14:07:01 +00:00
Weng Su
9395d39063 [Provider Model] Remove Wi-Fi switch menu in internet panel
- Remove "Turn on/off Wi-Fi" menu in internet panel

- Don't show the default "See more" menu in internet panel also.

Bug: 189912933
Test: manual test
atest -c InternetConnectivityPanelTest

Change-Id: I3a9927e356e0f7e534b1e2ba848d2b6d2a5bd858
2021-06-23 12:47:06 +00:00
Weng Su
4f1ebfdc55 Rollback the See More Intent for non-provider model design
Bug: 191055897
Test: manual test
atest -c InternetConnectivityPanelTest
atest \
CtsProviderTestCases:android.provider.cts.SettingsPanelTest#internetPanel_seeMoreButton_launchesIntoSettings -- --abi arm64-v8a

Change-Id: Iad57dd6a9cdbc4b33f80255bdb4758f80f9f2151
2021-06-22 09:31:32 +00:00
Weng Su
22ce63ff6f [Provider Model] Show scanning sub-title once in the internet panel
- Show "Searching for network" sub-title once when the Wi-Fi list is
empty

Bug: 189912933
Test: manual test
atest -c InternetConnectivityPanelTest

Change-Id: I1681593461c35160d6337056b2097aa4fdd8c3f8
2021-06-15 22:58:26 +08:00
Weng Su
28e5f4c2fc Revert "[Provider Model] Add WiFi toggle in internet panel"
This reverts commit 04a4060225.

Reason for revert: Need to split the functions for cherry picking to different branches

Bug: 189912933
Change-Id: I8c30a87c83e23b3df88ce2689d500626e1dd28d2
2021-06-15 04:10:13 +00:00
Weng Su
04a4060225 [Provider Model] Add WiFi toggle in internet panel
- Move Wi-Fi toggle from menu button to slice row

- Remove Wi-Fi disconnect action

- Show scanning sub-title once only

Bug: 189912933
Test: manual test
atest -c InternetConnectivityPanelTest \
         ProviderModelSliceTest

Change-Id: I2baf05362f5cd0a8ce94c7b3b2b112a7e9fe6894
2021-06-12 00:53:52 +00:00
Weng Su
908d4ffadf Revert "[Provider Model] Replace WiFi panel to Internet panel"
This reverts commit c33f69673a.

Reason for revert: Because Wi-Fi toggle design is rollback, resume the Wi-Fi panel as well.

Bug: 190563749
Merged-In: Ia214ff9abaa7f4f33c485ca9aa72f73749ce7fc3
Change-Id: Ia214ff9abaa7f4f33c485ca9aa72f73749ce7fc3
(cherry picked from commit 368852424c)
2021-06-10 12:23:38 +00:00
Betty Chang
2a0df950b3 Merge "[GAR] Set the attribute of SliceView is not important to skip for Accessibily" into sc-dev 2021-05-31 03:42:58 +00:00
changbetty
f6b159382c [GAR] Set the attribute of SliceView is not important to skip for Accessibily
Bug: 179002330
Test: manual test
      make RunSettingsRoboTests ROBOTEST_FILTER=PanelSlicesAdapterTest
Change-Id: I67cdd04cd5655ab297d58d7f9ee20e5e0f6ea7fd
2021-05-27 16:52:36 +08:00
Weng Su
7b8c367d4f [Provider model] Add "Turn off/on Wi-Fi" link to Internet Panel
- Replace the left menu button with "Turn off/on Wi-Fi"
  - Remove the TurnOnWifiSlice

- Show "Wi-Fi is off" sub-title when Wi-Fi is disabled
  - Remove the "Wi\u-Fi is turned on" sub-title when APM is on.

Bug: 188710392
Test: manual test
atest -c InternetConnectivityPanelTest
make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.panel

Change-Id: I53e200f6cadf8b712bf794bcbd5ff79f0f239cc0
2021-05-26 17:22:38 +08:00
Weng Su
99d8fcfae2 [Provider model] Revise the Internet Panel title sub-text
- Display "Tap a network to connect" on sub-title when Wi-Fi networks is
not empty

- Screenshot:
  https://screenshot.googleplex.com/5TzpJDLghpCQnDP

Bug: 188594439
Test: manual test
atest -c InternetConnectivityPanelTest

Change-Id: I0e3f0eb269fb4fe040a62be9ee84105879af82f7
2021-05-19 15:35:41 +08:00
Weng Su
4bf9551c30 Improve discoverability of the intent & actions progress
- Display "Select the network you want to use for data" on sub-title
when Wi-Fi networks is not empty

- Screenshot:
  https://screenshot.googleplex.com/6nuwYoSh7UjF93Q

Bug: 186432232
Test: manual test
atest -c InternetConnectivityPanelTest

Change-Id: I9ab0ce0ca052b3444e50a914b59f38e4e7778ddf
2021-05-19 02:17:33 +08:00
Weng Su
04ec0e0929 [Provider Model] Show searching sub-title only when the Wi-Fi network is empty
- Screenshot:
  https://screenshot.googleplex.com/7Z5r5AnpAZb6GfQ

Bug: 187886636
Test: manual test
atest -c InternetConnectivityPanelTest

Change-Id: Ib4769746819a5863e4a4981d0c73dda838ae3ae2
2021-05-12 04:09:49 +00:00
Weng Su
72c3debb0b Merge "[Provider Model] Add progress bar to internet panel" into sc-dev 2021-05-10 05:28:15 +00:00
Weng Su
c407a2d9f8 [Provider Model] Add progress bar to internet panel
- Show progress bar when Wi-Fi scanning

- Show "Searching for networks..." sub-title when Wi-Fi scanning

- Remove "Wi-Fi" from searching networks string

Bug: 178774497
Test: manual test
atest -c InternetConnectivityPanelTest
make RunSettingsRoboTests ROBOTEST_FILTER=PanelFragmentTest

Change-Id: Ic05b939bef3b106845fe90db41eb09f0e15756f4
2021-05-10 05:27:59 +00:00
Alex Stetson
aff80d1e14 Use shared model for non-system overlay toggle
Allows settings applications on other platforms to re-use values by
migrating to Settings.secure and moving HideNonSystemOverlayMixin to
SettingsLib.

Bug: 184967544
Test: atest SettingsUnitTests
Change-Id: If9aaeca29ebb8b481d75622934503e368d7435d3
2021-05-06 08:28:19 -07:00
SongFerngWang
8e0349a67b Ui show "No connection" when WiFi is turned on and no available network
Follow this table to display the UI.
https://docs.google.com/spreadsheets/d/1w7R7Q3EXkep7iO4VcgioNp00DWas3Xve5i1rWexAkz8/edit#gid=954295315
Bug: 183593681
Test: atest ProviderModelSliceTest
atest ProviderModelSliceHelperTest
atest InternetConnectivityPanelTest
make RunSettingsRoboTests -j

Change-Id: I103f9b2fafe4fc543452a74b7ee7b2e537f879b5
2021-04-28 12:35:37 +08:00
Jason Chiu
c4cead363c Guard against NullPointerException when getActivity in PanelFragment
Fixes: 169729372
Test: build
Change-Id: I2f5bbb38015b71ecf82bc8ed7ab8e5815a2bd2f9
2021-04-08 16:39:27 +08:00
SongFerngWang
0c86903ec6 Moving the error messages from slice to panel's subtitle
Bug: 180888831
Test: atest ProviderModelSliceTest
atest ProviderModelSliceHelperTest
atest NetworkProviderWorkerTest
atest InternetConnectivityPanelTest
make RunSettingsRoboTests -j

Change-Id: I4572c8ad15effab0c95feaeac6a99f5aaabf6f90
2021-03-17 22:49:31 +08:00
Weng Su
6a0ef56917 [Provider Model] Adjust slice title and subtitle
- Show "Airplane mode" title when airplane mode is enabled

- Remove "Airplane mode is on" subtitle

- Show "Wi-Fi is turned on" subtitle when both airplane mode and Wi-Fi
is enabled

- Remove the function related to isApmNetworksAvailable()

- Screenshot:
  https://screenshot.googleplex.com/6X9nzmXRCUfw4Lp
  https://screenshot.googleplex.com/6jQryMjU2yDDpmM

Bug: 181858434
Test: manual test
atest -c InternetConnectivityPanelTest \
         InternetPreferenceControllerTest \
         InternetUpdaterTest

Change-Id: I84e5d4c60ed91d58443b27c35286a84bf72ac173
2021-03-10 22:34:35 +08:00
Weng Su
036deee00e [Provider Model] Add Wi-Fi toggle slice
- Reuse “Turn on networks” slice

- Add "Turn on Wi-Fi" slice
  - Show Wi-Fi end icon

- Screenshot:
  https://screenshot.googleplex.com/63pdow7dJh3tTw7

Bug: 181858434
Test: manual test
atest -c TurnOnWifiSliceTest \
         InternetConnectivityPanelTest

Change-Id: I82de79fd45e99d2fe82554437bde50068dc1ae00
2021-03-08 16:47:19 +08:00
Weng Su
f1489b51a3 [Provider Model] Show connected networks in APM/APM networks
- Separate APM and APM network types from other Internet types because
they can coexist at the same time.

- Show no internet icon in airplane-mode networks.

- Show connected non-carrier(Wi-Fi) network in airplane-mode networks.

- Show connected Ethernet network when airplane mode on.

- Screenshot:
  https://screenshot.googleplex.com/cr3eWNLMEuJ8zvP
  https://screenshot.googleplex.com/6DiMqKBBnBoxxhN

Bug: 180778141
Bug: 180778839
Bug: 179106406
Test: manual test
atest -c ConnectedEthernetNetworkControllerTest \
         InternetConnectivityPanelTest \
         InternetPreferenceControllerTest \
         InternetUpdaterTest

Change-Id: I861d5ce879facbb61dfdc5b7be943662d55bdcca
2021-03-02 02:59:11 +08:00
Weng Su
7a62ab1fff [Provider Model] Internet Panel - Airplane mode is on
- Add "Airplane mode is on" to sub-title
  - Set the header layout to CENTER_HORIZONTAL if it's no icon

- Hide "Settings" button

- Screenshot
  https://screenshot.googleplex.com/6m5dFVZu7ar4nKW

Bug: 178717651
Test: manual test
atest InternetConnectivityPanelTest \
      PanelFragmentTest \
      ProviderModelSliceTest

Change-Id: I899a817fd99415e9cad608aa4deac1e45365696a
2021-02-04 18:48:34 +08:00
Weng Su
28172b61c8 [Provider Model] Dynamically update the Internet Panel title
- Change from "Internet" to "Airplane mode networks"

- Screenshot:
  https://screenshot.googleplex.com/gk3RBcjPsXq5NTk

Bug: 176803442
Test: manual test
- atest InternetConnectivityPanelTest
- make RunSettingsRoboTests ROBOTEST_FILTER=PanelFragmentTest

Change-Id: Ifb2c24434e480861fc7c3eaece683d49eb99013e
2021-01-28 11:00:08 +00:00
SongFerngWang
19cd9506c7 Rephrase the see more button of Internet panel when ProviderModel is enabled
Bug: 176871139
Test: build Test and manaual test(check the UI)
make RunSettingsRoboTests -j ROBOTEST_FILTER=InternetConnectivityPanel
(PASS)

Change-Id: I5e601c6639d979ca776f4bdf7f5e870a0513c7f5
2021-01-12 16:31:41 +08:00
tim peng
ce66cbb502 Merge "Rename MediaOutputSliceConstants to MediaOutputConstants" 2021-01-11 05:08:26 +00:00
Weng Su
c33f69673a [Provider Model] Replace WiFi panel to Internet panel
- Replace the android.settings.panel.action.WIFI panel
  - Provider Model Disable: Wifi panel
  - Provider Model Enabled: Internet panel

Bug: 172707942
Test: manual test
- adb shell am start -a android.settings.panel.action.WIFI
- atest PanelFeatureProviderImplTest

Change-Id: I9f111e96385452b586971d4c28988b564d4e25f4
2021-01-07 11:55:28 +00:00
timhypeng
a7a73c4c92 Rename MediaOutputSliceConstants to MediaOutputConstants
-Slice is not used and it is better to remove the slice string

Bug: 165772904
Test: build pass
Change-Id: I38b26187f03509d0d9f5cdb8ef30f3f3ef8779d8
2020-12-24 01:07:24 +00:00
SongFerngWang
8cad0197bd Slice of Provider Model: add slice structure
Implement a slice which can show/update carrier networks.
Before and after: go/b173971144screenshot

Bug: 173971144
Test: atest NetworkProviderWorkerTest  (PASS)
atest ProviderModelSliceTest  (PASS)

Change-Id: I3f0dab364c88723ef3185a2ff040b1fbd1b099f4
2020-12-23 17:47:45 +08:00