When false, it correctly does not show the QSB but leaves
a default style search bar which cannot be removed.
Add checks to control default view visibility in device
profile layout & re-layout, QSB container and in
Workspace's onMeasure
Bug: 35967694
Change-Id: I3d0f89e1022d838eeb95762fd1fb3f7257956c41
This is the basis for app discovery integration while searching in all apps.
This does NOT include binding to the actual service and retrieving results,
but instead provides all the UI to show suggested instant apps and apps
from a store with star rating and pricing.
Change-Id: I1605b52848491acee4ac1d15c0112e6a768363f6
Instead of cliping using clipPath, using PorterDuffXfermode to clear
area outside the bounds. This provides much better support for antialiasing.
Software layer was also being used for drawing shadow. But since the paint
color was set to transparent, no shadow was being drawn in O. Instead drawing
the shadow using radial gradient.
Bug: 35680116
Bug: 35428783
Change-Id: I0431664400628d5d01675fe72fe7ade01b64d611
- Background is now white, and color beneath and divider color
updated accordingly (not from color extraction)
- Removed overflow text ("+6") and added it to a header
("6 Notifications"). Use "..." instead if there is an overflow.
- Even spaced out icons in notification footer between the
far right icon and the ellipsis
- Remove code to change arrow tint, since it is always white
now. This also fixes the issue where it was drawn as a rect.
Bug: 35766387
Change-Id: I03bfda4ff029f23dd8b3dd1b72f534ea0e2c0816
Earlier we were relying on activity list to check is an app is
installed or not. It fails if the app only exposes widgets and
no visible activity. Hence dragging an icon to AppInfo sometimes
causes the icon to get disappear.
Bug: 33241335
Change-Id: Ieb71e298a0930dd0a831cf09bd1e998514a427fd
- Add static method to ShadowGenerator to generate a
circle Bitmap with a shadow.
- Move setColorScale() from DragView to Themes, and
use it to apply color to the shadowed Bitmap.
Bug: 35744066
Change-Id: I8d1da528bbf94dc83851f0b4016361ed9f8d5349
- DeepShortcutViews are added to ShortcutsItemView, which
is in PopupContainerWithArrow
- Moved some shortcut-specific logic to ShortcutsItemView
(namely, touch/long-click handling for draggin shortcuts)
- Moved round-rect clipping to PopupItemView
- Removed collapseToIcon() logic, including
PillWidthRevealOutlineProvider, which was only used for
that purpose. It isn't necessary now that the deep
shortcuts have no background themselves.
- Replaced focus pill drawable with ripple effect on
shortcuts and notification view.
Bug: 35766387
Change-Id: I6bc09f1851cfbb806df4bf75a6e435b0f1900c9c
We already close the Folder when Work Profile apps are
auto added to the Work Profile Folder. This change extends that
functionality to when apps are being auto removed from the
Work Profile Folder.
Bug: 35845161
Change-Id: I2aa6a6a0ed28a95f6a59a549430f91482583548b
We turn on suggestions, turn off auto complete, and disable the
default behavior where red lines appear under typos.
Bug: 30055146
Change-Id: Ia151b7a4db1dfc6908504e6ea82a1f6989f05ca5
- Use smaller radius for notifications round rect background
- Remove "Notifications" header, and clip children to round rect path
- Flip main notification so that icon shows on the right instead of
left; footer is also flipped so animation makes sense
- Clean up animations to animate view outline instead of height
Bug: 32410600
Change-Id: I6bd1e1f8395b3703f28c3b0056a89e67672368ab
> For Fast scrolling, using state list animator defined in xml
> For Pressed state, using onState change method in a drawable
Change-Id: Ia608690f593938cf0f77e00afcc2a3076e48d8f4
The tasks will be enqueued after the model is loaded when it
gets to the final state.
Bug: 31509386
Change-Id: Id72aaedb025a91a49b25e1ef103cc1976d603b21
Instead of maintaining 3 different states, each tied to a subset of data,
maintaing a single state that represents all the data. Individual subset
data is invalidated in rare cases and these invalidates are tightly tied
to the UI. This also allows us to add new data to the model, without worring
about classifying the data into a subset.
Bug: 34112546
Change-Id: Id9cb273de35b79e84a2ef8d6556fcf1e72fb4b75
Before, we had a hack where the notifation view would tell the
footer to trim its notifications, which is inefficient and ugly
since we already know exactly what notification to remove. So
now we move the relevant removal logic (keeping things like the
overflow text in sync) to a removeViewFromIconRow() that is
used after the icon animates as well as when trimming notifications.
Bug: 32410600
Change-Id: I19e54e0c28daea869b45649c7f5c74843412bb86
This can happen when items (as part of a Work Profile) are auto added
to the Work profile Folder.
Bug: 35628160
Change-Id: I29d3b277b0e9cd4bb238fb5aff9a52c6b9e764f8
This fixes a bug where a work profile remains opened even
after the work profile is removed from the device. This can
occur when the work profile is removed with the Folder still opened.
Bug: 35627777
Change-Id: I8d5b4bd9931cad2316b6b8786501d6b3780b7aca
This CL fixes app shortcuts for suspended packages.
1) When DO/PO suspends an app, its pinned shortcuts are instantly grayed
out, but this is not persisted after the launcher restarts (e.g. device
reboot). We now enforce the launcher to check the suspended state when
loading the workspace, and gray out pinned shortcut icons accordingly.
2) When DO/PO suspends an app, its app shortcut popup is still
available. We now temporarily disable the popup when the app is
suspended, and persist the state across restarts.
Bug: 32365540
Test: manual, by following the steps in the bug above
Test: manual, by restarting the launcher package
Change-Id: I983d7c17fa198beca23b66459b50bd67b447bdd2
The first time FolderIcon#growAndFadeOut is called, the folder
icon pivot x/y is not set. By moving the call after centerAboutIcon
(which sets the pivot point), we get the expected result of the
animation growing upward.
Bug: 35126799
Change-Id: I22fccb6b23550f823eb7b4485b9584022b810323
- NotificationListener.getInstance() has been changed to
getInstanceIfConnected() (same behavior as before).
- When starting launcher, we send a full refresh of badges
regardless of whether the NotificationListner is connected.
If it is not connected, we pass an empty list for the
active notifications, so that all pre-existing badges are
removed.
Bug: 35221052
Change-Id: If920317f10814c010e02b5a30ce86a58ac7bc61c
> Replacing some colors with theme attributes
> Simplifying styles definition by removing unnecessary inheritance and inlining some definitions
Change-Id: Ifa167515cae6a7fd3720f1a52ff9ce11abb4495f