summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/util
Commit message (Collapse)AuthorAgeFilesLines
* Version code cleanupSunny Goyal2015-08-173-4/+6
| | | | | | | | > Renaming Lmp to Lollipop > Lollipop_MR1 instead of directly using 22 > Using M APIs directly instead of reflection Change-Id: I10a307f46e3be15b3299f549a2fd7e0e215a6a1b
* Prevent crash when flattening ComponentKey to string with invalid user.Winson Chung2015-07-301-2/+5
| | | | | Bug: 22658306 Change-Id: I213d44e0bb22ac0617d46c80ab8cfec8f750a2cc
* Fix issue with UiThreadReveal on L devicesAdam Cohen2015-07-151-4/+2
| | | | | | issue 22507784 Change-Id: If75292b21a1b572903099ab0682d5c7f69a960f4
* Using background outline provider as the final provider for reveal animationSunny Goyal2015-07-061-1/+5
| | | | | | | | > When two animations are running simultaneously, getOutlineProvider does not give the correct provider Bug: 22166935 Change-Id: I54c9bcd8cf42dd130949ea98e87c77389c02d00f
* Fixing backup restoreSunny Goyal2015-06-251-0/+70
| | | | | | | | | | | | | | | > Not deleting icons from cache, which have not been restored yet > Not checking if activity exists during DB migration. Missing components are removed during loader anyway > Backing up and restoring bitmaps even when iconType is resource. This allows us to show a proper bitmap icon, until the correct resource is available. > Loading proper shortcutResource icon for promiseIcons > Checking against promise intent when verifying duplicates > A launcher App intent can contain EXTRA_PROFILE Bug: 22094970 Change-Id: I982971338846733833ec133119393af0bea0eb08
* Using material style overscroll effect for workspace and foldersSunny Goyal2015-06-192-0/+384
| | | | | Bug: 21335369 Change-Id: I53cc6edfa87334b9326f1dedd90c3e2222beade5
* Moving predicted apps callbacks to use ComponentKey.Winson Chung2015-06-181-1/+31
| | | | | | Bug: 21270185 Change-Id: If2d9dd77235e7a96de96a1a5441a589ef8a72a7f
* Removing some synthetic method creationSunny Goyal2015-06-021-1/+1
| | | | | | > Make package-private and @Thunk all private methods and constructors accessed from inner classes. Change-Id: Ie5913860a0c33e48e9bf68f9b5b1699f64c2f174
* Make sure all transition components run on the same threadAdam Cohen2015-05-272-0/+104
| | | | | | | | | | | -> The framework circular reveal transition runs on the render thread which can cause problems when mixed in an AnimatorSet with transitions that don't run on the render thread -> See issue 17556455 issue 21445293 Change-Id: Ie19c184c55060651e817d426ec83049b06af56ba
* Refactoring DeviceProfileAdam Cohen2015-05-211-8/+7
| | | | | | | | | | | | | | | | | | | | -> 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
* Preventing homscreen getting filled with secondary user apps, when launcherSunny Goyal2015-05-151-22/+50
| | | | | | | | starts for the first time > Sorting the apps in the work folder by install time Change-Id: Ia475b4ff3197d90e6dffe070c12c0aa16be9e292
* Prevent work folder creation when launcher is upgraded.Sunny Goyal2015-05-121-0/+26
| | | | Change-Id: If7a91e0852dae1bf5dcf21e89c1771b5f37629f3
* Updating fling to delete animSunny Goyal2015-04-301-0/+104
| | | | Change-Id: I1c63e88b3e605113ea66afca9dcfbc30de1d4c8e
* Adding LongArrayMap as a replacement for HashMap<Long, E>Sunny Goyal2015-04-241-0/+65
| | | | Change-Id: I4710e6db69abcdbd897a8401fc8b980c09e2ffef
* Fixing folder focus logicSunny Goyal2015-04-161-43/+31
| | | | | | | | | | > Folder items no longer remain in a linear order when a folder gets rearranged, and se we need to use createSparseMatrix instead of createFullArray. Also because of this we need to use getChildAt(x, y) instead of getChildAt(index) > Removing traces of AppsCustomizePage (all apps) from FocusHelper Change-Id: I9007f6b95cb823e27ef4a43ce725fda8ef1b7cf8
* Merge "Focus handling - RTL support" into ub-launcher3-burnabyHyunyoung Song2015-04-141-9/+25
|\
| * Focus handling - RTL supportHyunyoung Song2015-04-131-9/+25
| | | | | | | | | | | | | | | | | | | | | | - Support LEFT and RIGHT keys to work across workspaces when in RTL mode. - Folder icons navigate correctly on DPAD_LEFT/RIGHT events - Folder navigation across pages also works correctly - Deleted dead code inside FocusHelper b/20120358 Change-Id: I7f851cb7ed31f666a91b2f856458d7966ea5f712
* | Automatically adding managed profile shortcuts to homescreen.Sunny Goyal2015-04-101-0/+277
|/ | | | | | | | | | | | When the managed profile is created, a "Work" folder is created and added to the homescreen. All work profile apps are added to this folder and icons for subsequent installs (withing a fixed time frame) are automatically added to this folder. If this folder get deleted or the time-frame expires, icon for any new install is placed on the homescreen. Bug: 17410319 Change-Id: I49f4e437707d5eabe4eec85320765bf6ba7fde97
* Removing all dependencies of launcher code on wallpaper-pickerSunny Goyal2015-03-201-0/+123
| | | | | | | > WallpaperPicker can still depend on launcher code, but not the other way round. Change-Id: I93a07f985c3955c638a68a5fad9c09b184a879b9
* Reducing method count by eliminating synthetic accessorsAdam Cohen2015-03-201-0/+43
| | | | | | | | | | | Elimates 304 methods based on dex analysis The java compiler generates sythetic accessor methods for all private fields, methods and contructors accessed from inner classes. By marking them package-private and @Thunk instead, sythentic accessor methods are no longer needeed. These annotated elements should be treated as private. Change-Id: Id0dc2c92733474250d8ff12fa793d3a8adeb1f26
* key event focus logic should support large tabletsHyunyoung Song2015-03-171-8/+5
| | | | | | | | | | | TL;DR;; On smaller tablets, landscape = vertical hotseat bar, and portrait = horizontal hotseat bar. However, in larger tablets, hotseat bar is always horizontal. This is now correctly handled using DeviceProfile.isVerticalBar method. b/19732584 Change-Id: I1035c89b4685be12dbc863f8a1465047a5fec6a6
* Extracting out CacheKey to a separate classSunny Goyal2015-03-161-0/+51
| | | | Change-Id: Ifdd7cc79668b34298e3f788ee684080cecb86c3e
* [key event focus] DPAD navigates to the nearest item on next/previous pageHyunyoung Song2015-03-031-10/+84
| | | | | | | | | | | | | | | | b/19381790 b/16351792 TL;DR;; Previously, when RIGHT is handled on the right most column of the current page or when LEFT is handled on the left most column, the next icon of focus is next page 'first' icon or the previous page 'last icon'. With this change, the row information is preserved when trying to locate an icon to give focus in the next/previous page. Next CL: long awaited unit tests that capture corner cases for different orientation/ device configuration. Change-Id: I5278bed45275b3e4cb39fb698df35f90bb45a415
* [key event focus handling] (1)hotseat <-> icon now symmetric, (2)support DEL ↵Hyunyoung Song2015-02-241-23/+22
| | | | | | | | | | | | | | | | | | | keycode TL;DR; (1) Key event navigation from and to the hotseat and icons in the workspace is now symmetric. Since there is one more icon in the hotseat, only left N-1 icon navigation was symmetric. (2) KeyEvent.KEYCODE_DEL and KeyEvent.KEYCODE_FORWARD_DEL can now delete icons from the workspace. The focus move to the previous icon where the focus traveled from. Also contains minor styling and indexing issues. Bug: 15408321 Bug: 19381790 Change-Id: I16cbcb2693e92eebb830997d01c0bf674073dd51
* [key event focus handling] Cleanup/Refactor/FeatureHyunyoung Song2015-02-201-0/+434
1) Focus navigation handling is refactored to Focus utility class. New 2 step dpad navigation algorithm is inside Focus class 2) Introduced a map (or matrix) that indicates where sparse icons are located inside a grid. This enables getting rid of the icon sorting logic which was costly. 3) Unified all the dpad handling logic inside the handleXXKeyEvent methods 4) DOWN/UP key will allow navigation between workspace icons and the hotseat 5) Folder icons allow DOWN/UP to navigate to the title b/19381790 Change-Id: Id45b3f215ef7c1ca5f99b08e3d721e219298627a