Commit Graph

76 Commits

Author SHA1 Message Date
Treehugger Robot
b151b094cc Merge "Add null check for mIntent in ZenRulePreference to avoid potential crash risk" am: 36a80cd8e6 am: 3799ecc58a am: 02a5b5e487 am: f8701c71e6
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2200576

Change-Id: I23cc61383530de734ef9f3e8141078757a45ec22
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-09-02 05:46:17 +00:00
Shen Lin
b25f123d9f Add null check for mIntent in ZenRulePreference to avoid potential crash risk
Bug: 244120502

Test: manual test, ZenRuleScheduleHelperTest for unit test.
Change-Id: Ib7338253783bb09b84b629f2dd891292d82f28b2
2022-08-29 19:19:59 +08:00
Treehugger Robot
ac7a368afd Merge "Fix array-related errorprone warnings" am: a93e78f781 am: a89e7aea3b am: cdacabf984 am: 49a0bbc650
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2183972

Change-Id: I9c4c43088154202d5818b29d010f053a7630ec90
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-17 20:29:36 +00:00
Treehugger Robot
a93e78f781 Merge "Fix array-related errorprone warnings" 2022-08-17 18:37:46 +00:00
Cole Faust
a21ac03acb Fix array-related errorprone warnings
The ArrayEquals, ArrayHashCode, ArrayToString, and
ArraysAsListPrimitiveArray errorprone findings were
demoted from errors to warnings. Fix existing
occurrences of them so they can be made errors again.

Bug: 242630963
Test: RUN_ERROR_PRONE=true m javac-check
Change-Id: Ida6513002f8fd845a385924be290b720f06c4748
2022-08-15 18:52:37 -07:00
Julia Reynolds
f3b9bf55a9 Move zen rule deletion
To a non-exported component

Test: manually delete a rule in Settings
Fixes: 233607507
Change-Id: I6c4ac930eb62a2068582021d0ad16b93fbc9bdd3
2022-07-21 14:54:42 -04:00
Yuri Lin
7cbba753dc Change zen mode schedules page rule handling
The approach of reloading all rules (and recreating all ZenRulePreferences) every time the rule set changed causes the switches on the page to stop working.

This change keeps the ZenRulePreference around as long as the rule itself is around and keeps it updated, while re-adding the preferences to the PreferenceCategory if needed due to rules changing.

Fixes: 229879326
Test: manual, ZenModeAutomaticRulesPreferenceControllerTest
Change-Id: I4eba41e8252cedd87ac866e4b97513970ca2d94a
2022-05-05 14:24:42 -04:00
Chaohui Wang
fbafdbdd8f Merge "Fix title clipped for "Custom settings for schedule"" into tm-dev 2022-04-14 23:22:19 +00:00
Julia Reynolds
87bb1b34c5 Add missing extra when launching apps
As promised in the api docs

Test: AbstractZenModeAutomaticRulePreferenceControllerTest, view
schedule DND page
Fixes: 221423986

Change-Id: I7ddc1b112950da225afa2ba13ebf5df481922177
2022-04-12 16:20:01 -04:00
Chaohui Wang
3b3e66c780 Fix the flow for ZenCustomRuleSettingsBase
updateRule() should be called before super.onResume() because rule will
be used in updatePreferenceStates() in super.onResume().

This is follow up of Change: Ief9963091847d58654f26851616563ae910716a5

Bug: 226523115
Test: manual
Change-Id: I2fe0cfb2b4a76273283bb2d3aca629b5d647db91
2022-04-06 17:22:12 +08:00
Chaohui Wang
5d0057615a Fix title clipped for "Custom settings for schedule"
Set rule to header, switch and action buttons controllers before their
isAvailable() is called in onCreate().

Fix: 228262001
Test: manual
Change-Id: Idc0ea779ab768497a8426ac847c4bbb2c6c4faea
2022-04-06 13:57:48 +08:00
Chaohui Wang
bab799899d Fix Flicker for ZenCustomRuleSettingsBase
Fix the following flicker on pages under:
Notifications -> Do Not Disturb -> Schedules -> [One Schedule]

1. Do Not Disturb behavior
2. (1) -> Create custom settings for this schedule
3. (2) -> Calls
4. (2) -> Messages
5. (2) -> Display options for hidden notifications
6. (4) -> custom

