Commit Graph

403 Commits

Author SHA1 Message Date
Tony Wickham 8db5d7ca60 Merge "Add appropriate (tiny) offset to widget drops so they land correctly." into ub-launcher3-burnaby-polish 2015-12-04 22:14:36 +00:00
Tony Wickham 62b9b6054e Hide the focus indicator view when going to a fullscreen page.
Bug: 25649853
Change-Id: I9f2f221020548b48d816924a1803a1a70d11c412
2015-12-03 14:47:52 -08:00
Tony Wickham 0fa5ada226 Fullscreen pages (e.g. Now) are focusable via keyboard.
Change-Id: I962551651aeb9ac7b57bb51b195adc3140db30d8
2015-12-03 14:27:55 -08:00
Tony Wickham a501d49a6a Add appropriate (tiny) offset to widget drops so they land correctly.
Also removed some unused parameters I found on the way.

Bug: 25191623
Change-Id: Ib9a30db106467c114cc8b54a5b13ed3e88162d56
2015-12-03 11:54:13 -08:00
Tony Wickham ac929f4ad8 Merge "Disallow scrolling if workspace is in transition." into ub-launcher3-burnaby-polish 2015-12-02 23:11:09 +00:00
Sunny Goyal 9326461652 Adding margin to Drag layer instead of checking for right insets at every place
Bug: 25692432
Change-Id: I853f41a17c54b30b7772b9fd8556d9465de84752
2015-12-01 14:43:32 -08:00
Tony Wickham a5209e33fc Disallow scrolling if workspace is in transition.
Because going to overview mode scales down the workspace, it was
thinking the touch was moving even though your finger was still. If
the "movement" was large enough, it was treated as a scroll, causing
jank. This was especially prevalent on tablets due to their size.

Bug: 25779718
Change-Id: Idb7833e0087bd24ca840f6afc451bf221f6bc047
2015-11-19 12:45:30 -08:00
Winson Chung fb4014daa3 Merge "Fix issue with source params not reporting predicted apps." into ub-launcher3-burnaby-polish 2015-10-16 22:20:14 +00:00
Winson a49b1f75cd Fix issue with source params not reporting predicted apps.
Bug: 25020080
Change-Id: Iaa67ccbb3e3a6c264aaa4fa3c915faad8a69bbbc
2015-10-16 14:57:24 -07:00
Tony Wickham a8709ddbbf Merge "Fix "The specified child already has a parent" IllegalStateException." into ub-launcher3-burnaby-polish 2015-10-15 18:00:59 +00:00
Tony Wickham a0628cc521 Fix "The specified child already has a parent" IllegalStateException.
The problem was due to a race condition between removing a prebound
widget view from the drag layer and adding the same view to the
workspace upon dropping it; if you let go of the widget immediately
after picking it up, the latter happened before the former.

Specifically, the flow was: long-click a widget --> drop --> remove
the view from the drag layer if it's not null (it is, so nothing
happens) --> the view is finally bound/inflated and added to the drag
layer --> add the view to the workspace --> already has a parent.

There are actually 2 problems here: one is that the bind/inflate is
asynchronous, and can therefore happen after dropping the widget view
being inflated, and the other is that the view is added to the
workspace even though the transition has barely started (we usually
ignore drops if the transition is less than half complete). It turns
out that this second problem was also due to a race condition, this
time between dropping a widget or app onto the workspace and calling
LauncherStateTransitionAnimation.dispatchOnLauncherTransitionStart().
If the drop happened before the dispatch, as in the case of the
crash, then the drop was accepted because the transition progress was
still 1.0 from the previous transition.

I fixed the first problem by removing the drag layer widget view
in Launcher where it is potentially used instead of Workspace. And I
fixed the second problem by setting mTransitionProgress to 0 in
Workspace.onLauncherTransitionPrepare().

I also added some debugging logs.

Bug: 23896857
Change-Id: I66944e6d3f23b70dea15f7fb01af0763a1bfcbda
2015-10-15 10:07:06 -07:00
Sunny Goyal 21d89fbf8c Merge "Fixing overscroll effect when the navigation bar is opaque" into ub-launcher3-burnaby-polish 2015-10-07 17:22:44 +00:00
Sunny Goyal d1a0e8b5c8 Jailing the saved instance state of all the dynamically generated views
Using itemId instead of generating a new id for each item. This is because
if the process gets killed, View.generateId will get reset but we will still
receive the generated item id map in onRestoreInstance. This will cause
conflicts with newly generated item ids.

