Commit Graph

31 Commits

Author SHA1 Message Date
Sunny Goyal
a5c8a9eb66 Adding logic to pull in workspace data from another Launcher3 based
provider. This allows OEMs to keep the user's homescreen intact while
changing the default home app package.

Bug: 28536314
Change-Id: Ibebfd7dd33aa2cbd9ca28d2d611dd0a4a5971444
2016-07-09 16:19:26 -07:00
Sunny Goyal
ae50284e0a Moving LauncherAccessibilityDelegate to Launcher to associate it with
activity lifecycle.

Change-Id: Ib815505677fa7ed74bdcfe7141b1d9bea5d7143a
2016-06-17 08:44:51 -07:00
Sunny Goyal
da4fe1a624 Moving the QSB to the workspace grid.
The QSB will only be resent on the first screen of the workspace
covering the full width of the first row. If will not be movable.
The first screen of the workspace will not be movable.
The searchDropTargetBar no longer contains the QSB (it can be
renamed in aseparate cl).

Refactoring all QSB related logic by moving it to a custom view
inflated only using xml.
Change-Id: Icb4fd6eb855df1af15f685961c38351bf4fd4f4a
2016-05-27 18:23:29 -07:00
Sunny Goyal
ea98f5288b Fixing bug where the widget background enters into a focused state
if a child calls requestFocus in xml

Bug: 28562293
Change-Id: I005e23550184de29fa15eb70ab322615920b8947
2016-05-04 16:11:40 -07:00
Sunny Goyal
16466f1bbb Adding UI tests for various bind widget flows
Change-Id: I634302051886baee6b6424f69bc95db860b4823e
2016-03-15 15:34:25 -07:00
Sunny Goyal
8ddb390914 Merge "Making some view properties exported. These will be visible in hierarchy viewer" into ub-launcher3-calgary 2016-02-11 22:08:45 +00:00
Tony Wickham
654f1b315f Merge "Change widget host view background when giving focus to child." into ub-launcher3-burnaby-polish
am: 4df1653331

* commit '4df165333131483e1d6b6c156d345a4aeef9806c':
  Change widget host view background when giving focus to child.
2016-02-10 23:36:42 +00:00
Tony Wickham
fb78856466 Change widget host view background when giving focus to child.
Before, the FocusIndicatorView stayed on the widget host unless the
widget had its own focus change listener, which caused a couple of
problems, namely  (1) it was hard to know where the focus was from
a user's standpoint, and (2) the focus indicator could get stuck on
the screen if you entered a widget and then long-pressed workspace.
Now, the focus indicator goes away and instead the widget is framed
with a white border to indicate that the focus is inside it. The
frame goes away when pressing ESC or when touching the screen.

Bug: 26744224

Change-Id: I14025576fd7a9f901b4d969b878af0bebad79a70
2016-02-10 15:28:18 -08:00
Sunny Goyal
4ffec48dec Making some view properties exported.
These will be visible in hierarchy viewer

Change-Id: I940724a7f61d67b8502d77be203a94875bc92668
2016-02-09 11:29:34 -08:00
Sunny Goyal
ccf3a9ed56 Preventing a Runtime widget crash from crashing the Launcher
am: 3fc648d3b7

* commit '3fc648d3b792f63d3b99509300a602d23c842433':
  Preventing a Runtime widget crash from crashing the Launcher
2016-01-26 20:02:13 +00:00
Sunny Goyal
3fc648d3b7 Preventing a Runtime widget crash from crashing the Launcher
Bug: 26750103
Change-Id: I31f120bb0c4d64b903b3dd5dae0ae46f95bcdf59
2016-01-25 17:30:25 -08:00
Sunny Goyal
4740e6ce15 Merge "Keeping the focus indicator on the widget view, while a child is focused" into ub-launcher3-burnaby-polish
am: 093a58cc77

* commit '093a58cc776be2a3cd5aed9d14df9c78a35af052':
  Keeping the focus indicator on the widget view, while a child is focused
2015-12-01 23:36:37 +00:00
Sunny Goyal
0c4e37223f Keeping the focus indicator on the widget view, while a child is focused
Bug: 25199581
Change-Id: Ie08d1438ae0c1b5d4fcaa4d642508c1b9db0f5d4
2015-12-01 14:38:14 -08:00
Sunny Goyal
b23bb416d0 Merge "Allowing widgets to be focusable" into ub-launcher3-burnaby-polish
am: d007d0722c

* commit 'd007d0722c782266f494806e750c24208d6d3ca5':
  Allowing widgets to be focusable
2015-11-25 18:15:56 +00:00
Sunny Goyal
25c2e3ef07 Allowing widgets to be focusable
> Pressing 'enter' enters the focus inside the widget.
> If the widget has only one focusable, it directly performs click
> Pressing 'esc' brings the focus back to the parent host.

Bug: 25199581
Change-Id: Ia7fd5d929f5945d61173abd349660a5efbe74afc
2015-10-30 10:03:45 -07:00
Mady Mellor
bb83520a62 Refactor StylusEventHelper to provide onButtonPress/Release methods
This will enable an easier migration to the new M APIs for identifying
button presses from stylus / other tools.

Bug: 20430722
Change-Id: I41cfa6eff8d76bb83cf1bdaf6623ec1092ed554c
2015-08-21 11:18:14 -07:00
Vadim Tryshev
fedca43d39 Moving drag-drop related code into a separate package.
This is per an earlier CR comment "we should probably move all this code to its own package (launcher3.dragndrop) in a separate cl".

I'm not moving DragSource because it's referred from gsa code.