Fix: 226523115
Test: On Pixel Phone
Change-Id: Ief9963091847d58654f26851616563ae910716a5
2022-04-04 22:22:10 +08:00
Yuri Lin
e8e40609df Make icons show up on DND bypassing apps page
This change uses the app icon cache to either get the icon from cache or retrieve it on a background thread. The methods previously used to get app icons no longer work in T.

Bug: 222323742
Test: manual
Change-Id: I4960a9297d546cac088e5969a8903391ed994bd4
2022-03-08 14:57:54 -05:00
Jonathan Scott
c3dbc3ffbd Merge "Allow Device Management Role Holder to update Settings strings." 2022-01-31 19:10:30 +00:00
Yuri Lin
0a7554acfa Cosmetic changes to zen mode people & sound/vibration screens
On the people screen, have the footer show up all the time and provide a more relevant message (indicating that the chosen people override any app/etc settings) than the current setting.

On the sound/vibration screen, remove the sub-title since it's a bit confusing what exactly is being turned on or off.

Bug: 190180868
Bug: 215564123
Test: manual
Change-Id: I78d407af350a9f99d26d1e5082b752881bd3f186
2022-01-26 13:01:26 -05:00
Yuri Lin
a91e2daea7 Change zen schedules page to use switches.
Also add clearer summaries for schedule and calendar events (rather than just "Off" and "On"): for schedules, list the days & times for which the schedule is active, and for events, the calendar whose events it triggers on.

Bug: 190180868
Bug: 215564123
Test: manual for switches, ZenRuleScheduleHelperTest for descriptions

Change-Id: I3ad579503adae0a66dfa3093b4e3df77db0ede31
2022-01-26 11:21:53 -05:00
Jonathan Scott
e0d439472f Allow Device Management Role Holder to update Settings strings.
Test: manual
Bug: 188414370
Change-Id: I6e1a06619799a9e99382d791e72e2e4518f93cac
2022-01-25 19:03:24 +00:00
TreeHugger Robot
38fa2c195d Merge "Fix the onCreate crash happened among zen mode rule pages" into sc-v2-dev am: 56c49091a0 am: 5302093d5c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16432138

Change-Id: Ieba60e9cebdc683fbaa8e382a80d9e4efe666c8f
2021-12-10 17:01:15 +00:00
Jason Chiu
bd8f45b9d4 Fix the onCreate crash happened among zen mode rule pages
Fix: 199229588
Test: manual
Change-Id: I7b0116de8d9760f420c026a8d65b019e6d2d00df
2021-12-10 11:36:55 +08:00
Jason Chiu
7f6b9e26c9 Merge changes from topic "slice-highlight" into sc-v2-dev am: 6821b6be32 am: 026b1b5df6
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/16151654

Change-Id: If46903bb26371ea90075d1c6cc063af4d10a88d4
2021-11-02 02:43:42 +00: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
Yuri Lin
00d824657d Merge messages & conversations settings for DND priority senders.
This change explicitly allows for multiselect between priority senders (starred, contacts) & priority conversations, and also allows unchecking boxes by clicking on the same ones again.

Also makes the screens for setting messages and calls in custom rules consistent in behavior with the main DND settings. Since much of the functionality is shared, this change refactors most of the logic into a new helper class used by both.

While these changes also affect how the "calls" screen is constructed, in effect there is no change to the functionality of priority call sender settings except under the hood.

Test: atest ZenPrioritySendersHelperTest; Settings robotests
Bug: 190180868
Bug: 197223270
Change-Id: I894775537a18feb7a891b2668b9a613a203a129c
2021-09-21 15:00:16 -04:00
Julia Reynolds
cf18817877 Add new task to intents that leave Settings am: 76aedd72f0 am: 0d16b9cb68
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/15730311

Change-Id: Ia73f2898a732ac60c43cac5b8cdb372c9e9b8c82
2021-08-31 22:59:20 +00:00
Julia Reynolds
76aedd72f0 Add new task to intents that leave Settings
Test: manual
Fixes: 197702721
Fixes: 197704633
Fixes: 197704125
Fixes: 197704456
Change-Id: Iffeca2d152bd083edafe69a7121d011e284eeb69
2021-08-31 21:13:03 +00:00
Yuri Lin
e9f13fbd5e Rename RadioButtonPreference -> SelectorWithWidgetPreference.
This change is to reduce ambiguity as we're adding the option to style the preference like a checkbox as well.

