Commit Graph

56 Commits

Author SHA1 Message Date
Julia Reynolds
f3290eafce Expand channel settings if coming from app
Test: manual inspection
Change-Id: I2ed7f5cc2355f27e0edf36a0d8ee23e418eafd99
Fixes: 77648459
2018-04-18 12:17:33 -04:00
Fan Zhang
1781cf2cef Remove wrapper class for NotificationGroup.
It's no longer needed as Robolectric can natively support framework
classes

Bug: 76167422
Test: robotests
Change-Id: If0ac597370240b8efaa8df8783a5c309a2322a3f
2018-03-30 16:09:34 -07:00
Julia Reynolds
a0cb928098 Merge "Fix channel screen launching" into pi-dev 2018-03-16 15:45:05 +00:00
Alison Cichowlas
83ca82f749 Sort Uncategorized channel to the bottom.
Bug: 64803214
Test: manual, with Duo app
Change-Id: I8e39fbed4ecda2efebb4606f38ea934647317207
2018-03-15 18:11:18 -04:00
Julia Reynolds
ee5870bac6 Fix channel screen launching
Test: launch channel screen from Settings & external app
Change-Id: Ib9add2f25cbacde192095407b83b17438946a493
Fixes: 73814186
2018-03-15 08:37:59 -04:00
Fan Zhang
1f6d24a991 Get rid of direct usage of Utils.onBuildStartFragmentIntent
Change-Id: I87eb97d6da4cd4f99be5bcdb1e3e245eb1c7bd1c
Fixes: 73250851
Test: robotests
2018-02-20 09:42:31 -08:00
Julia Reynolds
18f14f10cf Notification settings updates
- Hide channels when a group is blocked
- Update importance strings
- Allow app blocking from 'recently seen'

Test: RoboSettingsTests
Fixes: 72879584
Fixes: 72882969
Fixes: 72831483
Change-Id: I99e001d3eb9eef52251cd50da191d33923335fcf
2018-02-06 09:15:20 -05:00
Julia Reynolds
4e3060c824 Use checkboxes on notification settings pages
Test: make RunSettingsRoboTests
Bug: 63927402
Change-Id: Id751b807eae8a7a9165b0d020f10dd42f51382d1
2018-01-25 11:21:43 -05:00
Julia Reynolds
1c542bbeb0 Remove unused intent.
Test: cts-verifier
Bug: 63927402
Change-Id: I0ae2f33f7e8f1cce9dbe8166b522eb9cbde4c8b5
2018-01-23 09:05:37 -05:00
Julia Reynolds
3527ef7c29 Notification settings updates
- Text changes
- Show channels on the app settings screen (again)
- Hide most of the channel settings under 'advanced' (note: this hides
  the footer preference(s) also, at the moment. the functionality
  to exclude those is coming in a later cl)
  - Add a 'show notifications' toggle for each app created group

Bug: 63927402
Test: make RunSettingsRoboTests

Change-Id: I9906ef943d05e1915061b59294a25d81c4e6cbb5
2018-01-02 15:34:58 -05:00
Matthew Fritze
f6cf598d03 Prevent crash in Search from Stack overflow
NotificationSettingBase's getPreferenceController call
is recursive with no base case which crashes search.

Root cause here is that NotificationSettingsBase should
not be indexed for seacrh but was probably failing the
code inspection test. Added NotificationSettingsBase
child classes to grandfather list of classes that
should be ignored for search.

Change-Id: I04ed242db3a394b88e0d0ac420aaaff6f9301cb5
Fixes: 69096424
Test: robotests
2017-11-09 10:40:14 -08:00
Julia Reynolds
ac3f7e80dc PreferenceControllers are the way of the future.
Migrates Notification settings (app level, group level, and channel
level) into PreferenceControllers (and most importantly:
PreferenceControllerTest)

Note: this removes the 'Advanced' preference group, but does
not yet use the standard system 'Advanced' grouping as it does
not currently support our use case (where we don't know how many
fields to show outside of 'Advanced' until onResume() and also
where we need fields to show below the 'Advanced' group).

