Commit Graph

618 Commits

Author SHA1 Message Date
Julia Reynolds
7679fec17e Remove duel switch from NAS switch
Test: NotificationAssistantPreferenceControllerTest
Fixes: 301340325
Change-Id: Id41fad70bdcda6de75b59befe3654b733dbf66e3
2023-10-25 13:01:57 -04:00
Iavor-Valentin Iftime
54bec848cc Merge "Settings for Polite Notifications" into main 2023-10-11 12:04:37 +00:00
Valentin Iftime
68916a9bbf Check for NameNotFoundException when querying for PackageInfo
PackageManager.getPackageInfo will throw NameNotFoundException if package was/is being removed.

Test: atest FullScreenIntentPermissionPreferenceControllerTest
Bug: 296163845
Change-Id: I3242ac7e68fa7ed99fe99c7de7cd97aaf87948ee
2023-09-29 11:17:00 +02:00
Valentin Iftime
9f82e7381a Settings for Polite Notifications
Adds settings page for polite notifications.

Test: atest PoliteNotificationsPreferenceControllerTest
Test: atest PoliteNotificationFilterControllerTest
Test: atest PoliteNotifVibrateUnlockedToggleControllerTest
Test: atest PoliteNotifWorkProfileToggleControllerTest

Bug: 270456865

Change-Id: I3ec497b068c15205df97bb26ee007beed8da9ee1
2023-09-28 09:42:50 +00:00
Valentin Iftime
8eb200c177 Remove availability tests from RingVolumePreferenceControllerTest
Controller is always UNSUPPORTED_ON_DEVICE.

Test: atest com.android.settings.notification.RingVolumePreferenceControllerTest

Bug: 300157932
Bug: 302295368
Change-Id: I9f0a453d2966e68e34e381ed1b1a0a01e1e65e23
2023-09-27 15:30:54 +02:00
Valentin Iftime
92f268ae91 Fix Notifications SettingsRoboTests
Fix failing Settings Robolectric tests for notifications.

Test: atest SettingsRoboTests:com.android.settings.notification
Test: atest SettingsRoboTests:com.android.settings.notification.app

Bug: 300157932

Change-Id: I068017b5c9bf6beb83ae7c580ae3206807b358e7
2023-09-20 16:48:55 +02:00
Eric Rahm
802b922593 Revert "Test Fix SettingRobolectricTest Fail"
This reverts commit 818f77cd1f.

Reason for revert: Underlying issue fixed in ag/23454315.

Bug: b/275023433
Test: atest SettingsGlobalRoboTests

Change-Id: I1af272efd00b3c5bd35310512f5712d5d1c7d834
2023-09-11 13:38:36 +00:00
Julia Reynolds
67c2cf714b Fix failing test
Test: make -j RunSettingsRoboTests ROBOTEST_FILTER=NotificationAssistantPreferenceControllerTest
Fixes: 296531083
Change-Id: If949a76662aab6aa63e6ca793d9349254ce688e9
2023-08-28 18:19:21 +00:00
Rex Hoffman
3c961e1c0e Setup external/robolectric for SettingsRoboTests
Current failing tests: ab/I64100010182936387
Had to Ignore some of com.android.settings.accessibility tests, which will be fixed separately

Bug: 261728063
Test: atest SettingsRoboTests -- --test-arg com.android.tradefed.testtype.IsolatedHostTest:java-flags:-XX:CompressedClassSpaceSize=3g

Change-Id: I4a0cb992db924936826e0c9808accc78dddb5f30
2023-08-17 22:33:20 +00:00
Iván Budnik
dd6ee00476 Fix test in RemoteVolumeGroupControllerTest
The failure was caused by ag/24081083.

Bug: 292920056
Bug: 192657812
Test: atest RemoteVolumeGroupControllerTest
Change-Id: Iac59b69dd49b4873a72081ae5776fc2f451bbb10
2023-07-25 13:48:12 +00:00
Michael Mikhail
1ff1626fd5 Merge "Override the state description of volume seekbar." into udc-qpr-dev am: 4b77d876b9 am: 31f420ce9b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23985544

Change-Id: I74b6b1e03877780f28779b563ea8ad088aa1233d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-20 16:55:25 +00:00
Michael Mikhail
b222b96407 Override the state description of volume seekbar.
This overrides the state description of seekbar in order to adjust the
progress percentage. The percentage of seekbar is not matching with the
percentage said by talkback feature when the volume changes. This CL
rounds the percentage to match what is said by talkback.

Bug: 285458191
Test: Enabled talkback and checked percentages of sliders of all sounds
and vibrations volumes. Video attached in bug link.
Test: atest VolumeSeekBarPreferenceTest.

