Commit Graph

1548 Commits

Author SHA1 Message Date
Chaohui Wang
bd369cfee5 Fix Conversation page flickers
In this page, 3 conversation lists are implemented by the
ConversationListPreferenceController, these lists updates its contents
in updateState(), which is after the preference screen view created.
So when the first time this page is showed, animations of added contents
will be shown.

The improvement is when the first time, update the list in the
onCreate(), which is called before view creation, instead of the
updateState().

And also do the same thing for RecentConversationsPreferenceController.

Also, to reduce latency,
1. Because currently there are duplicated calls in
NoConversationsPreferenceController to check whether conversations are
exists or not, by removing the duplicated calls and reuse the result
from other controllers, the latency could be reduced.
2. Currently, there are seperated api calls, the
mBackend.getConversations(false) in AllConversationsPreferenceController
and the mBackend.getConversations(true) in
PriorityConversationsPreferenceController, use one
mBackend.getConversations(false) in ConversationListSettings to improve,
this does not change the behavior because the result is filtered in
matchesFilter() both before and after.
3. Currently, we sort conversations first then filter them, change to
filter first then sort to reduce latency.

Fix: 215073227
Test: visual check & robo tests
Change-Id: I028a7fabbbf64cf5627e6615372282a36eb784e5
2022-05-25 10:43:16 +08:00
Chaohui Wang
d30d1a74e1 Fix Conversation page flickers when back
In this page, there are 3 items flickery when back from conversation
page,
 - The summary under priority conversations
 - The summary under non-priority conversations
 - The clear all button under recent conversations

This is because there is no key on these 3 preferences, when preference
screen updated in onResume(), preference screen thought these 3 are new
items, shows an animation for them. Add keys to them to fix.

Bug: 215073227
Fix: 232341970
Test: visual check
Change-Id: I24691cfa89a624c1741786499b47ede87d518d1a
2022-05-20 16:25:00 +08:00
Alan Huang
bb3f56fc02 Update Spatial audio settings page
Bug: 229048602
Test: local build and verify page
Change-Id: I096eae1bd0ca3acd52e6025963a08b0d60cb8d74
2022-05-18 09:21:01 +00:00
Julia Reynolds
688c5c900d Update the 'is valid contentIntent' check
Existing check required that the original request code be 0,
but that's not actually required for the intent to work on this
page

Test: tap on email notification in history, be brought to email
page and not main email list page
Fixes: 232495202

Change-Id: I120022535ddbde19003f2db6f1b81a983d00789d
2022-05-13 17:37:52 +00:00
Julia Reynolds
2011588b16 Use NMS calculation of fixed importance
Rather than recalculating it again. Also align logic on
listing and details pages.

Test: NotificationBackendTest, NotificationPreferenceControllerTest
Bug: 231662091
Fixes: 231815850
Change-Id: If9572766666620008afb839ecb0828ace8d6073d
2022-05-11 16:38:04 +00:00
Julia Reynolds
23a85a1f96 Merge "Remove notification permission feature flag" into tm-dev 2022-05-09 20:16:09 +00:00
Raphael Kim
c6f7599158 Merge "Extract app label from component name in notification access confirmation UI" into tm-dev 2022-05-09 17:55:06 +00:00
Yuri Lin
9fb3262a1a Merge "Change zen mode schedules page rule handling" into tm-dev 2022-05-09 14:56:13 +00:00
Andy Hung
3198bd8cec Merge "SpatialAudioSettings: Fix state check" into tm-dev 2022-05-09 04:06:49 +00:00
Andy Hung
482ad196cc SpatialAudioSettings: Fix state check
Test: enable/disable spatial audio settings, check status
Bug: 231499448
Change-Id: Idf05fde45b17b95d9fb611cacd8d11c471a12fe4
2022-05-05 20:25:12 -07: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
Jonathan Scott
b7f4f56cad Add missing settings strings.
Also re-enable and fix tests.

Test: manual
Fixes: 226183482
Fixes: 218799125
Fixes: 219375624

