Commit Graph

763 Commits

Author SHA1 Message Date
Sunny Goyal 0af8af3a60 Merge "Adding a DB update path to handle the QSB position change" into ub-launcher3-calgary 2016-06-16 19:34:20 +00:00
Hyunyoung Song a9a8a42217 UI fixes to All apps pull up work
b/28917826
- nav bar change to light when top of the all apps container
passes y mid point of the status bar
- apps search edit box change when top of the all apps passes
the bottom of nav bar
- Restrict pull up to work only if the ACTION_DOWN event started
from the hotseat.
- Landscape: reverted old padding and margin. Only the interaction
is different.
- Tuning of the motion spec
- Animation duration respects fling speed more agressively.
- and many more small bugs...

Change-Id: Icde4093c41eeab8c9c6d9dc8b7d57adc3b171349
2016-06-15 16:45:48 -07:00
Hyunyoung Song 7d2fc8120e Add caret shaped all app pull up handle to page indicator.
b/28917826

> PageIndicator is also added in landscape
> Touch delegate allows the active touch area to be 36dp

Change-Id: If00f45fc88a13cd5a6759d771313439eb58561e3
2016-06-15 12:51:30 -07:00
Sunny Goyal a9e2f5abb3 Adding a DB update path to handle the QSB position change
> Renamed the id of 1st screen to 0 and making space for the QSB
by running the grid migration task.
> Added a feature flag to easily disable the QSB-in-workspace behavior

Change-Id: Ie3369f0d4433d916e9d6215d414770d4333f3e26
2016-06-15 10:03:12 -07:00
Sunny Goyal a7ce166b2e Making the security checks and policy changes only when launching custom
shortcuts. This prevents launcher specific intents to unknowingly leak data.

Change-Id: I01343a9cee1f2a9a37a20aaf24e933e2771ecdbc
2016-06-10 13:48:44 -07:00
Sunny Goyal 3333b0ced8 Unifying focus indicator handling for workspace and all-apps
Adding an abstract FocusIndicatorHelper based on FocusIndicatorView
which draws the background instead of using a dummy view.

Change-Id: Id560195323d2ddad8fcd77ba675cf3f4fd4a94ab
2016-06-08 15:00:09 -07:00
Sunny Goyal 47328fd53f Removing the SearchDropTarget bar as it no longer contains the QSB
> Renaming it to simply DropTargetBar
> Moving AppInfo to the top bar as well
> The workspace pages will extend to the top edge (minus some padding).
Since the QSB is no longer displayed on top of every page, there is
no reason to reserve the space.
> In spring-loaded mode, the workspace cell layout will scale enough
to make room for the drop target bar at the top

Change-Id: I2baf607310335dd576c9d9fcbb75ab708f47ac03
2016-06-06 16:15:46 -07:00
Hyunyoung Song 645764e3e5 Pull up all apps interaction
First phase implementation: dragging and animation interaction is implemented
namely in two classes. ScrollGestureDetector and AllAppsTransitionController.

FeatureFlag.LAUNCHER#_ALL_APPS_PULL_UP will be true for only AOSP and
not in the extending builds. This way, we can safely iterate without
turning it on the shipped ready version.
b/28917826

Change-Id: I0501309c0121880ffe0555f82d6ac5a145581bb1
2016-06-06 14:19:02 -07:00
Sunny Goyal 85fc55a976 Disabling stricty mode checks when launching an activity.
The default strict mode policy in NYC cause death penalty when
when sharing file URI in intent. This causes launcher to crash
for users who have shortcuts of images and documents on their
homescreen.

Bug: 28853579
Change-Id: If84cd5ff732713aaff5d3164edf428c8b4233ea2
2016-05-31 12:51:08 -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 d478c83fd6 Showing a permission dialog when a restored widget is not yet bound, and launcher
does not has the permission to bind the widget

Change-Id: I51d32b9958f82671b928d559105129261fb8f268
2016-05-26 17:44:29 -07:00
Sunny Goyal ded0fdba52 Removing logic for workspace migration from Launcher2
Change-Id: I8a121d74862f665c58406f8d5c7eb1263e7ccff3
2016-05-23 16:00:09 -07:00
Sunny Goyal 40902b3cb0 Merge "Preventing unnecessary options update to QSB provider by checking if the options have changed before calling update" into ub-launcher3-calgary 2016-05-19 22:54:22 +00:00
Tony Wickham 770217c697 Add null check to page indicator to prevent crashes in landscape.
Change-Id: I9676c19bcdd9129a8519e96febc779f019bc8a13
2016-05-18 15:16:40 -07:00
Sunny Goyal 3f732190cc Preventing unnecessary options update to QSB provider
by checking if the options have changed before calling update

