Update AnimatableClockController's definition of attached to include
whether the keyguard is visible or not. This way, we won't animate
if the view isn't actually visible & we'll reset the clock state when
the keyguard is newly visible.
Only create a new AnimatableClockController onInit instead of
in the onAttach method for KeyguardClockSwitchController.
Fixes: 188203771
Test: manual
Change-Id: Id02132dba8b5392046cb46766aa64fd58e04a4ad
When the large clock appears, move smartspace up to take the place of
the small clock. Reverse that when notifications appear and the small
clock shows up. Animate the large clock weight on appear.
Fixes: 185301988
Test: manual (swipe away notifications)
Change-Id: Ic293cebad4e7a5311c024a4d9cdc7b206689fde7
Spins off the logic for manging the smartspace view into
LockscreenSmartspaceController. In addition to just cleaning things up,
this allows us to expose the current contents of the smartspace to any
listeners that might be interested (there's an interested listener in
the following CL).
Bug: 186481467
Test: atest
Change-Id: I117afdc984215128ec47dfd3190d1685757c0f69
The KeyguardClockSwitchController will already be recreated on a user
switch. This was adding a 2nd call, and then attempting reload
smartspace on a detached view.
Fixes: 187467770
Test: atest KeyguardClockSwitchControllerTest
Change-Id: I1f153c029481fe4915d42f7334cbb9534f89a42b
Add support for systemui to inform smartspace about do not disturb
settings. Address some minor spacing issues. Fix how smartspace loads
through dagger.
Fixes: 185970916
Test: atest KeyguardClockSwitchControllerTest
Change-Id: Id19244ceb45fb70a28d780fa5edefab35a5e42c4
For both the current user and any managed profiles, check to see if
sensitive smartspace content should be filtered out, based on the user
settings.
Bug: 183401939
Test: atest KeyguardClockSwitchControllerTest
Change-Id: I5de56b1e3229629864304853c26dc45c98ef0114
Also integrate the FalsingManager, which is important for determining
user intent while on the lockscreen.
Fixes: 186219857
Test: atest KeyguardClockSwitchControllerTest
Change-Id: I22108ec2335bd350fbcaf5d5b90dd3b351011767
Pass dozeAmount values to the smartspace library to allow the lib to
make decisions regarding content on both AOD and Lockscreen
Fixes: 185598979
Test: manual, multiple smartspace cards
Change-Id: Ic7bc2ba238b22794a33e6db18c1aae0fa7c96e0b
Uses BcSmartspaceDataProvider directly instead.
Bug: 185416581
Test: Manual and with updated unit tests
Change-Id: I42049c037e95a6c544dc8e841890f8d1981c124a
This is largely for both AOD and lockscreen, while may have different
colors than launcher. Particularly for AOD, we need to transition to a
WHITE color. Set a primary text color, with expectations that a
secondary color will later be set in order to support cards with
various background colors.
Fixes: 185211979
Test: manual, change to AOD <-> LS
Change-Id: I36fb8e5cfcbac1ec999b2b9df08f42d47507990f
The large clock was not properly set below the new smartspace when the
plugin was activiated. Fix that.
Fixes: 185226009
Test: atest KeyguardClockSwitchControllerTest
Change-Id: Ib9c1f837128524b8a896ed12eee7b70cc145ec28
Remove old style clocks and all related code. Begin unraveling code
supporting multiple layouts. Migrate plugin small/big clock support to
the new clock areas.
Fixes: 184073275
Test: atest KeyguardClockSwitchTest KeyguardClockSwitchControllerTest
Change-Id: I38dc2a6df6a710c6da23cbb17fac8d28f3b84764
Revert "Enable smartspace"
Revert submission 13984710-smartspace_ls
Reason for revert: Broken test: com.android.devicehealthchecks.SystemAppCheck#system_app_crash on git_master on redfin-userdebug at 7262114
Reverted Changes:
I77a4ef72c:Enable smartspace
I77a4ef72c:Enable smartspace
Bug: 184642387
Change-Id: I299bef5e730c632803c56cf0f1cd858caac4e49f
Test: forrest run for the broken test
Allow KeyguardSliceProvider to be replaced by content coming from the
BcSmartspaceDataPlugin, only when the plugin is enabled.
Bug: 172360102
Test: manual
Change-Id: I77a4ef72c7131f955fe37763e02542726c36927b
Move clock to the start, and move smartspace content below
it. Recalibrate burn-in and fully support RTL layouts. Remove extra
top margins.
Bug: 172360102
Test: manual
Change-Id: I2dc4300106c63095ae41f9407b2fe4c053017573
- only use one paint for hours and minutes
- customize vertical line spacing for Burmese numerals to account for
long ascenders and descenders
Note: Burmese numerals sometimes get cutoff at the bottom, bug filed at
b/179815528
Test: manual
Fixes: 177206446
Bug: 179781576
Change-Id: Iac71eabdcf1ed06962f38414253a2038651168c7
Match latest specs for large/small clock transitions, including a fade
and y-axis shift.
Bug: 172360102
Test: manual, show/hide all notifications
Change-Id: I8d756bfbc524481d7b8835946acf05aa4893a1d5
- Update clock sizes (large clock = 200dp, small clock = 100dp)
- Update clock weights (large = 100-400, small = 200-300)
- Update clocks on time zone and time format changes
(Settings > System > Date & Time)
Test: manual, atest SystemUITests
Bug: 170228350
Change-Id: I446a2625fdd776c15e744f1601b3ea0e2a873cf1
Scale the AOD large clock between [0.8, 1.0] in both x,y directions,
in order to keep the clock centered. The large clock will still be
shifted on the y-axis as well.
Bug: 13129102
Test: manual, burn in tests
Change-Id: I86235d39b199a1a10cfb40e474f1e1e58b9c11d8
Support large clock when no notifications are present. Remove
immediately when a HUN appears.
Bug: 172360102
Test: manual
Change-Id: I7ed4689b4d1d4176e0a4a29fc61150905037f484
- Only use the burn-in offsets on AOD. This means the clock will be in a
different position on LS compared to AOD.
- Align the top of the KeyguardSliceView (smart space) with the top of
the text of the clock (as opposed dto the top of the clock's view)
- Decrease bottom padding on KeyguardSliceTextView so that the DND icon
doesn't get cutoff when there's a large smart space info
Test: atest SystemUITests, manual
Bug: 170228350
Change-Id: I332300616e4218b6fcd24f837127a7eee487d4e7
Updated TextInterpolator and TextAnimator to support a
Paint object for each line of text. Now we can interpolate between
the colors when animating.
Clock colors are now based on the theme (for now, wallpaper text
color). ie: first line (of vertical clock) is one color, second line is
another color.
Also adjusted Keyguard clock logic to animate on doze changes instead of
animating incrementally on setDarkAmount.
Test: atest TextInterpolatorTest TextAnimatorTest
Bug: 170228350
Change-Id: Ia62f2de48534be2007afc5a95eac46b3c44ec880
Move both the clock and keyguard slice area towards the middle for x
adjustments, and retain the current Y adjustments.
Bug: 172360102
Test: follow burn in instructions here:
/frameworks/base/packages/SystemUI/docs/clock-plugins.md
Change-Id: Id22d777724bf9be58758b1a2b260a7933af8e999
Also moves setup of aod icons to KeyguardStatusViewController
instead of through Status Bar => NotificationPanelViewController.
To enable the new lockscreen (value = 0 is disabled, value = 1 is enabled):
adb shell settings put global show_new_lockscreen <value>
Test: atest NotificationIconControllerTest
Test: atest SystemUITests
Bug: 170228350
Change-Id: I93d19823620051e969e8790c8946bdc15a5ab379
ViewController's init method was not ideal to override. On the one hand,
if you put a call super.init() first your onViewAttach method is called
before you're subclass's init.
Further, if you put your own code befer super.init(), you are still left
with the problem that your init is not automatically idempotent, and
multiple calls to #init() could result in multiple executions of your
code unless you handle it yourself.
With this change, #initInternal() is introduced, giving ViewControllers
a place to put their run-once code such that it runs before any
view-attachment callbacks are fired.
Fixes: 171472009
Test: manual
Change-Id: I2e284024c82e3f7c7b6f29f22a1ffa3c8aae9fcb
Refactor KeyguardStatusView so that it has a controller that
NotificationPanelViewController can use to manipulate the view. This
CL untangles some of the logic in KeyguardStatusView that should be in
KeyguardClockSwitchController.
No functionality changes.
Test: atest KeyguardClockSwitchControllerTest
Test: atest NotificationPanelViewTest
Test: atest KeyguardStatusViewControllerTest
Test: atest SystemUITests
Change-Id: I52d0d887cb4ce734ec265b6357644ba1d1368460
Bug: 170228350
This removes view injection from KeyguardSliceView.
It also creates a KeyguardStatusView Dagger Subcomponent should be
initilialized whenever a KeyguardStatusView is inflated. From that
subcomponent, KeyguardClockSwitchController and
KeyguardSliceViewController can both be created and initialized,
passing their related views into their constructor.
This fixes a bug introduced earlier where a
KeyguardClockSwitchController was not being created in one place
where it was needed.
Bug: 162525274
Test: atest SystemUITests
Change-Id: Ie571cb0ca2b793c363e3c8ab397828f0ee939763
Adds a controller for the KeyguardClockSwitch, and
moves some of its logic over.
Fixes: 162500959
Test: atest SystemUITests
Change-Id: Ib606ec727e5d005a0668a96dc823a7d1d1a53c79