Commit Graph

511 Commits

Author SHA1 Message Date
Michael Wright
3b0cbefac1 Merge "Revert^3 "Improve App notification loading"" into tm-qpr-dev am: 1218065085 am: bbde399410
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19713797

Change-Id: Idcaa343d56921b2f2b4428a10fb5dffc99a0c698
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-24 16:11:16 +00:00
Michael Wright
bbde399410 Merge "Revert^3 "Improve App notification loading"" into tm-qpr-dev am: 1218065085
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19713797

Change-Id: Ifa352490aff4a215710aec57e6d42aab162d5cd8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-24 16:05:15 +00:00
Michael Wright
1218065085 Merge "Revert^3 "Improve App notification loading"" into tm-qpr-dev 2022-08-24 15:24:15 +00:00
Michael Wright
475632c4fe Revert^3 "Improve App notification loading"
33710fd9e2

Change-Id: Ifb45f949c28bff04f8abfe3e1a73628f2e407241
2022-08-24 12:22:12 +00:00
Chloris Kuo
fe172874ed Merge "Support ACTION_NOTIFICATION_ASSISTANT_DETAIL_SETTINGS in Enhanced Notifications" 2022-08-23 18:35:22 +00:00
Chloris Kuo
5adf602ef7 Support ACTION_NOTIFICATION_ASSISTANT_DETAIL_SETTINGS in Enhanced Notifications
Show detail settings page from the default NAS app if it implements the new intent ACTION_NOTIFICATION_ASSISTANT_DETAIL_SETTINGS.

Test: Robotest, manually test on device
Bug: 231492005
Change-Id: I6566cd9d615331a56728613583295637982bcd3f
2022-08-22 16:27:38 -07:00
Julia Reynolds
4287420f87 Merge "Revert^2 "Improve App notification loading"" into tm-qpr-dev am: 635b3f065e am: e8409ecf10
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19583473

Change-Id: I76aa8f4112832225dc2ca62e0be229d9c476146d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-22 14:48:41 +00:00
Julia Reynolds
e8409ecf10 Merge "Revert^2 "Improve App notification loading"" into tm-qpr-dev am: 635b3f065e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19583473

Change-Id: I85fd316de253f7d3879962e74aece04db0f3f0f9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-22 14:18:35 +00:00
Julia Reynolds
635b3f065e Merge "Revert^2 "Improve App notification loading"" into tm-qpr-dev 2022-08-22 13:56:41 +00:00
Betty Chang
b9abc156c8 Merge "[LE Audio] To fix the condition of the broadcast icon display" into tm-qpr-dev am: 9c0904acde am: 0c2a3ead2b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19459987

Change-Id: I85e2d5a8589cf775ca2da2d79081eddbd9b59378
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-12 02:24:02 +00:00
Betty Chang
0c2a3ead2b Merge "[LE Audio] To fix the condition of the broadcast icon display" into tm-qpr-dev am: 9c0904acde
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19459987

Change-Id: Ia2f4ab79a90b7733d0ad23b3573b55a527da84df
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-12 01:40:05 +00:00
changbetty
d55a7067aa [LE Audio] To fix the condition of the broadcast icon display
- The broadcast icon will be displayed when the device is connected to
   the LE Audio device.

 - The broadcast option dialog will show the "Broadcast" option when the
   media is streaming. Otherwise, it will not show.

Bug: 235923182
Test: manual test
Test: make RunSettingsRoboTests ROBOTEST_FILTER=MediaVolumePreferenceControllerTest
Change-Id: Ib225d185b6f15463f4fae809e0cdaa25920d52af
2022-08-11 02:01:55 +00:00
Julia Reynolds
33710fd9e2 Revert^2 "Improve App notification loading"
c5f1cb11e0

Change-Id: I5a6d39e0a5f2b7bd30bcc12e207b8bb23857c6d8
2022-08-10 13:41:22 -04:00
Julia Reynolds
d9da74762e Merge "Revert "Improve App notification loading"" into tm-qpr-dev am: 6a110b91f8 am: 397c885c46
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19419547