Bug: 28586377
Change-Id: Idf263b7a32ca85f23f728fa29b9c8ac84289052e
2016-05-18 15:00:52 -07:00
Sunny Goyal 7267adf68e Fixing build breakage
Change-Id: Ib649bff709f4b6e4f173006d267aafa069c2a8b4
2016-05-18 09:47:58 -07:00
Sunny Goyal 1acb9e9e29 Rearranging the provider checks to avoid packagemanager lookups
whenever launcher starts

Bug: 28737985
Change-Id: I3ce3e2741b3224fa5419d7ceca496e1bb91f065c
2016-05-18 09:41:27 -07:00
Tony Wickham ae00781428 Merge "Add PageIndicator interface and custom PageIndicatorLine view." into ub-launcher3-calgary 2016-05-18 02:09:02 +00:00
Tony Wickham f549dab31d Add PageIndicator interface and custom PageIndicatorLine view.
- The current PageIndicator has been renamed to PageIndicatorDots
  and PageIndicatorMarker has been renamed to PageIndicatorDot.
- PageIndicatorDots and PageIndicatorLine implement PageIndicator.
- PageIndicatorLine uses scroll progress and number of pages to
  draw a line of the correct size and position.
- All of these page indicator files are now in a pageindicators package.

Bug: 27227498

Change-Id: I9230d2e0600ce583989bd31d0b0e252b148d15c2
2016-05-17 18:53:57 -07:00
Sunny Goyal aaf7d1d13b instead of unbinding items from the loader, unregistering listeners
in activity.onDestroy()

Bug: 28740269
Change-Id: I6bf2ad6aca43970fd10cfbcc113e609c227e07bf
2016-05-17 14:42:10 -07:00
Sunny Goyal 04cc3a7bea Opening the system default wallpaper picker on clicking the wallpaper tile
Bug: 28790378
Change-Id: If283b60a0b9563ab8e80d49b0ffa195fc3ffda8a
2016-05-17 11:29:46 -07:00
Sunny Goyal 87af0fded6 Removing reference of hostView from LauncherAppWidgetInfo
LauncherAppWidgetInfo is a model item and does not need to reference
a view. Removing this dependency will allow cleaning up the
item unbinding logic

Bug: 28740269
Change-Id: I11fc2e2500b8fe29d157eefe74c70b1decdfd08d
2016-05-16 14:58:20 -07:00
Hyunyoung Song adb8eb5a34 Merge "Widgets tray should preserve scroll position during screen rotation" into ub-launcher3-calgary 2016-05-10 20:49:13 +00:00
Hyunyoung Song bc5d623845 Widgets tray should preserve scroll position during screen rotation
> This used to work, but when I got rid of preloading which was
handled by linear manager to increase scrolling speed, the save
and restore instance that was being handled by the linear layout
manager created using Launcher context also went away. Hence,
bringing back custom LinearLayoutManager.

Change-Id: Ibccdf80533a5ace06cc6c6932b257c223cbac0ff
2016-05-10 13:46:13 -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
Sunny Goyal 713edfce26 Adding a utility class for persistant logging.
The logs are kept for at max 48 hours. It uses two log files and switches
between the two based on the day of the year.

Change-Id: I9a99499b3445a62f29f62a5cd13db20b1783bcd3
2016-05-09 12:47:42 -07:00
Sunny Goyal 745bad9da1 Chaning the behavior of settings activity.
> Making all twoState prefs backed by content provider
> Using the stadard intent defined in N for settings
> Using SharedPrefsListener instead of LauncherProvider

Change-Id: I8272f54aa780bc0436e3d0aa89096a4bd2a9194f
2016-05-02 12:00:51 -07:00
Sunny Goyal f8a2ba2707 Merge "Revert "Calling start/stop listening in onStart/onStop"" into ub-launcher3-calgary 2016-04-28 22:43:10 +00:00
Sunny Goyal 7e5d5fc3c6 Revert "Calling start/stop listening in onStart/onStop"
This reverts commit 23ac9cb3e1.

Bug: 28421447
Change-Id: Id04e7b7827d8b897b7c7992705d36f9d83a13320
2016-04-28 22:24:50 +00:00
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