We wrap all the generated homescreen views inside a single sparse array. This
ensures that we do not cause any conflict with dynamically generated views in
other parts of the UI.

Bug: 16840760
Change-Id: I6fe69c2e1dd463402f51222715fae31b9d4dd240
2015-10-05 18:25:49 +00:00
Sunny Goyal e78e3d734b Accessibility fixes
1) Use a different content description for temporary new page
2) Use different accessibility description for add widget toast
3) Announce when an item is deleted
4) Announce when hovering over a drop target
5) Announce state during drag-n-drop and widget resize (similar to seekbar)

Bug: 23573321, 24057944
Change-Id: Icabb317625e70c78e11c0b4f99b9339172d93594
2015-09-25 10:22:47 -07:00
Winson 2949fb5b16 Fixing talk-back folder icon removal regression.
Change-Id: I0b7fff645828d5198500973f1c9ea74f406a1a43
2015-09-24 18:21:16 +00:00
Sunny Goyal f27cb0e6b1 resolved conflicts for 8ac727b2 to ub-launcher3-burnaby-polish
Change-Id: I34e679bae7faae3c7ca725263fe6cc7c5611e63a
2015-09-23 16:12:02 -07:00
Sunny Goyal 8ac727b2c6 Using custom threadpool executor instead of the one defined in AsyncTask
Change-Id: I8fe95d932c5de14c74f0576bfc3d1f641d12b448
2015-09-23 15:39:14 -07:00
Sunny Goyal 0abb36f692 Fixing overscroll effect when the navigation bar is opaque
The navigation bar is opaque on mobile devices in landscape mode.
Launcher should ignore the right insets and draw the edge effect appropriately.
Also draw the black bar under the navigation bar, just in case we assume it
to be opaque, but it was not actually opaque.

Bug: 18526657
Change-Id: I1d49dcb82b8a5ee25009bc738cd9b8c0c5c88263
2015-09-22 10:57:08 -07:00
Adam Cohen 9ae42fff6f am b3fff9d9: Merge "Cleanup some incorrect / noisey calls to CustomContentCallbacks#onShow / onHide" into ub-launcher3-burnaby
* commit 'b3fff9d98a3e3c886d4efa912d7ad6753dd7ec9c':
  Cleanup some incorrect / noisey calls to CustomContentCallbacks#onShow / onHide
2015-09-21 17:40:50 +00:00
Adam Cohen b3fff9d98a Merge "Cleanup some incorrect / noisey calls to CustomContentCallbacks#onShow / onHide" into ub-launcher3-burnaby 2015-09-21 17:34:05 +00:00
Adam Cohen 4b66bf3cff Cleanup some incorrect / noisey calls to CustomContentCallbacks#onShow / onHide
-> In some instances, onResume would incorrectly call onShow
-> When pressing Home from CustomContent, we'd get a sequence of onHide,
   onShow, and then onHide due to some deferred actions in onNewIntent.
   Got rid of the onShow.

issue 17629011

Change-Id: I9b4f2ef682f5a7060e68210866fa05452076e428
2015-09-18 17:32:00 -07:00
Tony Wickham 6ed058cb6b Wallpaper preview parallax matches the actual wallpaper's.
Cherry picking the following changes from ub-launcher3-master:
Change-Id: I41c5bbbfdabfeb4e20d77e9b5804842a03211edf
Change-Id: I69afa3f8cc59c77e9c4c25e29e8db8c4beb87462
Change-Id: I82b7ba506d51ee4b3812af5fbdf95d3303b37aef
Change-Id: Id7c2b5483c5535d59be2f8a459ce7788e3c8318a

Bug: 23568800
Change-Id: I343169b9fdc5ceaab3d4b39044627d78b7267868
(cherry picked from commit 3e776a87dc)
2015-09-18 13:09:01 -07:00
Winson Chung a3c9fb125c Merge "Requiring key chord to delete icons and folders on the workspace" into ub-launcher3-burnaby-polish 2015-09-18 18:49:25 +00:00
Winson fa56b3f2f1 Requiring key chord to delete icons and folders on the workspace
- Also fixing case where the all apps button to search for more apps
  was not focusable