Change-Id: I63bd0eb21941240d8b36348fa6b9a0f8d3bb9119
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-07-26 15:32:06 +00:00
Julia Reynolds
397c885c46 Merge "Revert "Improve App notification loading"" into tm-qpr-dev am: 6a110b91f8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19419547

Change-Id: Ib22e2fc711b81772e7ddbafd786181bf694b46d4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-07-26 15:13:06 +00:00
Neha Jain
c5f1cb11e0 Revert "Improve App notification loading"
Revert "Fix binder error when an app has many channels"

Revert submission 19290255-jr-bind-flicker

Reason for revert: b/240100577
Reverted Changes:
I9a1c96f75:Improve App notification loading
I391ce0b10:Fix binder error when an app has many channels

Change-Id: Iaae40de74d135a79c18201ec17e00f3d9d5f0f3b
2022-07-25 22:16:16 +00:00
Julia Reynolds
de6ed69527 Merge "Improve App notification loading" into tm-qpr-dev am: 4ab5255893 am: 6292d9ff8c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19290333

Change-Id: Ifb860cdab87fc01ba578346167361a1d30ae9695
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-07-21 21:06:49 +00:00
Julia Reynolds
6292d9ff8c Merge "Improve App notification loading" into tm-qpr-dev am: 4ab5255893
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19290333

Change-Id: Iac930f653c146436863978c1c98439d2e63a6837
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-07-21 20:48:46 +00:00
Julia Reynolds
e90507373c Improve App notification loading
1) Use UiBlocker, for better animations for apps with a lot of channels
2) Only load data in onResume, because the data loading step in some
of the controllers is expensive

Test: make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.notification"
Test: load small channel and large (6000ish) channel app pages
Test: load individual channel pages
Test: load in-app channel shelf UI
Fixes: 215072888
Change-Id: I9a1c96f75b02f94b3ffc529d17d9c0cad7752de1
2022-07-20 15:27:52 +00:00
Sorin Basca
61e0bcd194 Use Mockito 4.6.1 API
Bug: 236636175
Test: m RunSettingsRoboTests
Change-Id: I2cfda684059520f6ddd1e72c55f1ab1ec9c99e8b
(cherry picked from commit c1c3a84fdc)
Merged-In: I2cfda684059520f6ddd1e72c55f1ab1ec9c99e8b
2022-07-15 20:05:37 +00:00
Sorin Basca
c1c3a84fdc Use Mockito 4.6.1 API
Bug: 236636175
Test: m RunSettingsRoboTests
Change-Id: I2cfda684059520f6ddd1e72c55f1ab1ec9c99e8b
2022-07-13 06:39:26 +01:00
Chaohui Wang
8a701766fb Merge "Fix Conversation page flickers" into tm-dev am: 7dc1aec524 am: 6c2ffc2220 am: 447f77c07d am: a64429b8e8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18475672

Change-Id: I032de9c1b368c7a7c4743fd4695511f063bc0598
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-25 15:41:25 +00:00
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
2cf9780748 Merge "Add the jank detection to Settings toggles" into tm-dev am: a47f9bb17f am: ca86110548 am: c41f9a953a am: 0f1658d013
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18212942

Change-Id: I298b0de2dcfe6a914cb74bc9947bd5780a48cca5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-20 13:44:18 +00:00
Chaohui Wang
692068d535 Add the jank detection to Settings toggles
Add jank detection when click the following preferences,
 - SwitchPreference
   Single target, detect click in InstrumentedPreferenceFragment
 - PrimarySwitchPreference
   Two target, only detect click switch in switch's onClick()
 - MainSwitchPreference
   Single target, detect click in TogglePreferenceController
 - SettingsMainSwitchPreference
   Single target, detect click in its onSwitchChanged()

Bug: 230285829
Test: manual & robo tests
Change-Id: I97a13e05a601237b16cd2d903ba2fb6ec4a69a74
2022-05-19 12:28:16 +08:00
Julia Reynolds
a384ff7560 Merge "Use NMS calculation of fixed importance" into tm-dev am: 9372f3b4e3 am: 7a5c4459fb
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18288425

