Commit Graph

734 Commits

Author SHA1 Message Date
Adam Cohen 79d90c558f Define a set of methods on Launcher which can be safely called externally
-> The methods are defined by an interface, LauncherExterns, which Launcher
   implements

Change-Id: I61362761f5d90fbc3011ce000944768d5ab29d43
2016-04-26 11:53:43 -07:00
Sunny Goyal 1ed6c4adde Showing a toast when changing wallaper is disabled
Bug: 27940102
Change-Id: I373093d9b85dca356aaa8798931d5315981fd74c
(cherry picked from commit 2afb636180)
2016-04-21 23:12:50 +00:00
Hyunyoung Song aa95365427 Refactor UserEventDispatcher (1/2)
b/28269657

Change-Id: I1083e6f73f42ac1986428a39c6b532050e595ac6
2016-04-19 18:30:24 -07:00
Sunny Goyal 46ab2276f9 Removing Launcher broadcast support from Launcher3
Change-Id: Ibaf5fe1465d3858b060fc2958194cf60f22a11db
2016-04-15 13:02:04 -07:00
Sunny Goyal 534058492f Removing some deprecated callbacks
Change-Id: I3361383fe19faa64d862bbf879edb8c09937dc6f
2016-04-14 12:30:40 -07:00
Sunny Goyal 53b7ce18f4 Removing first launcher broadcast
Change-Id: I225205a219cf2e0f27bb3c78cbdad1a3429d466f
2016-04-14 11:25:56 -07:00
Hyunyoung Song ddec1c739e Refactor UserEventLogging, Add predictedRank, replace Bundle with Proto
b/26494415
- Removed bundle object that became redundant now that we have LauncherEvent proto
- Combined Stats and UserEventLogger as they are effectively doing same thing
- Removed parent field inside Target
- added predictedRank target inside Target

b/27967359
- make com.android.launcher3.action.LAUNCH broadcast explicit
Later CL: finish packageName/intent/componentHash/predictedRank fields

Change-Id: I441fb46c834f73e58a4d2324e8da7971e8713ec8
2016-04-13 10:58:33 -07:00
Sunny Goyal 30a716157b Removing WallpaperPicker from Launcher3
Launcher3 will no longer include a wallpaper picker.
Eventually it will just point to the system wallpaper settings where
user can choose from all the installed pickers

Change-Id: Ib5832fa7e451610acd4b2d34ee48fe36e3699d26
2016-04-12 17:59:16 -07:00
Adam Cohen 37b2a496eb Remove special code path for not animating folder open in power save mode
-> framework takes care of this
-> stripped unused code

Change-Id: If1941447df5c3145db715971440b80bd754f0bb1
2016-04-08 16:25:08 -07:00
Sunny Goyal 23ac9cb3e1 Calling start/stop listening in onStart/onStop
AppWidgetHost in N was changed to make start/stop lisenting calls
light weight, which allows launcher to avoid getting unnecessary
updates when its not visible

Bug: 23892701
Change-Id: I0ca6e02400992bc4e0359e45a3d66b9252751402
2016-04-07 12:17:18 -07:00
Sunny Goyal c52ba71005 Fixing folder icon not getting redrawn when the contents change
> Removing parent from ItemOperator as inconsistant values were
being passed in workspace and folderPagedView
> Fixing itemChanged causing multiple redraws, by passing a
'animate' parameter to explicitely request animation

Bug:27740161
Bug:28015426

Change-Id: Ide7b266bde9aad5f450a3f808a59182fe01a5110
2016-04-06 12:46:36 -07:00
Tony Wickham e316a7fa4b Merge "Disable pinch gesture when accessibility is enabled." into ub-launcher3-calgary 2016-04-06 19:36:01 +00:00
Tony Wickham e22172537b Disable pinch gesture when accessibility is enabled.
Bug: 27676309
Change-Id: Iba0f04693c494f258ef21d740ee933f9c32a7674
2016-04-06 11:52:42 -07:00
Sunny Goyal 44c06437e2 Fixing bug where folders on the first screen and hotseat are not
registered by the Launcher if there are folders on other screens