Change-Id: I9605f1f4e2e834baf63e015e96639567c5481b5f
2022-05-05 09:12:59 +00:00
Julia Reynolds
4138b6f68a Remove notification permission feature flag
Tes: Settings notification robotests
Bug: 231344755
Change-Id: I3e35eede94ea88bee4c2e7fc03ce998ed68b4f81
2022-05-04 16:24:23 -04:00
Raphael Kim
ff34195604 Extract app label from component name in notification access confirmation UI
Bug: 228178437
Test: Manually tested on POC
Change-Id: I8613d9b87a53d4641c0689bca9c961c66a2e9415
2022-05-04 19:41:13 +00:00
Chaohui Wang
b3db0000a6 Merge "Add the jank detection to Settings sliders" into tm-dev 2022-05-04 02:23:14 +00:00
Chaohui Wang
f311566b85 Add the jank detection to Settings sliders
- Currently most the sliders are implemented by
   com.android.settings.widget.SeekBarPreference.
 - Volume ones are implemented by VolumeSeekBarPreference, which resets
   the OnSeekBarChangeListener, so need special handling.
 - PointerSpeedPreference is standalone, added separately.

Bug: 230285829
Test: Verify trace via jank developer guideline.
Change-Id: Ia2978df196676ad6675d2834f6af6cb2aa9094cf
2022-05-03 11:06:34 +00:00
changbetty
f31b5769d7 [LE] Launch the dialog for the user to broadcast or find broadcast
- Launch the broadcast dialog from entry point in Media Volume Slice

    - Fix the broadcast dialog to follow the dialog style

    - Start broadcast and launch the MediaOutputBroadcastDialog from
      broadcast dialog

Bug: 229577518
Test: manual test
Change-Id: I1329b3f35b03afc441142494df883ae17f373656
2022-05-03 03:16:08 +00:00
changbetty
2818dedc28 [LE] Launch the MediaOutputBroadcastDialog when the current device is
broadcasting

Bug: 229577323
Test: Manual test
Change-Id: I0bfc9ecac2a0b6d68d41c4d17d4642f927581ccb
2022-04-26 07:47:23 +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
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
Julia Reynolds
4d46dddbe7 Fix some history issues
- Work profile notifs not showing
- Work profile icon is too big

Fixes: 228397748
atest: manually view work profile notifs in history
Change-Id: I76f7ad37bcfcf4ee7c909516f456920b7e19c541
2022-04-12 11:14:30 -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
Alan Huang
2f2b648693 Fix group cast volume slider not disabled after switching to group
devices.

Test: manual build and verify

Bug: 222443976
Change-Id: Ie9f126bb2f4cbc3c6148f41092ada4bfdfa29f99
2022-03-24 08:12:40 +00:00
Jenhou (Alan) Huang
e8ca43b239 Merge "DO NOT MERGE Add setting page for the Spatial audio" into tm-dev 2022-03-21 01:59:31 +00:00
Alan Huang
616b0925ac DO NOT MERGE Add setting page for the Spatial audio
The Spatial audio settings page control the state for the phone speaker
and the wired headphones

Test: make RunSettingsRoboTests

Bug: 220811398
Change-Id: I49e3fab48186d09357a8481652bdccb4aa5d044a
2022-03-20 15:55:53 +00:00
kholoud mohamed
de78149c16 RESTRICT AUTOMERGE Refactor device policy resource APIs to a separate class
Bug: 217388602
Bug: 218875965
Test: atest EnterpriseResourcesTests
Test: manual
Change-Id: I4775d7741c7819fd811c3fc4eda1636b1e04b398
2022-03-17 17:37:45 +00:00
Yuri Lin
42e400e1cd Merge "Make icons show up on DND bypassing apps page" into tm-dev 2022-03-08 22:35:43 +00: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
Julia Reynolds
856cc0da65 Fix app notification toggle
Test: CTS Verifier 'Notification Listener Test'
Bug: 222372861
Change-Id: I060b8b9bf7b749736596676a3d98cd609dc65846
2022-03-08 09:18:56 -05:00
Julia Reynolds
40caac3c9e Merge "Disable app toggle for some T+ apps" into tm-dev 2022-03-01 13:42:26 +00:00
Julia Reynolds
f56aa26b2e Disable app toggle for some T+ apps
Specifically, apps that haven't requested the notif permission
in their manifest, as we cannot grant/revoke the permission unless
they do

