Commit Graph

68 Commits

Author SHA1 Message Date
Sunny Goyal
5606e07059 Removing long press support from page-indicator
Bug: 62445549
Bug: 38163974
Change-Id: Ic0ae44ded7e4755c5401f327ce0d98a9ea96b2ab
2017-06-15 14:25:12 -07:00
Mario Bertschler
48198d004a All Apps transition with gradient and scrim.
The transition is behind a feature flag and
turned off by default.

Change-Id: I155840ba82b5a573d874376797db5f739a52d706
2017-05-03 10:32:57 -07:00
Sunny Goyal
5e7b238a93 Updating color extraction to include wallpaper theme color.
Also adding mathods and callbacks to pass the related data to the callbacks.

Bug: 37616877
Change-Id: I7512cac7a603e8e5a05ec3a360c9eec493344b00
2017-04-26 08:42:05 -07:00
Sunny Goyal
1f3f07d47c Simplifying some launcher themes
> Replacing some colors with theme attributes
> Simplifying styles definition by removing unnecessary inheritance and inlining some definitions

Change-Id: Ifa167515cae6a7fd3720f1a52ff9ce11abb4495f
2017-02-16 15:24:37 -08:00
Sunny Goyal
6c46a6d324 Using java_style enum generation for proto
This makes it easier to track various method parameters and simplifies
debug logging

Change-Id: Ib7c3d52590d0c36b2c8460c889ee3bead3454569
2016-12-15 09:30:35 -08:00
Tony Wickham
cf160d392a Merge "Allow long-press on workspace immediately after dropping." into ub-launcher3-master 2016-12-12 21:03:24 +00:00
Tony Wickham
0c7852f822 Allow long-press on workspace immediately after dropping.
Previously the touch was consumed until the transition from
spring-loaded to normal workspace finished, leading long
presses to trigger on the background rather than on apps.
This made it difficult to move multiple icons consecutively.

Bug: 29631912
Change-Id: I259e618c81f56bc40d08a5d63ddbbf3c82a76baf
2016-12-12 12:51:27 -08:00
Sunny Goyal
776ca257ce Merge "Defining various modes for CellLayout: Workspace, Hotseat & Folder" into ub-launcher3-master 2016-12-12 20:45:17 +00:00
Sunny Goyal
55cb70bf70 Adding an overridable DrawableFactory to allow creating custom icon drawables
> Adding ItemInfo as a parameter for creating drawable

Change-Id: I793acb0381d2b8df4db0a08317dddf1464788ebc
2016-12-07 15:55:47 -08:00
Sunny Goyal
c13403c612 Defining various modes for CellLayout: Workspace, Hotseat & Folder
> Moving the definition of modes to xml
> Defining attributes in xml

Change-Id: I7a569fdbeb833d569eeeef2f2cbc8214e608ad11
2016-11-21 15:20:16 +05:30
Tony Wickham
6982de2485 resolve merge conflicts of 2fd0208 to ub-launcher3-master
Change-Id: I20ad6eaace81786be080e28d6eb551908add6d90
2016-10-12 14:38:43 -07:00
Tony
2fd0208605 Use Launcher.getLauncher(Context) instead of type-casting.
Bug: 32010039
Change-Id: Icb80d3e547a706740b84df2cb80f99e4a7f81c43
2016-10-07 12:50:01 -07:00
Hyunyoung Song
df7ef68bbf Refactors in UserEventDispatcher
- LaunchSource -> LogContainer

Change-Id: I71bfee992fb1ba7ae80e824d419f7bf8d3020999
2016-10-06 17:52:22 -07:00
Jon Miranda
488d8adeb8 Use ContextCompat.getColor to support API levels below 23.
Found while debugging on Lollipop.

Change-Id: Ibe97fd30c4ee8cd0c1735a41802b859345f9e931
2016-09-15 15:05:12 -07:00
Tony Wickham
5f2ea1e9ce Cancel hotseat color animator before setting a new color.
am: ef0c537925

Change-Id: I1aea3e288d7e54e788ad95b8599e6d909458b220
2016-08-22 23:23:09 +00:00
Tony Wickham
ef0c537925 Cancel hotseat color animator before setting a new color.
There was a race condition that caused the new color to not be
applied. For example, here's how the hotseat would become transparent:
1 Launcher is loaded for the first time; as such, there is not yet a
  color defined for the hotseat, so we start animating to the provided
  default (Color.TRANSPARENT). Meanwhile we start the color extraction.
2 When the color extraction finishes, we set the hotseat to the new
  color. However, if launcher is paused at the time (perhaps some
  retail mode content is showing), then we don't animate the change.
3 If 2 happens before the animation in 1 is complete, the color from
  2 will be overriden by subsequent animation frames and thus the
  hotseat remains transparent until the wallpaper changes.