Test: make RunSettingsRoboTests
Change-Id: Iddd1b4771922db322e5f73562e9d63ed077c5396
2017-11-06 13:50:26 -05:00
Alison Cichowlas
bff0e971ca Notification importance/selected sound conflict fixes.
- When you've selected "Silent" as your sound, update notification
importance messaging to match.
- When you explicitly move from a silent type of notifications to a
loud type, but have "Silent" selected as the sound, change the
sound to the default notification sound also.

Change-Id: I462785d593e1d6c7d1e87388aeee1bdcbcf6aa3d
Fixes: 63109928
Test: RunSettingsRoboTests, manual
2017-09-21 17:36:32 -04:00
Julia Reynolds
97942ca832 Merge "Properly show/hide advanced settings" into oc-mr1-dev am: 12c9d6d65a
am: fa3fa3483e

Change-Id: I9cab11035c64975b45e1c3d99bd707a07b6c693e
2017-09-06 18:42:36 +00:00
Julia Reynolds
bd42fe5880 Properly show/hide advanced settings
Change-Id: I31f6f877f1945187a6f19e1b383bd3755656fb9b
Fixes: 65375390
Test: manual
2017-09-06 10:36:22 -04:00
Julia Reynolds
0c3f4bce57 Add settings page for notification channel groups
Bug: 63927402
Test: tests/unit/src/com/android/settings/notification/.*
Change-Id: Iebf7d8ba54f0cf5801a42f3161354d3cc5e5c848
2017-08-31 11:02:36 -04:00
Beverly
2aeff818c8 Uninstall app through notif closes app settings.
Change-Id: I7887c7887b654c78a0fea16e898679e434fbeb53
Fixes: 62051546
Test: manual
2017-08-07 14:21:36 +00:00
Alison Cichowlas
d58d342967 Add separator line in notification settings,
above link to in-app settings.

Test: make RunSettingsRoboTests
Bug: 62543732
Change-Id: Ibf4f08c3d5feba90598d71f48c050e87ab9c3fdf
2017-06-15 15:11:19 +00:00
Alison Cichowlas
bbd4fc124a Limit unconfigurability to specified channels.
Bug: 62426259
Test: Unit test in NotificationBackendTest.java
Change-Id: I79d069cee0b641d520b02f8a25751ec3e0d4632d
2017-06-12 13:44:38 -04:00
Alison Cichowlas
0f7e904dbe Merge "Delay adding app settings link until data fetch returns, to avoid reordering/visible misplaced "additional settings in the app" during transition." into oc-dev am: e811873b4e
am: f62c6372e8

Change-Id: Ic1434ccc7a4ec01957a7d1219fa5cf6cc1f84948
2017-06-02 18:52:33 +00:00
TreeHugger Robot
e811873b4e Merge "Delay adding app settings link until data fetch returns, to avoid reordering/visible misplaced "additional settings in the app" during transition." into oc-dev 2017-06-02 18:42:25 +00:00
Alison Cichowlas
5cdcb40cd3 Merge "Disallow buzz/beep/disturb changes for notifications with locked importance." into oc-dev am: 3efc502840
am: 5698552021

Change-Id: Ib0a9db86ea0191c4cd487842eb9ce49b9e6db2e0
2017-06-02 17:02:30 +00:00
Alison Cichowlas
afe44799f7 Delay adding app settings link until data fetch returns,
to avoid reordering/visible misplaced "additional settings
in the app" during transition.

Bug: 62051521
Test: manual with transition scale turned to 10x sloooow.
Change-Id: I50666fbcb2a14344bbdbb2f4347c8470edb96619
2017-06-01 16:07:32 -04:00
Alison Cichowlas
9f36db1f4c Disallow buzz/beep/disturb changes for notifications with locked importance.
If mAppRow.lockedImportance (which comes from the whitelist config_nonBlockableNotificationPackages), don't allow sound, vibration, or override dnd to be changed.