Change-Id: Iedcf3eccb13b7f8ee1a4ca521f0783c55d7a1902
2023-07-20 14:11:26 +00:00
Iván Budnik
f9fc86593c Remove duplicate routing logic from Settings app
Also, remove unused MediaRouter2Manager references.

This is a non-functional change.

Bug: 192657812
Test: Presubmit
Change-Id: I72f5f40e157cea922ad40a2602fba881572fb708
2023-07-19 15:58:39 +00:00
Treehugger Robot
3365eb3e7a Merge "Improve volume slider" into main 2023-07-10 10:27:21 +00:00
Mill Chen
c69899ccef Improve volume slider
In the Settings, the Preference#onBindViewHolder will be invoked
3 times when a preference is getting highlighted. This caused that a
disabled volume slider becomes enabled after getting highlighted.

This change is to optimize the init method of VolumeSeekbarPreference
to speed up the initial process and fix the unexpected behavior.

Bug: 275352565
Test: manual test and robotest pass
Change-Id: I77f28386f6d6e4a45297f1ca7bcbaf16ed6136a4
2023-07-07 20:52:13 +08:00
Mill Chen
45d9e390b2 Fix do not disturb bypass user restriction
Do not disturb search result can still switch on/off when users are
restricted by DISALLOW_ADJUST_VOLUME. The DND search result is presented
by slice and there was no user restriction check when creating DND
slice, which caused DND search result can access. To prevent DND from
being access if user restriction is enabled, adding user restriction
check during creating the DND slice.

Bug: 242846154
Test: robotest pass and manual test
Change-Id: I897a99e9dda2f9f84365d96841a4c4f4cf975331
2023-07-07 20:25:18 +08:00
Michael Mikhail
48faaab788 Merge changes from topic "cherrypick-volume-gar-chain-" into udc-qpr-dev am: c156b6c427 am: 0d1b67b73e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23830401

Change-Id: I5793b74a6737ad920bbdf1dd49667adf231b2e5a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-30 14:34:07 +00:00
Michael Mikhail
c156b6c427 Merge changes from topic "cherrypick-volume-gar-chain-" into udc-qpr-dev
* changes:
  Trigger talkback for notification volume change
  Add content description to volume title in settings.
2023-06-30 12:56:45 +00:00
Matías Hernández
412fc3e2c4 Merge "Settings: don't try to allow NLSes with too-long component names" into udc-dev am: 4d34eb2c7a am: 143d105dc9
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23726247

Change-Id: I71f428e90b132c4282827b698623ee1d43c0f7c1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-28 18:35:53 +00:00
Michael Mikhail
2f393303c9 Add content description to volume title in settings.
Adds content description that is announced by talkback when a11y focus
is on volume preference. This improves talkback announcement when view changes.

Fixes: 285529113
Bug: 285455826
Fixes: 285487766
Test: atest VolumeSeekBarPreferenceControllerTest
Test: atest VolumeSeekBarPreferenceTest
Change-Id: Ibe80b4b1d489dc058df1cc79c96b034d5ddc6e56
2023-06-27 17:32:01 +00:00
Matías Hernández
027f0a46ae Settings: don't try to allow NLSes with too-long component names
* NotificationAccessConfirmationActivity (triggered through CompanionDeviceManager) -> Don't show the dialog, bail out early similarly to other invalid inputs.
* NotificationAccessSettings (from Special App Access) -> No changes, but use the canonical constant now.
* ApprovalPreferenceController (used in NotificationAccessDetails) -> Disable the toggle, unless the NLS was previously approved (in which case it can still be removed).

Fixes: 260570119
Fixes: 286043036
Test: atest + manually
Change-Id: Ifc048311746c027e3683cdcf65f1079d04cf7c56
2023-06-21 17:02:32 +02:00
Matías Hernández
7e6819735f Don't hide approved NLSes in Settings am: ff255c6eda am: 50df60c93c am: a49e14f8ff am: 0aa241be99 am: 2b1faa0aea am: dcbe38baa9 am: 0bb6ddf0b6
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23563580

Change-Id: If67948d9e0c95b74dd05a77a13f31822ce358f2f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-14 17:23:53 +00:00
Matías Hernández
dcbe38baa9 Don't hide approved NLSes in Settings am: ff255c6eda am: 50df60c93c am: a49e14f8ff am: 0aa241be99 am: 2b1faa0aea
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23563580

Change-Id: I69d2ef43afb54ce3b9d141d4f676b688dd1c5c59
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-14 15:52:58 +00:00
Matías Hernández
0aa241be99 Don't hide approved NLSes in Settings am: ff255c6eda am: 50df60c93c am: a49e14f8ff
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23563580