Bug: 30956221
Change-Id: Iddf72379b0162f1b32883ad26ce267473e172849
2016-08-22 15:23:01 -07:00
Sunny Goyal
4583d09c05 Fixing broken accessibility drag
> Allow touch events on hotseat while in accessible drag as drag now
happens in spring loaded state.
> Allow drop target buttons to ignore thershold check when in
accessibility drag

Bug: 30900444
Change-Id: I88274367983fc027b2ddde3a719ca943f4f48587
2016-08-17 11:24:10 -07:00
Hyunyoung Song
5a17fe6ca0 [DO NOT MERGE] Set launch source target correctly for user event logging
Before, everything is set to APP_ICON
With this changed, pinned shortcuts are set to DEEPSHORTCUT

Change-Id: I3e17de63f58693525236290ef5cb1f909f1d6098
(cherry picked from commit 8ce6063c4a)
2016-08-16 00:40:26 +00:00
Hyunyoung Song
8ce6063c4a Set launch source target correctly for user event logging
Before, everything is set to APP_ICON
With this changed, pinned shortcuts are set to DEEPSHORTCUT

Change-Id: I3e17de63f58693525236290ef5cb1f909f1d6098
2016-08-15 16:22:20 -07:00
Winson
1f06427266 Initial changes to tweak layout.
- Adding DeviceProfile callback for when the launcher layout changes due
  to insets.  This is necessary since there are now different layouts
  depending on which side the navigation bar is on
- Consolidating hotseat and other layout into the device profile 
  launcher layout logic
- Making the all apps icons match the workspace icon height
- Tweaking caret drawable to draw to the bounds specified to simplify
  layout in each orientation
- Fixing minor issue with page indicator shifting in landscape
- Centering overview buttons to the workspace page

Bug: 30021487
Change-Id: I1866bce00b2948f3edd06168c0f88d81207e3f13
2016-07-20 10:17:08 -07:00
Hyunyoung Song
e4be3b3fdb Support gray hotseat background in all apps transition
b/30201515

Change-Id: Ie4b8442ac804b4df94e9673608129e6ffc0c3360
2016-07-18 16:35:10 -07:00
Hyunyoung Song
45eb757ea7 Remove relayouts
b/29945805

> Workspace relayout occurs when window flag is set to
change the status bar. This should not cause AllAppsTransitionController
to be initialized.
> Setting/Unsetting background drawables on the hotseat
also causes unnecessary layout. Fix this issue.

Change-Id: I73a3bfd3eb4bc34cf6760ffbd9826e3fef867056
2016-07-01 18:04:07 -07:00
Hyunyoung Song
f7e5e374fe Prevent all apps transition NPE
b/29643291
b/29642263

> Also do not change status bar when landscape mode

Change-Id: I1e44af8e031856a50a7413ad297c437245e8b2aa
2016-06-28 12:27:41 -07:00
Hyunyoung Song
a0c5647f52 Fixing a crash on APPS->WORKSPACE transition when animation is automated without dragging.
b/29424335

Change-Id: I2b109423b5a4cfc94fcda75fdea936785373968f
2016-06-20 13:54:42 -07:00
Sunny Goyal
bb011dad4e Adding a flag (enabled by default) to remove the all-apps button.
All apps can still be opened by clicking the caret.

Bug: 29398447
Change-Id: I61f1b05cea83a0a49d7cc16c518c5419618ba779
2016-06-17 08:17:22 -07:00
Tony Wickham
462b5cca7b Extract color for the hotseat.
- Only considers the bottom fourth of the wallpaper
- Is translucent black or white depending on how dark/light
  the wallpaper is
- Hotseat extends behind the nav bar

Bug: 27230217
Change-Id: Id4ea6ee91b4dd221b4c277d22d5041cab178801d
2016-05-09 15:41:38 -07:00
Hyunyoung Song
aa95365427 Refactor UserEventDispatcher (1/2)
b/28269657

Change-Id: I1083e6f73f42ac1986428a39c6b532050e595ac6
2016-04-19 18:30:24 -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
Tony Wickham
95cdb3a021 Remove scrim on highlighted spring-loaded panel.
Bug: 27135377
Change-Id: I470955ed082a45ae7dc5f8fdd1f3decb2b573dbc
2016-03-16 11:09:09 -07: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
Tony Wickham
6cbd22279e Add special column for All Apps button in FocusLogic's sparse matrix.
The All Apps button creates a number of edge cases, mainly because it
causes the hotseat to sometimes have an extra column than the workspace.
Previously, we sort of swept these problems under the rug by simply
ignoring the All Apps button if other icons were present in the hotseat,
with the assumption that those other icons should get focus instead of
the All Apps button. (If possible, we want to stay in the same column
when moving from the workspace to the hotseat.) But this doesn't always
work, as in the attached bug where the hotseat doesn't get focus at all
when the All Apps button is an obvious candidate for it.

