summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/systemui/statusbar/NotificationLockscreenUserManagerImpl.java
Commit message (Collapse)AuthorAgeFilesLines
* Fix taskbar restarting after turning on workapps from taskbar.Brandon Dayauon2023-03-151-2/+4
| | | | | | | | Connect if we're not already connected bug: 261638193 test: Manual - https://drive.google.com/file/d/1Hm2X5YFoccjDYQ5KPo72uHahFjN0WR6T/view?usp=sharing Change-Id: I25020f13188fb0972f08dfcf96846524333cca34
* Remove lockpattern utils construction...Aaron Liu2023-02-221-2/+3
| | | | | | | | | | | | | where possible. By invoking the constructor, we are not reusing the cache that will mitigate binder calls for reading state. There is an instance of LockPatternUtils that is injectable via dagger. Some classes, however, cannot inject this. (i.e. view, service, or static method). I've removed the instances where I could to hopefully mitigate binder calls and jank. Fixes: 268192609 Test: Check to see if bouncer works properly mostly. Change-Id: I56a19fa6e419f1a7af28171edf4ebaccf55e9929
* Replace ACTION_USER_SWITCHED with UserTrackerAlex Stetson2022-11-161-16/+23
| | | | | | | | | | | ACTION_USER_SWITCHED only applies to the foreground user and will not trigger for concurrent secondary users. By replacing this with UserTracker, the switching logic can be modify to track what is relevant for a given display/user. Bug: 249831072 Test: atest SystemUIUnitTests Change-Id: I6f5d482072ae92d7dda5e1753901b3f5dc521312
* Replace getCurrentUser() calls with UserTrackerAlex Stetson2022-11-141-3/+6
| | | | | | | | | | | Replacing getCurrentUser calls in SystemUI with UserTracker to help centralize source of truth. Bug: 249831072 Test: atest SystemUITests Change-Id: I23bd747192adcd715b96442f0834254ad0bb44a3 Merged-In: I23bd747192adcd715b96442f0834254ad0bb44a3
* Remove unused LOCK_SCREEN_SHOW_SILENT_NOTIFICATIONS usageJulia Tuttle2022-10-141-10/+0
| | | | | | | | | ag/19735654 removed the code that read the cached setting value, but not the field that stored it or the code that wrote it. Bug: 252815574 Test: atest NotificationLockscreenUserManagerTest Change-Id: Ie88d7038237ec1d4cbd05591a48005fb34edc566
* Removed Dependency.get from com.android.systemui.statusbarShawn Lee2022-09-221-2/+4
| | | | | | | | | | Replacing uses of Dependency.get as it is deprecated. Deleted NonPhoneDependencyTest as it has been disabled since this CL: ag/12474869 Bug: 218352036 Test: atest NotificationLockscreenUserManagerTest Change-Id: Ifd7489a4084cf36331ab68c597be09e25572ce5b Merged-In: Ifd7489a4084cf36331ab68c597be09e25572ce5b
* Remove NotifEntryManagerSteve Elliott2022-08-311-21/+0
| | | | | | | Bug: 200269355 Test: atest SystemUITests Change-Id: I3e418dfd7d3512ac811e67733e32818622a0a415 Merged-In: I3e418dfd7d3512ac811e67733e32818622a0a415
* Delete unused code from NotifLockscreenUserManagerSteve Elliott2022-08-291-73/+4
| | | | | | Bug: 200269355 Test: atest SystemUITests Change-Id: I8d0546eab8f66ad76636c1212c15cda386f522da
* Fix Notification redaction when power cycling a non-dozing device while ↵Jeff DeCew2022-07-211-1/+6
| | | | | | | | | | | | | | occluded. This issue was originally raised in the S timeline, but had already been fixed by the refactor to use UnlockedScreenOffAnimationController, which called updateIsKeyguard(/*force*/ true) from onFinishedWakingUp(). This solved the problem of re-triggering the redaction, but it also intriduced a new bug where the keyguard could end up briefly showing on top of the occluding activity when AOD was supported but off. As a result, they limited the call to when the AOD was on (and animations were controlling, etc). This CL uses the opposite check to make sure we recalcualte redaction (and only redaction, not the whole keyguard) when waking up while occluded. We also needed to make sure that we rerun the notification pipeline when updating public information so that any necessary public views are sure to inflate. That rerun has been limited in scope to conditions where the public mode information has detectably changed. Bug: 237349699 Bug: 238990302 Bug: 239828798 Test: CTS Verifier NotificationPrivacyTest on emulator, AOD off, AOD on Change-Id: I95443ee6b77377aceb54b983d34131628027da9b
* Trigger re-inflate when sensitive setting changesSteve Elliott2022-06-031-0/+26
| | | | | | | | | | | | Fixes: 230581048 Test: manual 1. Post messaging style notification w/ Notify.apk 2. Enable redaction of sensitive notifications on lock screen 3. Lock device Observe: Notification is showing redacted view on lock screen Change-Id: I393ae6c465b2e86a3dbb88414f784fe871390f38 Merged-In: I393ae6c465b2e86a3dbb88414f784fe871390f38
* Revert "Don't show "Clear All" w/ redacted notifs"Daniel Sandler2022-05-191-80/+63
| | | | | | | | | | | | | | | | | Revert "Update NotifLockscreenUserMgrGoogle constructor" Revert "Update ArcNotifLockscreenUserMgr constructor" Revert submission 17183599-pipeline-clearall Reason for revert: b/232727914 b/232587284 Reverted Changes: I84e9f909e:Update ArcNotifLockscreenUserMgr constructor Ic88341de0:Update NotifLockscreenUserMgrGoogle constructor Ibc66576d2:Don't show "Clear All" w/ redacted notifs Change-Id: Ie7469cb568471f4739a8c591ccc6d669895a8315 Merged-In: Ie7469cb568471f4739a8c591ccc6d669895a8315
* When a user is removed make sure we remove their persisted bubblesMady Mellor2022-05-161-0/+10
| | | | | | | | | | | | | | | | - Update the NotificationLockscreenUserManager code to listen for account removals and notify the new listener method onUserRemoved - Use this to trigger removals in the bubble data repository / UI Some users may have a parent user (e.g. work profile can belong to a parent user). We store persisted bubbles under the parent user and have a separate field for the specific bubble user. To support this, I pass the parent of the removed user. Test: atest BubbleVolatileRepositoryTest BubbleDataTest Bug: 218525763 Change-Id: Ia147cbac15ebce70bbbcc52926089f33901a99dc Merged-In: Ia147cbac15ebce70bbbcc52926089f33901a99dc
* Don't show "Clear All" w/ redacted notifsSteve Elliott2022-05-101-63/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The logic that determined when to show the Clear All Silent button in the Silent notification header was occurring when the Silent (and Minimized) sections update. At this time, there was no up-to-date information about whether or not the notification has senstive content (SensitiveContentCoordinator occurs later in the pipeline), and no information about whether or not sensitive content can even be shown or must be redacted (handled by NotificationStackScrollLayoutController). Additionally, the visibility of the Clear All button in the shade footer wasn't being adjusted at all under the new pipeline. To remedy this, the following changes were made in this CL: 1. `boolean NotificationEntry#isSensitive()` has been dismantled. Rather than relying on some separate code to properly set this value at some point, instead the concept of "Sensitive Content" is derived directly from the SBN + Ranking, and is kept separate from the state of the user's settings, as well as the state of the lockscreen (whether we would currently need to redact). 2. NotificationLockscreenUserMananger is the de-facto place for tracking and querying redaction state. This includes checking if the user's settings *would* require redaction (#needsRedactionInPublic), and whether a user is actually public (#isLockscreenPublicMode). 3. In order to keep clients in sync, a new observable interface is exposed on NotificationLockscreenUserManager that clients can use to be notified when to requery #needsRedactionInPublic, due to user settings changes. This replaces NotificationEntry#OnSensitivityChangedListener 4. SensitiveContentCoordinator has been removed entirely; the pipeline no longer needs to invoke NotificationEntry#setSenstive, since it no longer exists. 5. NotifStats has been updated to include additional information extracted from the NotifCollection necessary to dynamically query for redaction in the View layer, without needed to re-process the entire list; specifically, we track a Set of users that currently have sensitive notifications in the shade. This set is tested against the user's settings (tracked separately from the pipeline in NotifLockscreenUserManager). Test: atest Test: 1. Turn on notification redaction (no sensitive contents on lockscreen) 2. Receive a silent sensitive notification 3. Lock the device 4. Double tap camera 5. expand shade Observe: Clear all hidden in footer and in silent header Fixes: 213443266 Fixes: 230581048 Change-Id: Ibc66576d28a48f7c82cad875ed2dcb57a7b23f10 Merged-In: Ibc66576d28a48f7c82cad875ed2dcb57a7b23f10
* Merge "Remove FileDescriptor from systemui.Dumpable." into tm-devDave Mankoff2022-04-071-2/+1
|\
| * Remove FileDescriptor from systemui.Dumpable.Dave Mankoff2022-04-051-2/+1
| | | | | | | | | | | | | | | | | | | | This is the first step in moving over to the new public android.util.Dumpable api. Bug: 217567642 Test: m SystemUI Merged-In: Ibaebcfb2c6c5326d0c45b8c72d868c76655d89a0 Change-Id: Ibaebcfb2c6c5326d0c45b8c72d868c76655d89a0
* | Remove IPC from critical pathLucas Dupin2022-04-041-15/+22
|/ | | | | | | | | | Lock screen settings should be cached to avoid hitting an IPC with ContentProviders. Test: manually change lock screen privacy settings Test: atest NotificationLockscreenUserManagerTest Bug: 224779945 Change-Id: I6ae410a3c46b65cb15b0eacefa19ae272939f1b2
* Add unaudited exported flag to exposed runtime receiversMichael Groover2022-01-151-1/+2
| | | | | | | | | | | | | | | | | | | Android T allows apps to declare a runtime receiver as not exported by invoking registerReceiver with a new RECEIVER_NOT_EXPORTED flag; receivers registered with this flag will only receive broadcasts from the platform and the app itself. However to ensure developers can properly protect their receivers, all apps targeting T or later registering a receiver for non-system broadcasts must specify either the exported or not exported flag when invoking #registerReceiver; if one of these flags is not provided, the platform will throw a SecurityException. This commit updates all the exposed receivers with a new RECEIVER_EXPORTED_UNAUDITED flag to maintain the existing behavior of exporting the receiver while also flagging the receiver for audit before the T release. Bug: 161145287 Test: Build Change-Id: I5faa64ae0d2b22b62390bf13cb2b87fd6926e0c7
* Add more state to dump to debug missing work profile notifs.Jeff DeCew2021-11-121-6/+25
| | | | | | Bug: 176924824 Test: manual dump and read Change-Id: I1fb4e0cae43d9a6dfea038c40cd31aa66d96a6a2
* New Pipeline: LockscreenUserManager now uses the CommonNotifCollection for ↵Jeff DeCew2021-11-091-17/+11
| | | | | | | | queries Fixes: 204764178 Test: atest NotificationLockscreenUserManagerTest NotificationLockscreenUserManagerGoogleTest Change-Id: I456135f23ee0949faec0202250e26a632dc8a5c5
* New Pipeline: Add a NotificationVisibilityProvider to support both pipelinesJeff DeCew2021-11-091-10/+18
| | | | | | | | Fixes: 169655596 Fixes: 204183781 Fixes: 204770080 Test: atest SystemUITests Change-Id: I96cd96d1a037e7cca301242b1dba25ecdd72be9a
* Populate buckets to ensure correct corner rounds on notificationsJeff DeCew2021-09-271-2/+2
| | | | | | | | | Bug: 200956118 Bug: 199388061 Test: manual Test: atest SystemUITests:ShadeListBuilderTest SystemUITests:NotifSpecBuilderTest Change-Id: I36f6f2ac2a503daa01594248a1e6cffcfbd5c348
* Manually register Dumpables to DumpManagerNed Burns2021-09-081-2/+8
| | | | | | | | | | | | | | | | Dependency.get() automatically registers its managed objects to the DumpManager if they implement Dumpable. However, if code is refactored that removes all usages of Dependency.get() in favor of Dagger injection, then there is no longer a guarantee that the class in question will be registered to DumpManager (and so included in bug reports). Instead, remove the auto-registration feature of Dependency in favor of manually registering all dumpables with the DumpManager. Bug: 198713580 Test: atest Change-Id: Ie02a44fb7da0b76bf53da874cc9eee030a1b9173
* Update current user after registering receiverMia Månsson2021-06-141-0/+1
| | | | | | | | | | | | | | | | | | | NotificationLockscreenUserManagerImpl.mCurrentUserId is set in the constructor and when a user switch broadcast is received. If a user switch occurs before the receiver is registered, mCurrentUserId will have a stale value. This results in SystemUI not acting on the CLOSE_SYSTEM_DIALOG intent, because the intents user id is compared with the stale mCurrentUserId. Fixed by updating the current user after the receiver has been registered. Bug: 191094807 Bug: 180434613 Test: Add sleep to force the race, and verify the bug no longer occurs. Change-Id: I972d87a56875e42c87b2418da8ea5be40a776621
* Break circular dependencies in notif codeNed Burns2021-05-131-0/+11
| | | | | | Bug: 186481467 Test: atest Change-Id: Ie5b07bda46c2d217f5eb3be341595a6cb70fdd57
* Allow listeners to know about lockscreen notifsJulia Reynolds2020-12-031-2/+3
| | | | | | | | | | Specifically, whether user and device policy manager settings means that a notification should be hidden or redacted on the lockscreen Test: cts verifier Fixes: 173090853 Change-Id: Ic09a2b05a1acce5d3d63732861bdc69b274a1eba
* Remove Settings.Secure.NOTIFICATION_NEW_INTERRUPTION_MODEL flagJeff DeCew2020-10-221-3/+1
| | | | | | Fixes: 160886843 Test: SystemUITests Change-Id: I88a10b370d9022bbc226eabce3b41293e55c7f96
* 6/N Move everything into SysUIComponent.Dave Mankoff2020-08-161-2/+2
| | | | | | | | | | | | | | | It is far easier to move _everything_ into SysUIComponent, and then selectively promote things back to GlobalScope and/or WMScope than it is to try to do it one at a time. With this change, though lots of files are touched, very little actually changes structurally. After this change goes in, folks should stop using @Singleton quite so freely. Most things should live in @SysuiSingleton. @Singleton is due to quickly be replaced by @GlobalScope. Bug: 162923491 Test: atest SystemUITests && manual Change-Id: Idc31d3d83b030581fb1fa869f7fafc4f2d3a8828
* Create a shim for StatusBarManager click methodsEvan Laird2020-05-181-10/+4
| | | | | | | | | | | | | | | | | | | | | | | | `StatusBarManager#onNotificationClick` and `StatusBarManager#onNotificationActionClick` are signals we send to system server about notification clicks. This CL adds a shim so that we can have an in-process callback about the exact same events. This CL also adds NotificationInteractionTracker, which basically just merges the NotificationClickNotifier callbacks with the notification collection and will be able to answer the question "has the user interacted with this notification" Lastly, this modifies the logic in ForegroundServiceLifetimeExtender which now checks the interaction flag for notifications. So if a user tapped on a notification action (for instance) which _then_ triggers a notification cancel, it will succeed. It _does not_ as of yet release the notification from lifetime extension upon interaction. So if a notification is canceled and then interacted with, it will still live the full amount of time. Test: atest SystemUITests Bug: 144324894 Change-Id: I42201d6e7b7ffe9ad4f19c774b638a36a51750ef
* Convert NotificationSectionsManager to KotlinSteve Elliott2020-05-151-2/+2
| | | | | | | | | | This is a direct conversion, split into a separate CL in order to improve readability of the later CL(s) in this relation chain. There are no functional changes to the code. Bug: 153554168 Test: builds, atest Change-Id: Ic476fbb09d159a17cb811a49002b28b4fa823a57
* Merge "Separate managed/primary profile sensitive notifs" into rvc-devBeverly Tai2020-04-271-11/+19
|\
| * Separate managed/primary profile sensitive notifsBeverly2020-04-271-11/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously if the current (primary) user didn't allow sensitive notifications to show all their info on the lockscreen, then notifications for managed profiles also wouldn't show their sensitive info despite the user intentionally allowing work profile notifications to be shown on the lock screen. Now, if a notification is sent to a managed/work profile, then we only use the work profile setting to redact the sensitive notification information on the lockscreen. For all other notifications, we additionally check the current user's redactivility setting. Test: atest NotificationLockscreenUserManagerTest Fixes: 143536631 Change-Id: I468ca0b68188a594ebf0b78ebcc3bc0bb93687ac
* | Check importance to determine if notif soundsBeverly2020-04-241-1/+6
|/ | | | | | | | | | | If the user has a setting to not show silent notifications on the lockscreen, then all notifications that don't make noise from all notification sections aside from the media section should hide. For example, silent notifications categorized in BUCKET_PEOPLE. Test: atest NotificationLockscreenUserManagerTest Fixes: 152934785 Change-Id: I98c0f0d0ac17463f92cc0228903d13ab226c5c1a
* Merge changes If0e0ab21,I34d1d5f9TreeHugger Robot2020-01-311-1/+2
|\ | | | | | | | | | | * changes: Register broadcast for all users Update redaction upon profile changes
| * Register broadcast for all usersLucas Dupin2020-01-301-1/+2
| | | | | | | | | | | | | | | | Otherwise NLUM might not receive events after switching to guest. Bug: 145135488 Test: manually switch users Change-Id: If0e0ab2161571fe561bc9460788efbcbb7050621
* | Expose managed profile sensitiveness preferencesLucas Dupin2020-01-281-8/+55
|/ | | | | | | Test: atest NotificationLockscreenUserManagerTest Test: atest KeyguardSliceProviderTest Bug: 144299702 Change-Id: Ia91cab4ebeaa36a7f26588197c4aba3291f88d28
* Merge changes Id007cc64,I94afce96TreeHugger Robot2020-01-081-43/+67
|\ | | | | | | | | | | * changes: Minified people row Current user and work profile availability in peoplehub
| * Current user and work profile availability in peoplehubSteve Elliott2020-01-081-43/+67
| | | | | | | | | | | | Fixes: 144285253 Test: manual, atest Change-Id: I94afce96f6e164e7f4d4bb212920e3de8c5c1208
* | Conslidate @MainHandler and similar to @Main (and similar).Dave Mankoff2019-12-201-2/+2
|/ | | | | | | | | | | | @MainHandler, @MainLooper, @MainResources -> @Main @BgHandler, @BgLooper -> @Background. Also, move the providers for Handlers and Loopers into the ConcurrencyModule. Bug: 146510722 Test: atest SystemUITests Change-Id: I991735e1fdca397784427409a2ae696a7374f584
* Add Coordinators to the NewNotifPipelineBeverly2019-12-041-1/+1
| | | | | | | | | | | | | | | Coordinators added to NotifCoordinators will be passed the initialized NotifListBuilder and NotifCollection when they're ready for Pluggables, NotiLfetimeExtenders and NotifCollectionListeners to be registered. This CL adds the KeyguardCoordinator which filters notifications based on whether the keyguard is showing and user lockscreen notifcation settings Test: atest KeyguardCoordinatorTest Bug: 145134683 Change-Id: Ie5a2c0f696a6eedbed203b1b5809164742d23132
* Remove Dependency.get(MAIN_HANDLER) from NotificationLockscreenUserManagerImplDave Mankoff2019-11-191-15/+24
| | | | | | | | Also, clean up a bunch of other injectable objects. Bug: 144503618 Test: atest SystemUITests Change-Id: I5ec005ee21689d800238fa30c86ef6e08b832bbf
* Let SysUI call Settings.Secure#getIntLucas Dupin2019-11-191-1/+0
| | | | | | | | This call is cached locally by Settings Fixes: 140058091 Test: make Change-Id: Ia5eb335e2de69b39095b7d151d4d1e128c9abbd8
* Remove NotificationDataEvan Laird2019-11-131-14/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ye olde NotificationData class was responsible for a few general things: - Keep a list of visible `NotificationEntry`s - Filter / sort the visible entries - Keep a sorted / filtered list of those entries - Answer lots of questions about the entries themselves (rank, isAmbient, list of entries for current user, etc.) - Keep track of the current RankingMap - Set priority buckets on entries - Tell the group manager when things changed The basic idea here is to remove NotificationData in favor of 3 other changes: 1. Any place which needed to query NotificationData for info about the entry (in particular its ranking) can just ask the entry for it now. Entries all keep a reference to their rank 2. NotificationEntryManager now just maintains its own list of visible notifications. It was already the point of contact to get a handle to NotificationData so this makes call sites simpler. 3. Create a simpler NotificationRankingManager (maybe delete this eventually) to encapsulate the sorting logic and hang on to the latest RankingMap Test: atest SystemUITests Change-Id: I14073e103c6d50da37207ca8fd86828da0aaaff9
* Finish migrating to BroadcastDispatcherFabian Kozynski2019-11-041-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | This CL migrates most of the remaining classes to use BroadcastDispatcher. Some classes left are Views or created before the BroadcastDispatcher can be injected. Adds docs for instructions on using the BroadcastDispatcher. Using the broadcast dispatcher, the time system_server spends dispatching common intents to SystemUI like SCREEN_OFF and SCREEN_ON can be seen to decrease from ~70-150ms (in a Q build) to ~2-4ms. Additionally, once a broadcast is received by the dispatcher, time until it is fully dispatched inside SystemUI is not impacted greatly. Most broadcasts are fully dispatched after ~20ms with a few of them taking ~100ms. Test: atest SystemUITests no regressions Test: build and boot Test: tried some random broadcasts and they are properly dispatched Test: BroadcastDispatch dump Test: adb shell dumpsys activity broadcasts Bug: 134566046 Change-Id: I26a592be66b053f25669b5481b58bf7f07bfd0da
* Encapsulate NotifEntry.key and .notificationNed Burns2019-10-181-4/+4
| | | | | | | | | | | NotificationEntry.key -> getKey() NotificationEntry.notification -> getSbn() .key -> mKey .notification -> mSbn Test: atest Change-Id: Idcc56af5d941d600b2958afb9ed898fd7ab361cc
* Add NotifLogs throughout SystemUIBeverly2019-10-081-5/+7
| | | | | | | | | Test: atest SystemUITests Test: adb shell dumpsys activity service com.android.systemui/.SystemUIService \ dependency DumpController NotifLog Bug: 141470043 Change-Id: I4263333da209a4765cd9a3dd1931780d2041b3bf
* Single source of truth for auth stateLucas Dupin2019-09-231-10/+7
| | | | | | | | | | | | Merging UnlockMethodCache and KeyguardMonitor into KeyguardStateController, making it injectable and introducing KeyguardStateController#isUnlocked in order to make it easier to keep track of the lock screen state. Test: atest SystemUiTests Test: unlock with face, lock again Test: unlock with password, lock again Bug: 139363827 Change-Id: I37ac8c7826101852c61382559be9868125c15fac
* Add a third notification sectionEvan Laird2019-09-161-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A bunch of things, but they are (mostly) hidden behind a flag: - Made the NotificationEntry#bucket concept more generic - Added logic to NotificationData to set a bucket int on each entry - Flag config_usePeopleFiltering in systemui.config turns on new behavior - Reduced the number of hacks in NotificationData to 1. Now it sets the buckets n the entries only once post-sort - NotificationEntry has a basic check for "people" - NSSL delegates to NotificationData/NotificationSectionsManager for creating sections - NotificationSectionsManager can now manage any number of sections The basic gist of this change is to enable and partially implement a "people" notification section. In order to do that, we have to do a little bit of cleanup to make NotificationSections more generic, then find a way to differentiate "people" notifications. To generify the sections logic, this change furthers the concept of notification "buckets". A bucket is entirely a concept shared between NotificationData and NotificationEntry, but with the intention that each bucket will get its own section. Once a set of buckets is decided upon, NSSL tells NotificationSectionsManager to create the necessary sections. NSSL also will need to ask the sections manager to check the entire list of view in the panel for section boundaries, since they can be anywhere and there can be any number of them. The people filtering is currently straightforward. NotifiationEntry checks for EXTRA_PEOPLE_LIST or EXTRA_MESSAGES and checks for people information on a notification. If it exists, then that entry gets sorted to the top and will get its own bucket set (if the setting is on). Test: visual Bug: 140232781 Change-Id: I7fa5c4d7509f2ca5f485216f2de0160c91802235
* Fix the looper that KeyguardUpdateMonitor is using.Dave Mankoff2019-08-311-1/+1
| | | | | | Bug: 139051615 Test: atest SystemUITests && atest SystemUIGoogleTests Change-Id: Ic4dd5978001c208504c137cee41f363d7e70b1b5
* IPC StrictModeLucas Dupin2019-08-261-4/+8
| | | | | | | | | | | | | | This CL introduces a way of blocking IPCs on the main thread. This is enforced by StrictMode, and enabled on tests and eng builds. All current blocking IPCs were whitelisted and bugs will be filed, in order to fix them for R. Bug: 139360025 Test: adb logcat Test: atest SystemUITests Change-Id: I45af2619605ee36b6bae83ef080272c62754b654
* Refactor SysUI to allow daggerization of implementationsGovinda Wasserman2019-08-261-0/+5
| | | | | | | | Also daggerize Android Auto. Test: tested locally BUG:139865326 Change-Id: Ia53398ce410ae8f3768142723af578c215f286a9