Change-Id: I91c3c1e7ffd221559a577a9b26314b874ac4ac08
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-12 12:50:44 +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
68aaf15888 Merge "Remove notification permission feature flag" into tm-dev am: 23a85a1f96 am: 73a0bada43
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18164272

Change-Id: I6fee068537f09ae083224daf6305bd5f72511f16
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-09 22:14:13 +00:00
Julia Reynolds
23a85a1f96 Merge "Remove notification permission feature flag" into tm-dev 2022-05-09 20:16:09 +00:00
Yuri Lin
7fa51a12fa Merge "Change zen mode schedules page rule handling" into tm-dev am: 9fb3262a1a am: 24c9dd2808
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18189363

Change-Id: I7e0648c0c1f93a0761c917573f40508a1eb49d92
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-09 19:37:27 +00:00
Yuri Lin
9fb3262a1a Merge "Change zen mode schedules page rule handling" into tm-dev 2022-05-09 14:56:13 +00:00
TreeHugger Robot
a5470e4c24 Merge "Fix Settings getProfileIdsWithDisabled usage" 2022-05-06 03:16:37 +00: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
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
Adam Bookatz
8311f68065 Fix Settings getProfileIdsWithDisabled usage
In two places, Settings uses getProfileIdsWithDisabled intending to
restrict itself to *managed* profiles, but actually allows for any type
of profile.

Since the declared intent is to only deal with managed profiles, we
update the code to only consider managed profiles.

On devices that only have managed profiles (currently almost all
devices), this cl is a no-op.

Bug: 230495929
Bug: 230534572
Bug: 170249807
Test: com.android.settings.UtilsTest
Test: make RunSettingsRoboTests -j
Change-Id: Id04d45839ef61080b00ca2f91525718cb3a85120
2022-04-27 18:34:07 -07:00
Yuri Lin
e540c8165d Fix ZenModeScheduleRuleSettingsTest to test onAttach
this follows the model of the change to ZenModeEventRuleSettingsTest in ag/17607148

Fixes: 215062934
Test: settings robotests
Change-Id: I44abec9316f78be318b51ba541d20b863eb86c8d
2022-04-26 14:23:06 -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
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
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
Julia Reynolds
40caac3c9e Merge "Disable app toggle for some T+ apps" into tm-dev 2022-03-01 13:42:26 +00:00
Yuri Lin
f26a246f5a Revert "Rename Do Not Disturb -> Priority Mode"
Revert submission 16632971-yl-prioritymode

Reason for revert: We're not launching this change with T, so this will revert all the relevant string changes.
Reverted Changes:
I5eff72db8:Rename Do Not Disturb -> Priority Mode
Ie7a9e35e6:Rename Do Not Disturb -> Priority Mode
I7bb74d2fd:Rename Do Not Disturb -> Priority Mode
Id17942024:Rename Do Not Disturb -> Priority Mode
Ib8efd7289:Rename Do Not Disturb -> Priority Mode
Ia1b77f9ee:Rename Do Not Disturb -> Priority Mode

Bug: 190180868
Test: TH

Change-Id: I7516c97809c7968f999d7caa8885f0cb5cdc844f
Merged-In: I7516c97809c7968f999d7caa8885f0cb5cdc844f
2022-02-28 16:33:33 +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
Yuri Lin
e6e5847cce Rename Do Not Disturb -> Priority Mode
in strings only -- no UI changes in this CL.

Bug: 190180868
Test: manual, ZenModeBypassingAppsPreferenceControllerTest (robotest)

Change-Id: I7bb74d2fd1a9d3b24a8b81a6cc8ba35d38b25656
2022-01-24 14:41:21 -05:00
Tsung-Mao Fang
13a3af7f07 Ignore broken tests
Test: run robo test
Bug: 215062934
Bug: 215062846
Bug: 215056068
Change-Id: Ia5fb9bb8d28bf745d69f3cc83cfeb07b982d029c
2022-01-18 14:53:34 +08: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