By adding a specialized column in the focus matrix for the All Apps
button, we ensure that moving down to the hotseat stays within the
original column when possible, while also allowing the focus to switch
to the All Apps button if appropriate. Furthermore, we take care to skip
over the All Apps column when necessary in order to maintain all
previous functionality.

Bug: 25590522
Change-Id: I5d6a8ee69de8834314c4689246fe7d54329b2eef
2015-11-10 11:40:58 -08: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
d6b4037b09 Grid adjustments, specifically for Ryu.
> Less than 14% of the screen is used for left/right workspace padding.
  (To be clear, this means 7% for the left and 7% for the right.)
> Hotseat icons are the same size as workspace icons.
> Far left and right hotseat edges line up with workspace edges.
> All Apps button is scaled down 8dp.

Bug: 24003478

Change-Id: Idb057ab0f6ba29e7fd93feac7573ca2e07c7e839
2015-10-08 09:23:10 -07:00
Winson Chung
76648c58d5 Making long-press of AllApps to jump directly to search.
Bug: 22210146
Change-Id: Iacf28416d6e31233a68e3b41576a8860b4b72b88
2015-07-10 16:08:56 -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
53d7ee4285 Fixing different bitmap sizes in different orientations
> Using a single bitmap icon size
> Picking up appropriate density for satisfy the required icon size
> Fixing some icon size assumptions during icon animations

Bug: 19514688
Change-Id: Ia7a1d0d2c03a9d39ccc241fa4ae3eb8a0f374585
2015-06-03 19:07:44 -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
c6205603ef Creating landscape and portrait device profiles at app initialization
Change-Id: Ide9d007adc36b348e19b05cdf49e87f8b02db60e
2015-05-22 08:46:41 -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
Winson Chung
c393b0765d Fixing issue where the prediction bar apps are not focused.
- Also fixes issue where all apps is not accessible by keyboard
  when there are no other apps in the hotseat.

Bug: 21334471
2015-05-21 00:37:50 +00:00
Sunny Goyal
c9acdd51c4 Removed disableAllApps flag
Change-Id: I50ba511b8493bca2506ab6010f141c093bfa7499
2015-02-26 12:35:09 -08:00
Hyunyoung Song
31178b8237 [key event focus handling] (1)hotseat <-> icon now symmetric, (2)support DEL 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
2015-02-24 22:14:11 +00:00
Sunny Goyal
66cfdc2549 Removing code for the unused 'upgrade path'
Change-Id: Ib9eca92284b0eabbe36ffaaf26c62a6ce3cfd3e9
2015-02-11 11:55:36 -08:00
Sunny Goyal
b3726d90a5 Changing hotseat keyboard controls
> Left and right keys don not navigate to next/prev page
> Down arrow on apps apps last row, do not take the focus to the end
> Nagivation sounds when focus changes

issue: 16352221

Change-Id: I5982f22dc80c408673092f8fa8ca1b2fc6381635
2014-08-20 17:00:32 -07:00
Sunny Goyal
dcbcc86353 Updating the UI for focused state of an icon/folder.
issue: 16352129

Change-Id: If2e154dba06a0648f933f9aea38898642db9fd85
2014-08-18 13:51:51 -07:00
Sunny Goyal
871f3f8bbe Merge "Mergin motorola patch to avoind 0 id for all apps button" into ub-now-master 2014-07-21 15:43:35 +00:00
Adam Cohen
6c5891a9fc Preliminary work on Material Transitions
-> Early exploration of AllApps Hero transition with
   circular reveal
-> Stripping a bunch of dead code from AppsCustomizeTabHost
-> Moved background scrim to DragLayer
-> Removed "SMALL" state from workspace: replaced with
   NORMAL_HIDDEN and OVERVIEW_HIDDEN. This is mainly to
   reduce the overall usage of the z-space model between
   allapps/widgets and workspace. There are vestigial
   remains of this model, mainly due to the overview
   mode, and a bit for spring-loaded.

Change-Id: If2302a24394f0ec66621f01ffa2fc4934aa10c3f
2014-07-18 17:56:42 -07:00
Sunny Goyal
e7de3b2c2c Mergin motorola patch to avoind 0 id for all apps button
issue: 15518514
Change-Id: I74a16600658f9299131cfbef7ad7a49ac25b12e7
2014-07-18 09:35:28 -07:00
Adam Cohen
96bb79819e Enabling quantum look and feel everywhere
-> _l assets become default, new folder icon look is default
-> Starting to unify folder look / feel with all apps
-> New page indicators

Change-Id: I50b2c647fbcbe6ed27705527d8e16bd89e123d0b
2014-07-07 15:29:53 -07:00
Adam Cohen
71b0473f24 Add new assets for LMP preview
issue 15544569 c), d), e)

Change-Id: Ib352ef1fa7c19c3695c82f3ea31936a4b41da5aa
2014-06-11 10:50:41 -07:00