Instead of maintaing a static map of folder items, searching it
in the workspace during item removal.

Change-Id: I8aa93b3aa1d0bd812204471e3103f4bd29d1cd3d
2016-04-02 11:00:56 -07:00
Sunny Goyal 19c5c5765d Fixing white background under hotseat
Change-Id: I8b39bc9104dc16981e5642124cfd819da7a2f172
2016-04-02 10:28:22 -07:00
Tony Wickham 6ed21eebb4 Merge "Added ColorExtractionService and ExtractedColors." into ub-launcher3-calgary 2016-04-01 22:44:58 +00:00
Tony Wickham 827cef203f Added ColorExtractionService and ExtractedColors.
- Launcher has an instance of ExtractedColors, which is loaded from
  LauncherProvider in onCreate() and whenever the wallpaper changes.
  - When the wallpaper changes, the ColorExtractionService is started
    in the :wallpaper-chooser process.
  - ColorExtractionService builds an ExtractedColors instance and saves
    it as a String in LauncherProvider.
  - When the results are saved, Launcher gets a callback through
    LauncherProviderChangeListener and reloads the ExtractedColors.
- Whenever Launcher loads Extractecolors, it also re-colors items
  (currently a no-op).

Change-Id: I319e2cfe0a86abcbc6bb39ef6b9fbbcad54ad743
2016-04-01 15:40:57 -07:00
Sunny Goyal 93f878c168 Fixing the loader to bind the first screen as well as the hotseat together
When the loader ran for the first time (or when called due to force-reload),
it was binding with page = -1 (invalid pageId is -1001). This was causing loader
to assume the workspace to be on a valid screen, and causing the loader to
only bind the hotseat first.

Bug: 27705838
Change-Id: Ia8eb2543d8cee1268256b2d6bccf33828937c54a
2016-03-30 18:24:07 -07:00
Sunny Goyal 784f9c3996 Setting stable layout flags on the launcher, so that the instets do not
change for launcher when going in/out of another app

Bug: 27600678
Change-Id: Ic873faba99c539025769d911bc7b0a4fed629cd7
2016-03-23 16:56:54 -07:00
Sunny Goyal d5bd67dfa9 Adding support for result callback when starting uninstall-application activity
Change-Id: Ieaca4fbd0ae0156f24c8863ccbef61d4d6d30ba1
2016-03-22 13:57:58 -07:00
Sunny Goyal ef0ac88e0b Merge "Removing dependency on wallpaper size settings from launcher" into ub-launcher3-calgary 2016-03-21 18:32:41 +00:00
Sunny Goyal 3bbbabc54a Fixing model being updated on UI thread
> When package gets unavailable or suspended, the disabled flag was getting
updated on the UI thread. This could lead to inconsistent model if launcher
activity didn't exist.
> Fixing: When unsuspending one work profile apps, all work profile apps get
unsuspended

Bug: 27673573,27673373,27403236
Change-Id: I7fde3f79c36204e73ca66ccf8431fa0f0cce3d08
2016-03-18 15:13:28 -07:00
Sunny Goyal 6f866095c0 Removing dependency on wallpaper size settings from launcher
> Moving wallpaper desired width calculation to xml

Bug: 14470153
Change-Id: I8803af158861507a40e5d55e9aa6d515be47eefa
2016-03-17 17:04:37 -07:00
Sunny Goyal 05c8c57fa7 Removing dependency on LauncherCallbacks for getting the search bounds
> Instead of handling insets in BaseContainerView, directly applying
  them to margins, as that scpace can't be used for scroll handling
> Appliying the top and bottom padding in xml
> The left & right padding is defied in xml which is reused for scroll
  handling

Bug: 27108154
Change-Id: Ia32e6d5e8fd1bfafb1d77d1244ce2268e4da9df9
2016-03-17 11:57:39 -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 44d0b5355d Closing folder in onSaveInstanceState
folderInfo.isOpened is part of static model, where is the open folder
state is part of the UI. This resets the static model, when the
UI is about to be reset
This also causes the folders to get closed when launcher gets hidden

