KSV: App list takes a moment to hide when launching Keyboard Shortcut Viewer app |
||||
Issue descriptionKSV: App list takes a moment to hide when launching Keyboard Shortcut Viewer app (1) launch chromeos with --keyboard-shortcut-viewer-app (2) open the applist (3) search for "key" (4) click on the top icon that shows a keyboard with the name "Shortcuts" Expected: The app list disappears quickly and shows the KSV window Actual: The app list stays for 1s+ while waiting for the KSV window Maybe related to slow app startup: Issue 847613
,
Jun 11 2018
For apps in the grid, ChromeAppListItem::Activate is the common code path when an app is clicked. For search results, app_list::AppResult::Open is the one.
,
Jun 11 2018
Added dismiss to the common code paths sgtm. Will work on it.
,
Jun 18 2018
,
Jun 18 2018
xiyuan@, I am not sure what is the best way to handle the dismiss for AppResult. ChromeAppListItem is relatively easier.
For ChromeAppListItem, the common place to call ChromeAppListItem::Activate is at ChromeAppListModelUpdater::ActivateChromeItem. Before line 155 [1], we can do:
AppListControllerDelegate* delegate = item->GetController()******;
if (!delegate->IsHomeLauncherEnabledInTabletMode())
delegate->DismissView();
******We need to make ChromeAppListItem::GetController public.
[1] https://cs.chromium.org/chromium/src/chrome/browser/ui/app_list/chrome_app_list_model_updater.cc?l=155&rcl=627fd97ad671f7157584a311c6ad3f2cf49c4afe
It is a little complicated for AppResult::Open, the common path is at SearchController::OpenResult(ChromeSearchResult* result, int event_flags).
The problem is that ChromeSearchResult does not have AppListControllerDelegate. Only AppResult has AppListControllerDelegate.
,
Jun 18 2018
For ChromeAppListItem, please put the logic in ChromeAppListItem::Activate instead of in ChromeAppListModelUpdater. For search result, how about making SearchController takes AppListControllerDelegate as its member? We pass it down in CreateSearchController [1]. https://cs.chromium.org/chromium/src/chrome/browser/ui/app_list/search/search_controller_factory.cc?rcl=3d35a78122f5bbfd2191d352f5e2826ec853cb3d&l=62
,
Jun 18 2018
Thanks xiyuan@. Uploaded a cl to: https://chromium-review.googlesource.com/c/chromium/src/+/1105279
,
Jun 19 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/37ccdbddf2b85dd850d64ff92e5e65977f879449 commit 37ccdbddf2b85dd850d64ff92e5e65977f879449 Author: wutao <wutao@chromium.org> Date: Tue Jun 19 00:51:01 2018 app_list: Dimiss launcher in common code paths When opening app in app list or in the search result, we want to dismiss the launcher first while waiting the app to be opened. This cl consolidates the dismiss codes to common code paths. Bug: 851555 Test: manual. Change-Id: I0230838c368c74c0acbf3e889ac9162be3abdb87 Reviewed-on: https://chromium-review.googlesource.com/1105279 Commit-Queue: Tao Wu <wutao@chromium.org> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Cr-Commit-Position: refs/heads/master@{#568264} [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/arc/arc_app_item.cc [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/arc/arc_app_unittest.cc [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/chrome_app_list_item.cc [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/chrome_app_list_item.h [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/chrome_app_list_model_updater.cc [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/crostini/crostini_app_item.cc [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/search/arc_app_result.cc [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/search/crostini_app_result.cc [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/search/search_controller.cc [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/search/search_controller.h [modify] https://crrev.com/37ccdbddf2b85dd850d64ff92e5e65977f879449/chrome/browser/ui/app_list/search/search_controller_factory.cc
,
Jun 19 2018
|
||||
►
Sign in to add a comment |
||||
Comment 1 by msw@chromium.org
, Jun 11 2018Components: UI>Shell>Launcher
Labels: -Pri-3 OS-Chrome Pri-2
Owner: wutao@chromium.org
Status: Assigned (was: Untriaged)