Change-Id: I8cd7cc9605b3728f9f96c3479d17aa1b362d9cda
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-14 14:22:10 +00:00
Matías Hernández
a49e14f8ff Don't hide approved NLSes in Settings am: ff255c6eda am: 50df60c93c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23563580

Change-Id: I840d7836ae899bcd40eafc772b96c9460c3f8a02
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-14 13:42:07 +00:00
Matías Hernández
50df60c93c Don't hide approved NLSes in Settings am: ff255c6eda
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23563580

Change-Id: I42099e38ef7b479b9339b545fe8d12d3bbe95112
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-14 12:57:15 +00:00
Matías Hernández
ff255c6eda Don't hide approved NLSes in Settings
Note that an NLS that shouldn't be approvable (because its name is too long) but was already approved (either before the max length check was introduced, or through other means) will disappear from the list if the user revokes its access. This might be somewhat confusing, but since this is a very-edge case already it's fine.

Bug: 282932362
Test: manual
Change-Id: I4c9faea68e6d16b1a4ec7f472b5433cac1704c06
2023-06-06 19:07:58 +02:00
Behnam Heydarshahi
921d1816f1 Merge "Remove volume_separate_notification flag" into udc-dev am: 7aa8424cc0 am: 2aecb2f1ea am: ffbc25e249 am: 3f1f842250
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23244447

Change-Id: If193b8e055a800695fa6b1c91d95e90c16010137
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-22 15:44:33 +00:00
Behnam Heydarshahi
7aa8424cc0 Merge "Remove volume_separate_notification flag" into udc-dev 2023-05-22 14:09:22 +00:00
Julia Tuttle
77c21d9e45 Merge "Add FSI toggle to per-app notification settings" into udc-dev am: 28edfb8df9 am: a31916bd8f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/22899254

Change-Id: I624e2cc82b796788869bef6a60efb441005bdc1d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-17 16:33:28 +00:00
Julia Tuttle
6630c852d9 Add FSI toggle to per-app notification settings
Bug: 277938609
Test: atest FullScreenIntentPermissionPreferenceControllerTest
Test: # manual, verifying against "Special app access" screen
Change-Id: I9cb0d9bc99ce59a7b0ff6bcd2cab7a3c2d63f45f
2023-05-17 14:30:49 +00:00
Behnam Heydarshahi
f07e023302 Remove volume_separate_notification flag
Fully enable the feature

Bug: b/255363741, b/38477228

Test: make DEBUG_ROBOLECTRIC=1 ROBOTEST_FILTER="NotificationVolumePreferenceControllerTest|SeparateRingVolumePreferenceControllerTest|RingerModeAffectedPreferenceControllerTest|SoundSettingsTest" RunSettingsRoboTests -j40
Change-Id: Iec490fc254f71b6461dbf9f9beb4a11645a4a497
2023-05-15 21:19:26 +00:00
Vincent Wang
7f21ad81f7 Merge "Test Fix SettingRobolectricTest Fail" into udc-dev am: 5801e98d7f am: 81740a7c0c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23074022

Change-Id: I08589651a8ba8924419b17cba205c0cc3408f6c0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-09 11:14:14 +00:00
Vincent Wang
818f77cd1f Test Fix SettingRobolectricTest Fail
Bug: b/275023433
Test: NA
Change-Id: If2dcb8f6c196327129ccc9375b190e394c994efa
2023-05-09 06:26:39 +00:00
Hiroki Sato
e44848cdce Don't show bubble settings when framework doesn't support it
Some devices don't support bubbles by configuring config_supportsBubble
value. When the value is set false, it doesn't make sense to show bubble
related preferences.

This CL disables showing bubble preferences when device doesn't support
it.

Bug: 274711609
Test: Set config_supportsBubble false, and check UI.
Test: m -j80 RunSettingsRoboTests ROBOTEST_FILTER="Bubble"
Change-Id: I670ad2a9e243819ea014e5e1ddb9d62ad76d2168
2023-05-02 15:46:27 +09:00
Matías Hernández
005a382091 Prevent guest users from toggling "hide silent notifications"
This is a global setting, not per user, and shouldn't be modifiable by a guest. It can still be toggled by other, "normal" users, for the same global effect.

Fixes: 260570341
Test: atest
Change-Id: Id6e1803b5364f3b50bdbc14af0468979c96b5638
2023-03-24 12:15:58 +01:00
Matías Hernández
08893ed0b3 Merge "Refresh the app's "Conversations" list when there are none" into udc-dev 2023-03-16 15:57:11 +00:00
Matías Hernández
a5eea1c034 Refresh the app's "Conversations" list when there are none
Also hide the header in that case (simiarly to bubbles).