Bug: 190180868
Test: SelectorWithWidgetPreferenceTest, RunSettingsLibRoboTests
Change-Id: Ie414347bf67ed394ef495604890c5851fc42dbc7
2021-07-20 17:01:21 -04:00
Yi-Ling Chuang
6a83c73624 Fix the non-working DND toggle
The pendingIntent of the DND toggle was set to immutable previously
which doesn't allow any modification. This CL fixes this by making it
mutable.

Fixes: 191865710
Test: Search "dnd" and make sure the toggle has effect upon modification
Change-Id: Iade256cee8885cb80ade5ca95cc50065c2a78da2
2021-06-29 12:46:08 +08:00
Julia Reynolds
4c7981eb0d Disable additional pkgs on DND perm page
Because they will always have access because they hold
the permission to manage notifications.

Test: manual
Fixes: 191973668
Change-Id: I456aec41b401bba6f10d9ea969e2fb8c4300825d
2021-06-25 09:17:41 -04:00
Julia Reynolds
393134f9b1 Validate config activities with their rule owners
Test: RoboTests
Bug: 189332346
Change-Id: Iee1b1caca4d6eb2729feb872c3e4954b6c16519c
2021-06-16 15:40:34 -04:00
Julia Reynolds
eb838f2eef Revert DND toggle back to a button
Test: manual, Robotests
Fixes: 188616179
Change-Id: I70b469ff6ef809056c9eceec7f87f91aed9a23ca
2021-06-02 11:31:59 -04:00
Beverly
06b1ba1d09 Update custom zen settings "off" string
zen_mode_sound_summary_off should only be used when describing the
number of schedules that are enabled (and requires a numeric parameter).
Instead, use the string "off" when a sound isn't enabled by a custom dnd
setting.

Fixes: 189120026
Test: manual
Change-Id: I8bc180353a61455b124801d14f0d319f49bb341c
2021-05-25 13:31:52 -04:00
Julia Reynolds
fef73ef82a Don't show DND access settings in managed users
Test: launch direct intent in a managed user
Fixes: 187304252
Change-Id: I1cfcf8c147fc47b4e2fb2a725cba9846e4f09055
2021-05-11 16:35:42 +00:00
TreeHugger Robot
11ea8316e0 Merge "Refinements for DND settings" into sc-dev 2021-03-18 14:35:19 +00:00
Julia Reynolds
887273b2c6 Refinements for DND settings
- Adding headers
- Remove collapsed 'advanced
- correcting label for main toggle
- fix underline

Test: manual
Fixes: 179210702
Fixes: 173910494
Change-Id: Iec67639a12c7e93dcf19d415108e7d2c1fcb93d4
2021-03-17 14:17:44 -04:00
Edgar Wang
9691da0d21 Change packagename of TwoTargetPreference
Bug: 180156703
Test: robotest
Change-Id: Ida344e689971aa780054093b2472582d61c476d1
2021-02-13 12:17:14 +08:00
Stanley Wang
10b7a7d483 Use MainSwitchPreference to replace the button style switches.
Fix: 177967926
Fix: 177968295
Fix: 177967925
Fix: 177968078

Test: Run robotest and apply the widget in Settings and see the ui
Change-Id: Ie854de96e5495fa564fb8a097ed4547bbd2b10c5
2021-02-02 08:39:37 +00:00
TreeHugger Robot
78c6656981 Merge "Refactor AppPreference and AppSwitchPreference" 2021-01-14 15:28:17 +00:00
Stanley Wang
57098f4589 Use SettingsLib's MainSwitchPreference to replace the Switches which use
LayoutPreference.

Bug: 175181773
Test: Run robotest and apply the widget in Settings and see the ui
Change-Id: I4588d1fc3004970b174e7c5c5d1aa7745f774985
2021-01-12 23:12:01 +08:00
Edgar Wang
e49ae19b1e Merge "Replace some customized RadioButtonPreferences" 2021-01-06 16:31:02 +00:00
Edgar Wang
c0e7328a88 Replace some customized RadioButtonPreferences
- Deleted ZenCustomRadioButtonPreference
- Deleted RadioButtonPreferenceWithExtraWidget
- Replaced with RadioButtonPreference

Bug: 173472216
Test: robotest
Change-Id: I645b59d65ae14af1f384f16ee7b76b3c98e23e1f
2021-01-06 05:37:29 +00:00
Edgar Wang
fc02ce1c20 Refactor AppPreference and AppSwitchPreference
- Move AppSwitchPreference
- Remove FeatureflagPreference summary