Bug: 20639227
Change-Id: Ie4d9092e654d3cafc0eb346b3bb744ec3e295e92
2015-09-14 19:47:19 +00:00
Tony Wickham 8a511b9123 Merge "Wallpaper preview parallax matches the actual wallpaper's." into ub-launcher3-burnaby-polish 2015-09-14 18:39:56 +00:00
Winson c0b52fefbc Refactoring to ensure item deletion always removes from the DB.
- Routing the various places where we call through to delete from
  LauncherModel through Launcher, which will delegate the removal
  of the icon from the workspace, and properly handle the removal
  of all items and their contents from the db.

Bug: 23944119

Change-Id: I022fe2b3e79da16b5af87505c4362490b8422686
2015-09-10 14:55:17 -07:00
Tony Wickham 3e776a87dc Wallpaper preview parallax matches the actual wallpaper's.
Cherry picking the following changes from ub-launcher3-master:
Change-Id: I41c5bbbfdabfeb4e20d77e9b5804842a03211edf
Change-Id: I69afa3f8cc59c77e9c4c25e29e8db8c4beb87462
Change-Id: I82b7ba506d51ee4b3812af5fbdf95d3303b37aef
Change-Id: Id7c2b5483c5535d59be2f8a459ce7788e3c8318a

Bug: 23568800
Change-Id: I343169b9fdc5ceaab3d4b39044627d78b7267868
2015-09-10 11:56:54 -07:00
Sunny Goyal a75053f5f9 Preventing null pointer crash when opening a folder
Bug: 23770713
Change-Id: I3ce82450358f1493f70639d594e1e3f391945437
2015-09-03 09:48:50 -07:00
Sunny Goyal 7c3cccf427 Fixing empty screen created at the end, even when dragging the last item on the last screen.
Change-Id: If0d4faf0ca15e71facb6ed2fd81ed6a589527836
2015-08-18 18:49:08 -07:00
Sunny Goyal 9fc953b94d Version code cleanup
> Renaming Lmp to Lollipop
  > Lollipop_MR1 instead of directly using 22
  > Using M APIs directly instead of reflection

Change-Id: I10a307f46e3be15b3299f549a2fd7e0e215a6a1b
2015-08-17 13:26:01 -07:00
Vadim Tryshev cc436d5d95 Fixing crash upon cancellation of an accessible drag.
This fixes perhaps an old bug.

If we started an accessible drag for an only item on a page,
then uninstalled the app while dragging, the page was removed
without unsetting its accessibility delegate. Later, the system asks
the delegate to do something, but the drag is over, and some pointers
are null, so everything crashes.

Fixing this.

Bug: 22028725
Change-Id: I85adcd42ae896603634994e20a7790792f7e84b1
(cherry picked from commit de1e67c388)
2015-08-12 00:50:35 +00:00
Sunny Goyal 3fcab663a1 Preventing zoom-in animation from running everytime the app updates.
Bug: 22557455
Change-Id: I3ac1212a2f319397cd18be8f4452047d974312b8
2015-08-11 15:18:02 -07:00
Winson Chung 0ad3306684 Merge "Refactoring search bar animations." into ub-launcher3-burnaby 2015-08-05 19:21:03 +00:00
Winson Chung 006ee269ba Refactoring search bar animations.
- This refactoring ensures that LauncherStateTransition does not
  do its own animation on the QSB, and that all animations to the
  SearchDropTargetBar go through its own animators.

Bug: 22515084

Change-Id: Ia7d13c44d861eac7517076b52a9651a90911ed0a
2015-08-05 12:04:06 -07:00
Sunny Goyal 317698bd01 Loading high resolution icons for first 3 items in a folder
> Sometimes a folder gets rearranged, without updating the model,
   like when an app in uninstalled. In that case, we need to update
   the icons for folder items, which were previously hidden

Bug: 22813360
Change-Id: I99754911c969bf2153efb2948c226c1c69219b88
2015-08-04 11:05:15 -07:00
Sunny Goyal 912bdfcffa Replacing exception with a log, when uninstalling an app leads to an illegal state
Bug: 22491055
Change-Id: Iaf5fe20b717102bdb0a5442dcc33efea30c50d47
2015-08-03 19:31:17 -07:00
Sunny Goyal 6eeab68fd4 Fixing drag outline positions for folder over hotseat
Bug: 22506247
Change-Id: Ia2508307554089205fd678987454e81cb811a59b
(cherry picked from commit 92bce43164)
2015-08-03 17:19:37 +00:00
Winson Chung 4f7eb4077e Fixing overview mode scale calculations.
- Making the overview scale apply just like the spring loaded scale factor
- Tweaking overview scale to make it not so small

