New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 814908 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Last visit > 30 days ago
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

Move fast ink code to src/components and remove ash dependencies.

Project Member Reported by reve...@chromium.org, Feb 22 2018

Issue description

Fast ink is only used by ash today but it doesn't have any hard dependencies on ash. We should move this code out of ash/ to make sure it can easily be used for non-ash purposes.
 

Comment 1 by sadrul@chromium.org, Feb 22 2018

Cc: jamescook@chromium.org
The new //ash/components could also be a home for this.
Created a CL (https://chromium-review.googlesource.com/c/chromium/src/+/932626) that removes all ash deps and moves it to //components. I'm assuming that's better than //ash/components? Users of fast ink (laser pointer, highlighter) have ash deps that can't be removed. Maybe they are good candidates for //ash/components?
I don't feel strongly about moving laser pointer or highlighter. Conceptually it would be nice (they feel like mini-app) but I don't see an immediate need, and if they have annoying ash dependencies I would leave them where they are.

Isolating fast ink somewhere seems like a good idea. The particular location doesn't matter much to me (//components, somewhere graphics-related, etc.). I would try to avoid //ui/chromeos since I'm trying to kill that directory. :-)


Comment 4 by osh...@chromium.org, Feb 23 2018

Components: UI>GFX
Due to the recent change in the components policy, I doubt that the owner of components will approve the move to src/components. I think ash/components is the good place at least for the time being. (and it has -ash)
Project Member

Comment 5 by bugdroid1@chromium.org, Mar 8 2018

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

commit dbc78bf2e0529e75ff88c6d202e5c1f77ce81521
Author: David Reveman <reveman@chromium.org>
Date: Thu Mar 08 18:59:59 2018

ash: Move fast_ink to src/ash/components.

This removes all dependencies on ash and moves the code to
ash/components/fast_ink.

Minor changes needed to accomplish this:

- Remove ash switch that could be used to set estimated
  presentation time. This was never actually used and can be
  restored in the future if needed.

- Always use unverified sync tokens. Unlikely to have a
  performance impact as fast ink doesn't rely on GL compositing
  for low-latency.

- Minor refactor to code that detects if input event is in the
  stylus tools area.

Bug: 814908
Test: ash_unittests --gtest_filter=FastInk*
Change-Id: I2a668b92d92726025510e1bf636c20b334c78500
Reviewed-on: https://chromium-review.googlesource.com/932626
Commit-Queue: David Reveman <reveman@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: James Cook <jamescook@chromium.org>
Reviewed-by: Vladislav Kaznacheev <kaznacheev@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541850}
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/BUILD.gn
[add] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/components/fast_ink/BUILD.gn
[add] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/components/fast_ink/DEPS
[rename] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/components/fast_ink/OWNERS
[rename] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/components/fast_ink/fast_ink_pointer_controller.cc
[rename] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/components/fast_ink/fast_ink_pointer_controller.h
[rename] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/components/fast_ink/fast_ink_points.cc
[rename] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/components/fast_ink/fast_ink_points.h
[rename] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/components/fast_ink/fast_ink_points_unittest.cc
[rename] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/components/fast_ink/fast_ink_view.cc
[rename] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/components/fast_ink/fast_ink_view.h
[delete] https://crrev.com/b7061496ec00364b3082689d03b26715224f810e/ash/fast_ink/DEPS
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/DEPS
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/highlighter_controller.cc
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/highlighter_controller.h
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/highlighter_controller_test_api.cc
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/highlighter_controller_test_api.h
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/highlighter_controller_unittest.cc
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/highlighter_gesture_util.cc
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/highlighter_gesture_util.h
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/highlighter_gesture_util_unittest.cc
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/highlighter_view.cc
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/highlighter/highlighter_view.h
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/laser/DEPS
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/laser/laser_pointer_controller.cc
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/laser/laser_pointer_controller.h
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/laser/laser_pointer_controller_test_api.cc
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/laser/laser_pointer_controller_test_api.h
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/laser/laser_pointer_view.h
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/public/cpp/ash_switches.cc
[modify] https://crrev.com/dbc78bf2e0529e75ff88c6d202e5c1f77ce81521/ash/public/cpp/ash_switches.h

Project Member

Comment 6 by bugdroid1@chromium.org, Mar 9 2018

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

commit 38451268085aa632acfb17cd30fae63fa372debd
Author: David Reveman <reveman@chromium.org>
Date: Fri Mar 09 18:35:29 2018

fast_ink: Fix DeleteWhenLastResourceHasBeenReclaimed.

Monitor the root window instead of the aura env to determine
when frame sink holder must be cleaned up. It's too late to
cleanup the holder when aura is being shutdown.

Bug: 814908
Test: Close chrome while fast ink view is visible.
Change-Id: Ia807c9469d791e4d8d4973711cf904592bc05471
Reviewed-on: https://chromium-review.googlesource.com/957222
Reviewed-by: Vladislav Kaznacheev <kaznacheev@chromium.org>
Commit-Queue: David Reveman <reveman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542179}
[modify] https://crrev.com/38451268085aa632acfb17cd30fae63fa372debd/ash/components/fast_ink/fast_ink_view.cc

Sign in to add a comment