Test: NotificationBackendTest, AppStateNotificationBridgeTest
Fixes: 218315122

Change-Id: Icd936de806d7642809ef6c79d2d169bd673c2659
2022-02-24 14:48:39 -05:00
Evan Laird
4871b2cf6a Add setting for showing the vibrate icon in status bar
Test: manual
Bug: 220144337
Change-Id: I2d389d71dd9402353b058039464495a1d33ef0e9
2022-02-23 15:42:57 +00:00
TreeHugger Robot
1503c4ea31 Merge "Remove restricted icon" 2022-02-15 07:26:27 +00:00
Julia Reynolds
9be9981fa7 Merge "Update notification settings OWNERS" am: 49b9583ea1 am: e2d790725c am: 809c15fd53 am: 445aa53ddc
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1960665

Change-Id: I3e556a6d31e8ef5a58022acd0e4d6fb86e62cb09
2022-02-10 14:51:14 +00:00
Julia Reynolds
445aa53ddc Merge "Update notification settings OWNERS" am: 49b9583ea1 am: e2d790725c am: 809c15fd53
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1960665

Change-Id: I4f8ce83fea5cde2ddf4517c78e5f66bae461a1ea
2022-02-10 14:38:05 +00:00
Edgar Wang
b1a48df4f7 Remove restricted icon
Bug: 195401182
Test: robotest
Change-Id: I6b22b3b9b62812eb08f10492bd2d7908cce89d39
2022-02-08 03:09:50 +00:00
Jonathan Scott
269f97d960 Allow overriding of strings referenced in XML files.
Test: manual
Bug: 188414370
Change-Id: Ice45b1808530c14c4efff16795cac7b2cb81516e
2022-02-07 21:00:05 +00: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
Julia Reynolds
87d1db904e Update notification settings OWNERS
Change-Id: Ic69ea984ab439f1d2795daf82c516878aed420ce
2022-01-25 21:38:29 +00: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
Mady Mellor
28f18c4b0a Merge "Use hasSentValidBubble in settings" 2022-01-14 17:58:50 +00:00
Lais Andrade
54ed73ae6c Merge "Update Settings to use intensity settings as main preference keys" 2022-01-13 02:45:41 +00:00
Lais Andrade
141b5bb3bc Update Settings to use intensity settings as main preference keys
Updating the Settings app to allow setting the value off for key
HAPTIC_FEEDBACK_INTENSITY. This setting state is also copied onto
HAPTIC_FEEDBACK_ENABLED setting, so both should be in sync after this
change.

Similar logic is applied between RING_VIBRATION_INTENSITY and
VIBRATE_WHEN_RINGING.

This will not disable the hardware feedback since that one is controlled
by a separate setting key now.

The "vibrate for calls" was also removed and the single toggle for
"vibrate first then ring gradually" was moved into the "Vibration &
haptics" page.

Bug: 185351540
Test: [HapticFeedback|NotificationVibration|RingVibration][Intensity|Toggle]PreferenceControllerTest
      and manual testing of the AOSP settings app
Change-Id: I9c94cef331a1500a1272a601ba32667ca995ddab
2022-01-12 22:59:29 +00:00
Mady Mellor
f9fc2e0d1e Use hasSentValidBubble in settings
This change makes it such that bubble settings will only be available once
the app has sent a bubble notification.

Test: atest BubbleSummaryPreferenceControllerTest
Bug: 178387292
Change-Id: I459ffcedc4194d953e8b7170937e2eb5334d1422
2022-01-12 14:10:34 -08:00
Julia Reynolds
6689b81b82 Always check roles for non-blockability
Test: NotificationBackendTest
Fixes: 194833441
Change-Id: I72af524c56178077caef8fedfac592f8b5df3371
2022-01-10 13:40:45 -05:00