Change-Id: If93bac08609b0cfd9c9d9f8f6057498957378b56
2015-07-10 18:23:08 -07:00
Sunny Goyal 41d8417678 Computing the visible cell layout area without using the current scroll
Bug: 22358433
Change-Id: Ib79d02156b6bfab831fa659637f6113a7f555ba7
2015-07-09 10:13:36 -07:00
Sunny Goyal f89aa3579a Hiding workspace from accessibility when its not visible
Bug: 22234780
Change-Id: Ie91ec59c3c3abb26fdf40466ea8173c78acb320f
2015-07-06 17:20:24 -07:00
Sunny Goyal 4d113a5ff4 Using material style overscroll effect for workspace and folders
Bug: 21335369
Change-Id: I53cc6edfa87334b9326f1dedd90c3e2222beade5
2015-06-19 19:53:34 +00:00
Winson Chung ef7f874a88 Refactoring all apps search to support external search bar.
- Adding support for an external search bar that can be used
  to search a container view.  This adds a new interface
  AllAppsSearchController which manages the external search
  bar.  Each controller will have its own search implementation
  which means that we no longer need a common AppSearchManager
  interface.
- Removing elevation controller as we no longer have a builtin
  search bar in all apps
- Refactoring container view insets so that they behave
  the same in all containers.
- Refactoring apps view to ensure that we only update the number
  of columns with the available width
- Cleaning up LauncherCallbacks interface

Bug: 20127840
Bug: 21494973

Change-Id: I710b8e18196961d77d8a29f0c345531d480936fe
2015-06-15 14:22:47 -07:00
Sunny Goyal 4f3e9383eb Code cleanup
> Removing obsolete logging
> Removing unused methods
> Removing resource leak warning due to non-static handler class in launcher

Change-Id: Ic38cc8aea82899b0b5ee3235f04e5964e49245fb
2015-06-05 00:34:06 -07:00
Sunny Goyal 0c9143d06b Preventing overdraw in custom content screen
> Assuming customcontent screen is opaque, setting scrim alpha to 0
when the screen is fully visible

Bug: 21584384
Change-Id: Ifa95a10d880532f59573090673e90a87c7edba9b
2015-06-04 16:31:21 -07:00
Winson Chung 8f1eff7b6c Adding context for app launches.
Bug: 21492784
Change-Id: I1b28ac8f44498e1d9770e770b074f19c721c3f10
2015-06-02 16:58:30 -07:00
Sunny Goyal 80aa3ec40f Merge "Fixing screen jumps when performing DnD in rtl mode" into ub-launcher3-burnaby 2015-05-29 22:03:10 +00:00
Sunny Goyal 2b7bf87bba Fixing screen jumps when performing DnD in rtl mode
Bug: 21445825
Change-Id: Ie43d24ce9c8c08dc2c4b3e24692d497760d8cd2d
2015-05-29 15:02:30 -07:00
Vadim Tryshev 8b80baec06 Merge "Fixing non-scrolling of workspace view after opening/closing AllApps vew. The reason for non-scrolling was excluding the pages view from the accessibility hierarchy by marking it as non-important. So, I just removed the code manipulating [non]importance of the PagedView." into ub-launcher3-burnaby 2015-05-28 21:42:16 +00:00
Vadim Tryshev 7af0d4474f Fixing non-scrolling of workspace view after opening/closing AllApps vew.
The reason for non-scrolling was excluding the pages view from the
accessibility hierarchy by marking it as non-important. So, I just
removed the code manipulating [non]importance of the PagedView.

However, this would make the PagesView accessibility-focusable, which is
undesirable. It becomes focusable because it supports long clicks in "normal"
mode. Since it doesn't support accessibility long clicks (i.e. Overview mode is
fetched NOT via accessibility long-click), I just disabled accessibility
long-clickability, which made PageView non-focusable, and it started to behave
correctly.

Bug: 21281859
Change-Id: I7ab01e5f39cb37c456c961199c27458c9bda1c3d
2015-05-28 14:33:36 -07:00
Sunny Goyal 58376925f9 Fixing page background not displayed when dragging from all apps
> Adding empty page synchronously, instead of waiting for a frame
> Changing launcher state from widgets screen in the same frame, similar to all apps
> Removing DragEnforcer, and moving that logic in side the workspace, disabled by a flag
> Using first page to get page bounds in drag layer, as last page may not have been measured

Change-Id: I172ba4e5ce44648ac55402d49994542c6e10f101
2015-05-27 17:50:35 -07:00