Bug: 22609426
Change-Id: Ia7204dab99c0c395c66b77143a2d60411153f5f3
2015-08-20 07:45:57 -07:00
Mady Mellor
770f7c5907 Stylus support: handling drag n drop for widgets
This alters the widget host view code to consider stylus button presses
allowing the user to pick up widgets with a stylus button press, and drop
them by releasing the button.

Bug: 20430722
Change-Id: I359f72bd80016f4b313aab1325cc92d7c6fd2a8c
2015-06-02 15:02:36 -07:00
Adam Cohen
2e6da1539b Refactoring DeviceProfile
-> Pulling out the parts of device profile which can (and need to be)
   initialized and accessed without access to an Activity context,
   ie. the invariant bits.
-> The invariant bits are stored in InvariantDeviceProfile which is
   initialized statically from LauncherAppState.
-> The DeviceProfile contains the Activity context-dependent bits,
   and we will create one of these for each Activity instance, and
   this instance is accessed through the Launcher activity.
-> It's possible that we can continue to refactor this such that
   all appropriate dimensions can be computed without an Activity
   context (by only specifying orientation). This would be an
   extension of this CL and allow us to know exactly how launcher
   will look in both orientations from any context.

Sets the stage for some improvements around b/19514688

Change-Id: Ia7daccf14d8ca2b9cb340b8780b684769e9f1892
2015-05-21 16:16:40 -07:00
Sunny Goyal
2434d40ef2 Fixing crash when dragging and dropping a restored widget.
> When the widget is in pending state, AppWidgetProviderInfo is not available

Bug: 19364311
Change-Id: If3126a375853e6e710c6eba4b8824e18f3f0d391
2015-02-17 12:00:30 -08:00
Sunny Goyal
71b5c0b988 Adding accessibility controls
> Adding 'Remove' option to workspace items
> Adding 'Add to workspace' to all apps and widget list items, which
adds the item to the first available space, giving preference to
the current workspace screen
> Adding 'App info' and 'Uninstall' options to appropriate items

Bug: 18482913
Change-Id: Ifab7423af2d9ba502b5a2771b37bb5436b3df937
2015-01-16 17:40:41 -08:00
Adam Cohen
5940042d39 Supporting custom widgets provided by launcher
-> This change provides integration for widgets provided by
   the launcher package which can run arbitrary code.

Change-Id: I6052da5c4afed7ee72e3b44d045b9c46f2d84c42
2014-12-05 16:18:41 -08:00
Sunny Goyal
ff57227711 Adding support to restore widgets even for jelly beans.
> Show 'widget-not-ready' until the widget app is installed
> Once the app is installed, bind a new widget id (not required on L if
  id-remap was received).
  **Remove the widget if bind failed
> If the widget has no configuration screen, show the widget, otherwise
  show 'setup-widget'.
> Clicking 'setup-widget' shows the config screen, and updates the
  widget on RESULT_OK.

issue: 10779035

Change-Id: I2f8b06d09dd6acbc498cdd93edc59c26e5ce17af
2014-08-08 14:29:02 -07:00
Sunny Goyal
651077bdd6 Adding app widget restore support in Launcher3 for android L
When the app is restored, it displays placeholders for all pending widgets.
These placeholders can be moved and removed similar to a widget (size is fixed
to what defined in backup). Once the system notifies the launcher of the new
widget ids, the place holders are replaced with actual widgets.

issue: 10779035

Change-Id: I68cbe4da01e9ca2978cb4471a7c645d2aa592055
2014-07-21 10:34:21 -07:00
Jason Monk
02dd7aea3d Fix long press after already moving off icon
When an icon is in the Hotseat and a user drags off from the icon,
but continues holding down, the icon gets a long press triggered
by the CheckLongPressHelper.

To fix this a check has been added on move events to see if the
point has moved outside the view and to cancel the long press
check callback if it has.

Bug: 13569451
Change-Id: Id175cdc220d70b5e9f8e492ed5a3cc7c3f11db10
2014-04-22 10:27:01 -04:00
Adam Cohen
3798b643cd Fix issue where you could trigger a click after long pressing a widget (issue 11186227)
Change-Id: I5a767ac6352f7efb4d3c6c2768c8d2aaaa913f3f
2013-10-16 10:41:10 -07:00
Adam Cohen
b0f3d74815 Fix widget longpress issue where longpress misfires (issue 10988288)
Change-Id: Ibe4aa4d92a1b419b63ff3cf61164c637fb579221
2013-10-08 19:17:12 -07:00
Michael Jurka
26acafbe67 Fix crash when setting wallpaper
Also clean up some unused code

Change-Id: Ibef8d3d594cc859a993640fd6ee578e9eeb633d1
2013-09-05 21:52:14 +02:00
Winson Chung
5f8afe6280 Initial Changes for Dynamic Grid
Change-Id: I9e6f1e5167791cf8dc140778dfa447f86424e9bf
2013-08-20 10:56:05 -07:00
Winson Chung
e7a852ef15 Cancelling long press on widgets if they don't handle touch/tap.
Change-Id: Id5f002f64d02d8d5fb9bdda8b062a026decbe0e2
2013-08-16 11:10:59 -07:00
Daniel Sandler
325dc23624 Launcher2 is now Launcher3.
Changes include
  - moving from com.android.launcher{,2} to
    com.android.launcher3
  - removing wallpapers
  - new temporary icon

Change-Id: I1eabd06059e94a8f3bdf6b620777bd1d2b7c212b
2013-06-05 23:30:20 -04:00