Test: atest (new) + manual
Fixes: 273748214
Change-Id: I4f758a0bf5bb8cfa91701185f1568b358d8903a0
2023-03-16 15:07:13 +01:00
Julia Reynolds
068a55384b Merge "Reduce jank when revoking notification permission" into udc-dev 2023-03-15 14:50:07 +00:00
Julia Reynolds
a331c50b53 Reduce jank when revoking notification permission
-Reorder fields so the appear/disappear more cleanly
-Remove some divider lines- they don't animate with the content, for
some reason
-Remove an unused field
-Hide the badge field (remaining field with divider) if there are no
channels
-Change style of 'Notifications are blocked' field to better match
the other fields

Test: revoke notification permission for apps with and without channels
Test: BadgePreferenceControllerTest
Fixes: 233962859
Change-Id: Ife894172bf91d838edf3b0546c5ee00e206a855f
2023-03-15 09:08:10 -04:00
TreeHugger Robot
df5bbc630d Merge "Hide Dock speaker plays from sound pages" into udc-dev 2023-03-15 11:52:38 +00:00
Mill Chen
a860bf3220 Hide Dock speaker plays from sound pages
In order to ensure the setting only works on the analog docks, adding
the docking state checks.

Bug: 270492232
Test: manual test
1) Connect to digital dock
2) Check the sound page and the dock speaker plays shouldn't be
   displayed

Change-Id: I1dc1e0aac8b9067ec8f5f1defc721294caf2949e
2023-03-15 10:25:32 +00:00
Matías Hernández
0882b04ed5 Delete stuff related to removed "Conversations that can interrupt" settings
Bug: 226486181
Test: N/A, dead code removal only
Change-Id: I100db518880a7eee402af37f49e416ec61ff8486
2023-03-14 16:53:53 +01:00
Matías Hernández
bf1b95e0fe Don't allow setting channels to bypass DND if the app cannot show notifications
The fix makes the flow more consistent with preexisting behavior:
* Apps appear in the "Apps that can interrupt" section only if some channels are set to bypass DND *and* the app is able to show notifications.
* Channels cannot be set to bypass if those individual channels are blocked.

Fixes: 265064188
Test: atest AppChannelsBypassingDndPreferenceControllerTest
Change-Id: If10f086fd60f0f70f53adb8f5cd67f90936bc35f
2023-03-07 16:41:36 +01:00
Julia Reynolds
cb6a88b862 Remove jank on DND schedule page
Only add/or remove preferences when absolutely needed.
Also fix a 'load data from backend' method that wasn't.

Fixes: 216747934
Test: ZenModeAutomaticRulesPreferenceControllerTest
Test: view schedules page
Test: add schedule
Test: remove schedule
Test: view schedule child page and return to schedules page
Change-Id: I237c2ca7ea89ee6e42354470a76712068a7f4dd7
2023-03-01 18:43:02 +00:00
TreeHugger Robot
408a4045f1 Merge "Reduce jank on DND apps page" into tm-qpr-dev am: 694742152d am: 2ecd05add8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/21477350

Change-Id: I06dc22c948192703fdf717a735ef9abc3df58496
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-21 21:32:14 +00:00
TreeHugger Robot
2ecd05add8 Merge "Reduce jank on DND apps page" into tm-qpr-dev am: 694742152d
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/21477350

Change-Id: I3b215c7f5c824c04837cc84f2af1c81e0702aa6c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-21 19:47:05 +00:00
Julia Reynolds
9f7af5946e Reduce jank on DND apps page
1) Remove call to redisplay the api when registering our app listener -
this meant all preferences were always removed/readded on page load
because the app list isn't ready at that time
2) Stop rebuilding the UI for events we don't care about
3) Keep existing preferences when possible and just do the diff of prefs
that need to be added/removed

Fixes: 234298144
Test: ZenModeAddBypassingAppsPreferenceControllerTest
Test: ZenModeAllBypassingAppsPreferenceControllerTest
Test: manually view page; add & remove apps that have dnd breakthrough
Change-Id: I57b36d36135dd25d1d2fd73073cf6b7a033659a6
2023-02-17 13:39:19 +00:00
Behnam Heydarshahi
dce497f72f Merge "Muting ring volume slider disables notification" into tm-qpr-dev am: 40a293fbdf am: d65e087b0d
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/21164988

Change-Id: I560670cee8bd07312766d494c4a66ef770e121cb
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-16 15:47:36 +00:00
Behnam Heydarshahi
d65e087b0d Merge "Muting ring volume slider disables notification" into tm-qpr-dev am: 40a293fbdf
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/21164988

Change-Id: I8043d9156b1602379a6580cffb29c5addf32d8ee
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-16 15:01:11 +00:00