Bug: 38480212
Test: manually verified for now
Change-Id: I04aa7f15f2480472ec6ee487472098e81ab3d99f
2017-06-01 10:52:15 -04:00
Julia Reynolds
f1239e1b84 Merge "Allow some system channels to be blocked" into oc-dev am: 540e8f50e3
am: 166a994a4c

Change-Id: Ide3aeac0c328f08becc693795ef5553fa0c9a281
2017-05-26 15:02:40 +00:00
Julia Reynolds
3a77e1d4a0 Allow some system channels to be blocked
Test: manual
Bug: 38428796
Change-Id: If6853f1d847ade968d2bd3a7454ddce0fdda62f0
2017-05-25 14:26:58 -04:00
Juan Lang
777ed2535a Depend on SettingsLib's version of lifecycle and FooterMixin.
The implementations have been imported into SettingsLib. Setting's copy
can now be removed, which this change also does.

Test: Manually check battery status, which uses FooterMixin, looks OK.
make RunSettingsLibRobotTests && make RunSettingsRoboTests
     && make RunSettingsGoogleRoboTests
Change-Id: I6539605fdad80d156ff5ff249e68df4a1c412067
2017-05-12 11:10:46 -07:00
Julia Reynolds
2f0547c783 Notification settings, importance and pre-O apps
- Show pre-O settings for the misc channel, should the app still have it
(versus the full channel settings)
- Fix the importance summmary text in various places
- Update the color of the blocked description text
- Fix what fields appear/disappear based on blocked status and importance

Fixes: 38177887
Bug: 38120923
Fixes: 38012300
Fixes: 37923612
Test: manual, with an O app, a pre O app that has channels, and a pre-O
app with no channels
Change-Id: I42965b81b795e8fb427f857c7766fe5480a99f2e
2017-05-11 14:48:17 -04:00
Julia Reynolds
38c16a9417 App & channel notification settings updates
- change 'block all' to an on/off switch bar
- update channel list summary text when notifications are
toggled on/off on app settings page
- Add 'off state' text
- change style of foot items
- change 'importance' from a dropdown to its own page

Bug: 37538972
Bug: 37479730
Fixes: 37541624
Fixes: 37549732
Test: manual

Change-Id: I0e5cc66ba539ce2b76b4ad6541bf6bfb5b58c373
2017-04-25 13:30:48 -04:00
Alison Cichowlas
7f431e3cd1 In apps with no channels, provide settings for misc channel in top level.
Test: robolectric tests pass, plus manual verification
Bug: 36561295

Change-Id: I58872a41fab562787d85bade0552c7735d716e5b
2017-04-18 18:49:24 +00:00
Julia Reynolds
8973e2786d Notification channel settings updates
- Show a deleted count instead of individual deleted channels
- Make the link to app settings more prominent
- Reload settings onresume

Change-Id: I4f493181194943310ba536eb2bca270cec7cafce
Fixes: 36119790
Fixes: 36191444
Test: manual
2017-03-16 14:31:00 +00:00
Julia Reynolds
2194f3db37 Display channel/group names only.
Test: manual
Change-Id: I7da68f71ddb78f3150ebc64af40310de65cd010c
2017-03-16 14:21:56 +00:00
Julia Reynolds
dcee38d02e Prevent whitelisted apps from blocking and silencing
Change-Id: I34cb5c2c59d56b68ed1500c8c79cd65676c0af25
Fixes: 35841524
Test: manual
2017-03-13 18:46:03 +00:00
Julia Reynolds
ca662cc9a7 Notification channel group res id labels.
Test: manual
Change-Id: Icf7208dc952a7306f04d53f4d681ec794563f2fd
2017-03-02 16:02:17 -05:00
Julia Reynolds
3327eac198 Show localized channel names
Test: manual
Change-Id: I85d60e564aeff8074cdb8138fe7ac1c078be986a
2017-03-02 10:35:33 -05:00
Julia Reynolds
e971015fd9 Link back to app settings from channel page
Test: manual
Change-Id: Ieb1118bd662a662bd34027f2ef44b420d4c94183
2017-02-09 10:08:52 -05:00
Julia Reynolds
6f57f2c2af Notification app screen updates
- Load channels asynchronously
- Add importance summary & block/unblock toggle for channel list
- Change channel list headers and sorting.