Bug: 176815722
Test: robotest
Change-Id: Id337097f237ac9ca6dfa01665df61b1258dc24f2
2021-01-05 18:27:08 +00:00
Treehugger Robot
ba98c52ce3 Merge "Settings observer fail to unregister." am: b92cb6678c am: 6873e19485 am: cc162a2cfa
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1535665

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Iba4d0ae86737b85b4477db972700c6018e75adbb
2020-12-29 06:24:02 +00:00
andrew.gong
bf477db855 Settings observer fail to unregister.
Zen mode change will call displayPreference() and create a new SettingsObserver, then the old Observer object will have no opportunity to be unregistered. After too much new SettingsObserver creatd in Monkey test, memory might leak.

Bug 176206489

Change-Id: I3bccec281da492299bbf755f86df7844a31223c5
2020-12-24 15:57:09 +08:00
Julia Reynolds
6e5c296bf4 Fix contact name issue
Contacts don't have to have a display name

Test: manual
Fixes: 172903141
Change-Id: Iabbde4c5f527128c960334997910dba4536fe055
2020-11-11 13:18:41 -05:00
Sunny Shao
0b0f237834 Add the explicitly mutable flag for creating a PendingIntent
- Android S+ to specify explicitly either FLAG_MUTABLE or FLAG_IMMUTABLE
  when creating a PendingIntent.
- Suggest to use the FLAG_IMMUTABLE as default. Change it to
  FLAG_MUTABLE while errors occur.

Fixes: 170162598
Fixes: 170162878
Fixes: 170163592
Fixes: 170164316
Fixes: 170164458
Fixes: 170164327
Fixes: 169794524
Fixes: 170165106
Test: build pass, manual test add an account and volume control panel
Change-Id: I5aec028f82bd74fc4530b95a7c144811055ae2c5
2020-10-14 09:38:51 +00:00
Daniel Chapin
ee1360f13c Revert "Add the FLAG_IMMUTABLE flag for creating a PendingIntent"
This reverts commit 334968c113.

Reason for revert: Bug: 170280415

Change-Id: Idaa269406d6c1609c75f0dfba1f7fa9daf979101
2020-10-07 17:47:36 +00:00
Sunny Shao
334968c113 Add the FLAG_IMMUTABLE flag for creating a PendingIntent
- Android S+ to specify explicitly either FLAG_MUTABLE or FLAG_IMMUTABLE
  when creating a PendingIntent.

Fixes: 170162598
Fixes: 170162878
Fixes: 170163592
Fixes: 170164316
Fixes: 170164458
Fixes: 170164327
Fixes: 169794524
Fixes: 170165106
Test: build pass and manual test add an account
Change-Id: I0f7b117273647dbe9e146033b8995c8c6f147576
2020-10-06 11:46:08 +08:00
Beverly
c549280a33 Replace zen setting plurals with MessageFormat
For better translations. See go/android-i18n-plurals.

Test: manual
Test: make RunSettingsRoboTests7
Fixes: 156651436
Change-Id: Ic82140b81bf49f071291d2824fa45d310de238ae
2020-07-06 11:25:00 -04:00
Beverly
51fb73e512 Launch work dnd setting for work-profile apps
Test: manual
Fixes: 159178762
Change-Id: Ifa4c7f776e19f3aec87b5ef1f858c92cff46b30b
2020-06-17 11:57:19 -04:00
Beverly
258fd7c03b Explicitly request focus after button pressed
Don't use focusableInTouchMode, it was causing focus/clickability issues
when the device wasn't in touch mode.

Test: manually tap button (tap works first try)
Test: turn on talkback and toggle buttons, also try toggling QS tile
while on the Settings page - doesn't reannounce state
Fixes: 158717450
Change-Id: I785d0200dd61235aa3308a8588f9ee998e7cb6e5
2020-06-12 16:01:50 +00:00
Beverly
dcc79e9942 Update strings to be more translation friendly
Use different strings for "None" based on the context of the string.
Some languages may require different gendered grammar depending on its
context.

Also update contacts summary string to include plurals (1 vs many).

Test: make RunSettingsRoboTests7
Bug: 154898476
Fixes: 154944295
Change-Id: If9949d75de573042389a19df3d4c5d15c6cbeb25
2020-04-28 14:53:08 +00:00