Replace the build-time boolean resource with a run time device config flag that
signals whether the ring notification slider should be displayed or not
Bug: b/38477228
Test: make DEBUG_ROBOLECTRIC=1 ROBOTEST_FILTER=NotificationVolumePreferenceControllerTest RunSettingsRoboTests -j40
make DEBUG_ROBOLECTRIC=1 ROBOTEST_FILTER=RingVolumePreferenceControllerTest RunSettingsRoboTests -j40
Change-Id: I8b9a2cbd5af7fa1bba56ff9ba62771d677d4a932
Increase the max number of items shown in 'Notification history - Recently dismissed' from 6 to 50.
Bug: 255784319
Test: Manual: Dismiss 6 or more notifications, open Settings-Notifications-Notification History, the max item count under `Recently dismissed` should be 50.
Change-Id: Ia13158ae1ebca448d43bf4c6f6037758b3f40615
Added a new string to show for apps apps that target T, but do not declare the POST_NOTIFICATIONS permission in notification settings.
Bug: 229108007
Test: `croot` `make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.notification.app.NotificationsOffPreferenceControllerTest"` and manual: open Settings-Notifications-App Settings, check the text for apps that does not post notifications with toggle disabled. Text should be: "This app does not send notifications" when system language is English.
Change-Id: I9822b6f983e00c5982522099e339d86fae45aefe
If device doesn't support vibrator, then disable this feature.
Test: No this setting
Fix: 253165108
Change-Id: I58e2bf7b36a3af61d458fc2cb8c92c18219d6684
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
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
Merged-In: I6566cd9d615331a56728613583295637982bcd3f
init NotificationBackend in constructor and set isSliceable to false in
search result since the NAS enabling logic is required and is in the
parent fragment ConfigureNotificationSettings.
Bug: 237251075
Test: test manually on device
Change-Id: I9082d6eda27784cf378a0d06304b5fc1e2ae6d7f
(cherry picked from commit 26ce9a98f0)
- 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
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
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
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
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
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
Rather than recalculating it again. Also align logic on
listing and details pages.
Test: NotificationBackendTest, NotificationPreferenceControllerTest
Bug: 231662091
Fixes: 231815850
Change-Id: If9572766666620008afb839ecb0828ace8d6073d
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
- 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
- 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
As promised in the api docs
Test: AbstractZenModeAutomaticRulePreferenceControllerTest, view
schedule DND page
Fixes: 221423986
Change-Id: I7ddc1b112950da225afa2ba13ebf5df481922177
- Work profile notifs not showing
- Work profile icon is too big
Fixes: 228397748
atest: manually view work profile notifs in history
Change-Id: I76f7ad37bcfcf4ee7c909516f456920b7e19c541
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