Test: manual
Change-Id: If024c741df4d85227055563d5bbc8210705c420b
2017-02-08 14:49:01 -05:00
Julia Reynolds
694928883d Let extra apps launch channel settings.
Test: manual
Change-Id: I689c0b35224dffc306ecbfa6f25ad3f072cd4dba
2017-01-25 12:43:29 -05:00
Julia Reynolds
1f178a9ed1 Notification settings updates
- Add 'show badge' for apps
- disable deleted channel rows
- Add an importance reset for pre-O apps

Test: manual
Change-Id: Ic32415497fe48a17f6cdb9aace37e35f9388195a
2017-01-20 09:38:33 -05:00
Julia Reynolds
d43440a555 Cannot have badge only channels.
Test: manual
Change-Id: I564f6b7e076a10847bd7f48c59a0de095180ea92
2017-01-06 15:53:52 -05:00
Julia Reynolds
d6835a20fc Support showing notifications as badges.
And remove unneeded app level settings.

Change-Id: I88f506b0704195181d1748a3135f8ee0f39b774f
Test: manual for now. will add tests when have real mocks for the pages
2016-12-20 13:07:04 -05:00
Julia Reynolds
ec767cc440 Channel updates from users lock fields from interference.
Also some apis have changed.

Test: manual, modify settings and check policy xml.

Change-Id: I967cb1fb30d8d400bdc0f3aa92fa07b4c87ddcf5
2016-10-31 15:16:28 -04:00
Julia Reynolds
b5ec2d71a2 Add notification channel settings.
If a user has set a preference at an app wide level, it cannot be
undone at a channel level, but channels can be more restrictive.

Tests: changing settings for apps and channels.

Change-Id: I7907b8179ffc24d68197c917f182e63d8e1ff7a7
2016-09-15 21:46:17 -04:00
Julia Reynolds
77b1f52574 Non-blockable notification packages can't be blocked.
Bug: 31404047
Change-Id: Icbe7e5e57983d281f6fe21e9b4715c822784d43c
2016-09-12 11:13:10 -04:00
Julia Reynolds
cdd1a26465 Prevent users from blocking system notifications.
Change-Id: I1864d54b01e4db03393078504b8f592ee41ed1c2
Fixes: 29191134
2016-06-13 12:49:45 -04:00
Sudheer Shanka
2ad6adbd58 Add policy transparency to app notification settings on lockscreen.
Bug: 28390118
Change-Id: I395440b0f7e93da90f9f346574afa5501761d473
2016-05-09 10:57:34 -07:00
Julia Reynolds
21fd269ea3 Show 'on the lockscreen' setting in more contexts.
- For managed profile apps
- When 'auto' importance is on.

Bug: 28405255
Change-Id: Ia4c0bc6010f157cac18a828069bbcf54087fc663
2016-04-27 12:46:43 -04:00
Julia Reynolds
088fb52ef8 Notification slider changes.
Bug: 27558254
Change-Id: I15635ae19e82a57d6e6fcb2f8f946f31bebf5d0f
2016-04-15 11:04:13 -04:00
Julia Reynolds
60e90ac07c Allow notifications be to hidden from the lockscreen by app.
Bug: 26642033
Change-Id: I932defebe00c566c0a930a0cabc118238c349272
2016-03-02 14:20:57 -05:00
Julia Reynolds
518b93f565 Introduce IMPORTANCE_MIN.
Bug: 22960980
Change-Id: Ia3876e0b3b5dae19553fd467313b46408fcbb0f4
2016-02-25 13:06:57 -05:00