Partial revert of: Ie1318b82b497957b99603b11ec338dd50d51b962

Bug: 27596291, 24900496, 27624924
Change-Id: I30c2bb99a19fdd95a1b997d07066f80be812e2c0
2016-03-15 09:44:49 -07:00
Sunny Goyal d856074d90 Merge "Changing the widget loading strategy" into ub-launcher3-calgary 2016-03-10 04:22:37 +00:00
Sunny Goyal 2e1efb480a Changing the widget loading strategy
Widget is loaded only when the user enters the overview mode and we keep
the list updated as long as the user is in the overview mode. Once the user
leaves the overview mode, we stop responding to widget updates

Bug: 26077457
Change-Id: I9e4904b8f1300bfe0d77e2bc5f59aa6963fad8d1
2016-03-09 20:21:22 -08:00
Hyunyoung Song 8fd5e938d3 Add getUserEventLogger to LauncherCallbacks
b/26494415

Change-Id: I8abaaf1269c12435a523e31bf769991018ea5c02
2016-03-08 16:55:47 -08:00
Tony Wickham dadb304b46 Pinch to zoom out into overview mode.
There are 3 classes coordinating the gesture: PinchToOverviewListener,
PinchThresholdManager, and PinchAnimationManager.
- PTOL listens for the pinch gesture on DragLayer.
- When a pinch is detected, the PTOL keeps track of the interpolated
  progress and passes it along to both the PTM and PAM.
- The PTM uses the progress to determine whether a new threshold has
  been passed, and tells the PAM to animate it if so.
- The PAM uses the progress to animate things like workspace scale
  throughout the pinch.
- If the pinch ends early, the PTOL uses the last passed threshold to
  determine whether to animate to workspace or overview, and tells
  PAM to perform the animation at the same velocity as the pinch.

Bug: 24414635
Change-Id: I9e53706c705f8b2982409bf7c223d8d0e9618bf0
2016-03-04 16:52:54 -08:00
Adam Cohen efca0279eb Switch all folder preview rendering to be programmatic (ie. no assets)
-> Refactored the preview background rendering to be much more self-contained.
   This cleans up a lot of code in the CellLayout, and keeps the logic in the
   right place.
-> We switch to software rendering for performance and compatibility reasons.
-> Removed all assets.
-> FolderIcon accept animation includes animation of the clipped region.
-> 1:1 hand-off of drawing of the FolderIcon background between the FolderIcon
   and the CellLayout. Unfortunately, CellLayout rendering is still required
   to work around clipping issues (due to use of software layer). We also
   need this to support folder creation feedback.

Change-Id: Ib8f7fa6359dfedff8145f38dd50ba03849ca0d51
2016-03-03 09:24:45 -08:00
Sunny Goyal 6646016ff5 Merge "Adding overlay interaction support" into ub-launcher3-calgary 2016-02-26 03:57:11 +00:00
Sunny Goyal 38138ddcca Merge "Removign optimations in onDestroy" into ub-launcher3-calgary 2016-02-25 18:01:37 +00:00
Sunny Goyal c86df470ab Adding overlay interaction support
> Sending unboundX to the overlay which is the total untranslated X and not just deltaX from last frame
> Handling overlay callback and translating workspace accordingly

Change-Id: I3bd8d9efac738e9ce131758f0e5ff1b9c1d6a8fc
2016-02-25 10:01:13 -08:00
Sunny Goyal bc545eefc5 Merge "Preserving the homescreen rotation setting on a tablet, when the display is scaled" into ub-launcher3-calgary 2016-02-25 04:15:14 +00:00
Adam Cohen 4f8071b759 Cleaning up folder icon drawing
-> Tracking individual drawing parms for each item
-> This enables animation of the preview items as the preview changes

