New issue
Advanced search Search tips

Issue 768437 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Nov 8
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug


Show other hotlists

Hotlists containing this issue:
Launcher-Tech-Debt


Sign in to add a comment

Rework fullscreen app list open animation

Project Member Reported by jamescook@chromium.org, Sep 25 2017

Issue description

Right now the animation works by opening a views::Widget that is off the bottom of the screen. Then the widget's position is animated upward to slide the app list into view.

This won't work on mash. (Imagine trying to do this with a browser window on Microsoft Windows.)

Instead, I think we should open a frameless widget at the final destination bounds of the app list, then slide the widget's layer into place.

(This may not be necessary if the app list moves into the ash process, since ash as the window manager may be able to do the existing widget animations.)

 
Project Member

Comment 1 by bugdroid1@chromium.org, Sep 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ebb057907a7021a089e42a5d51d77a16558c4f24

commit ebb057907a7021a089e42a5d51d77a16558c4f24
Author: James Cook <jamescook@chromium.org>
Date: Tue Sep 26 00:10:07 2017

cros: Fix fullscreen app list under mash

* Place app list widget in the ash app list window container, instead of
  in the container for browser windows.
* Perform widget bounds computations in local coordinates. This avoids
  problems with screen-to-local computations under mash where the native
  window's parent is the desktop widget, not the window container as in
  classic ash.
* Use side shelf mode in mash, which skips some problematic opening
  animations. See  issue 768437 .
* Introduce AppListView::InitParams so we don't have 2 ints and 2 bools
  as adjacent parameters.
* Eliminate some unused Init() method params.

Bug:  763961 ,  768437 
Test: app_list_unittests, manual testing of fullscreen app list with multiple monitors (stacked vertically) and/or side shelf mode.

Change-Id: I933f5130feab3d8b4edfc2b573f52748e9c82539
Reviewed-on: https://chromium-review.googlesource.com/682343
Commit-Queue: James Cook <jamescook@chromium.org>
Reviewed-by: James Cook <jamescook@chromium.org>
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#504226}
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ash/app_list/app_list_presenter_delegate.cc
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/chrome/browser/ui/ash/app_list/app_list_presenter_delegate_mus.cc
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/BUILD.gn
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/DEPS
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/presenter/app_list_presenter_impl_unittest.cc
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/views/app_list_main_view.cc
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/views/app_list_main_view.h
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/views/app_list_main_view_unittest.cc
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/views/app_list_view.cc
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/views/app_list_view.h
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/views/app_list_view_unittest.cc
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/views/apps_grid_view_unittest.cc
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/views/search_box_view_unittest.cc
[modify] https://crrev.com/ebb057907a7021a089e42a5d51d77a16558c4f24/ui/app_list/views/search_result_page_view_unittest.cc

Cc: -newcomer@chromium.org jamescook@chromium.org
Owner: newcomer@chromium.org
Status: Assigned (was: Untriaged)
Alex, I'm just going to assign this to you so it has an owner. There's nothing urgent to do here.

Sounds good. Thanks James!

Comment 4 by vadimt@chromium.org, Sep 29 2017

Labels: Touch-Friendly-Launcher
Labels: Touch-Friendly-Launcher-Triaged
TechDebt
Added to techdebt hotlist, thanks shiba.
Owner: ----
Removing myself as owner so we can assign this via the launcher triage process.
Owner: vadimt@chromium.org
Owner: ----
Components: Internals>Services>Ash
Labels: -Proj-Mustash-Mash
Labels: -Pri-3 M-72 Pri-2
Owner: ginko@chromium.org
I'm currently looking into having the widget start as fullscreen/transformed offscreen, then transforming it into position. I think this is the last detail this bug is waiting for, so I'll use it as a tracker for that task. Please let me know if this doesn't sound correct!

Alex, Let me know if the priorities / milestones are correct, I updated them according to what we discussed offline.
Owner: weidongg@chromium.org
I believe you've done this already when you reworked App List to use transform?
Status: Fixed (was: Assigned)
I think what we are doing is the same as described in #12: https://cs.chromium.org/chromium/src/ash/app_list/views/app_list_view.cc?q=app_list_view.cc&sq=package:chromium&g=0&l=1216

Sign in to add a comment