Change-Id: I1b8f650cb28dc09cfb921bbdc93f2a3db61178fd
2016-02-24 18:20:40 -08:00
Sunny Goyal 8f3819bc51 Preserving the homescreen rotation setting on a tablet, when the display is scaled
Bug: 27040652
Change-Id: I07f5e02443379ac5b877f72d33cedf4f2feca926
2016-02-23 14:50:27 -08:00
Sunny Goyal 32554d1c61 Cleaning up the overlay interface
Removing some unnecessary and unused methods

Bug: 25993953
Change-Id: I4d715cdee04eb7b0ebef673d885a4258c521ff1f
2016-02-23 12:06:16 -08:00
Sunny Goyal 261194387b Revert "Reverting refactoring of Folder and FolderIcon to avoid dependencies breakage"
This reverts commit fc956e5a2a.

Change-Id: Ib3b5156b8fc3cad35c4634d61d5390c848ce1f93
2016-02-23 02:02:54 +00:00
Hyunyoung Song fbf19cccd2 <UserEventLogging> Log app launches
b/26494415

1) Current Logger can capture taps from
- homescreen
- folder inside homescreen
- apps prediction
- all apps a-z
- tap from hotseat
2) Deprecate LauncherCallback methods that is no longer needed

Future CL.
3) Stats and Logger will be merged. Bundle used for Stats can be
replaced with LauncherLogProto
4) Logging anything else other than app launches

Change-Id: Id52eb615f66142017b5c490a220ce6654d325681
2016-02-19 12:55:53 -08:00
Sunny Goyal b347535cb0 Merge "Deleting the WallpaperPicker code inside launcher. Instead linking it to the packages/apps/WallpaperPicker project" into ub-launcher3-calgary 2016-02-19 18:08:52 +00:00
Sunny Goyal 4759760bc9 Removing LauncherCallbacks control over app search
am: c42ac0a5a6

* commit 'c42ac0a5a6f0a4e41a9fc1b694f841204ae1989c':
  Removing LauncherCallbacks control over app search
2016-02-18 23:50:51 +00:00
Sunny Goyal c42ac0a5a6 Removing LauncherCallbacks control over app search
Change-Id: Icb199607dea3f169055e44946272aa9f1e758d1d
2016-02-18 15:32:27 -08:00
Sunny Goyal bd822508e5 Deleting the WallpaperPicker code inside launcher.
Instead linking it to the packages/apps/WallpaperPicker project

Change-Id: Ib6830b180a22c22afece01e0a4f6e94e89d6452b
2016-02-18 15:09:21 -08:00
Sunny Goyal ecd365293f resolve merge conflicts of 2953833bcb to ub-launcher3-calgary
Change-Id: Ia7fc406d1e287974e87979af9a4b1f5f1e4e23d9
2016-02-18 10:23:18 -08:00
Sunny Goyal 2953833bcb Adding a utility method to iterate over folder contents
Change-Id: I9f17ade7dc06819587290387b811d828da57b2fb
2016-02-18 09:10:19 -08:00
Sunny Goyal f63c46bf5e Merge "Revert "Temporarily disabling custom search controller"" into ub-launcher3-calgary 2016-02-18 16:55:48 +00:00
Sunny Goyal f51084c296 Revert "Temporarily disabling custom search controller"
This reverts commit 954b7d36b9.

Change-Id: If304fa164e50f68aac168ede0f4bc0ff97659a8a
2016-02-18 00:40:49 +00:00
Sunny Goyal fc956e5a2a Reverting refactoring of Folder and FolderIcon to avoid dependencies breakage
Change-Id: Ifd0d717d70aff4c83c9eb5cba397d04500b2c869
2016-02-17 13:27:13 -08:00
Adam Cohen f9c184a619 Refactor FolderIcon to separate the preview effect into it's own class
-> Created com.android.launcher3.folder package to house most folder-related files
   (aside from the FolderInfo) which is more related to the model than the UI.

Change-Id: I767063e1e4c775c01a799a3bede30cd94ac48ade
2016-02-12 17:28:31 -08:00