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

Issue 628665 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Aug 14
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug
Team-Accessibility

Blocking:
issue 594887
issue 629095
issue 557401



Sign in to add a comment

mus: Allow accessibility clients to generate some events

Project Member Reported by sadrul@chromium.org, Jul 15 2016

Issue description

ChromeOS has an autoclick accessibility feature: a click event (i.e. a mouse-press event followed by a mouse-release) is automatically generated when the mouse cursor remains stationary for a while (default is 1 second; configurable) after moving some distance (20 DIP; non-configurable).

In mus+ash world, this needs to live in a mus-client (ideally a separate autoclick app). One of the requirements of this is that the client needs to be able to generate a click event. Since this means an external client causes click events to be dispatched to other clients, this needs a carefully designed API to make sure it cannot be misused. To mitigate potential vulnerability:
 . The event-generation API needs to be very restrictive. For example, the window-server will generate a mouse-click only at the current cursor location (instead of letting autoclick dictate where the click event is generated).
 . The event-generation API is available only to a small class of clients (e.g. 'trusted', 'accessibility' etc.)

Some notes: https://docs.google.com/document/d/15d2hBjqpAl0ax2rwjftBhj2ib1-CwYTMYT30vW_nLwI/edit#heading=h.8p818irozpxi
 

Comment 1 by sadrul@chromium.org, Jul 15 2016

Blocking: 557401

Comment 2 by sadrul@chromium.org, Jul 18 2016

Blocking: 629095
Cc: riajiang@chromium.org
Owner: sadrul@chromium.org
sadrul@ to re-assign.
Components: Internals>MUS
Labels: Proj-Mustash
Labels: NewComponent-Accessibility-Internals NewComponent-Accessibility
Components: Internals>Accessibility
Components: -UI>Accessibility
Labels: -newcomponent-accessibility-internals -newcomponent-accessibility
Labels: triage-dominic-internals
Labels: -triage-dominic-internals
Components: -Internals>MUS Internals>Services>WindowService
Components: -MUS
Blocking: 594887
Project Member

Comment 14 by bugdroid1@chromium.org, Mar 14 2018

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

commit ef8990ce90516cfafd75f241d270e5489c0fc6e7
Author: James Cook <jamescook@chromium.org>
Date: Wed Mar 14 21:06:36 2018

cros: Make autoclick work under mash

Generate synthetic clicks and dispatch them via the window service.
Add the remote event dispatcher interface to a new "accessibility"
capability, available only to trusted apps.

Bug: 821471,  628665 
Test: Use autoclick on multiple displays with different scale factors
Change-Id: I61352a0849a96a2bc0ae14d0b8afcca051ba67e2
Reviewed-on: https://chromium-review.googlesource.com/961668
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543190}
[modify] https://crrev.com/ef8990ce90516cfafd75f241d270e5489c0fc6e7/ash/autoclick/common/autoclick_controller_common_delegate.h
[modify] https://crrev.com/ef8990ce90516cfafd75f241d270e5489c0fc6e7/ash/components/autoclick/DEPS
[modify] https://crrev.com/ef8990ce90516cfafd75f241d270e5489c0fc6e7/ash/components/autoclick/autoclick_application.cc
[modify] https://crrev.com/ef8990ce90516cfafd75f241d270e5489c0fc6e7/ash/components/autoclick/autoclick_application.h
[modify] https://crrev.com/ef8990ce90516cfafd75f241d270e5489c0fc6e7/ash/components/autoclick/manifest.json
[modify] https://crrev.com/ef8990ce90516cfafd75f241d270e5489c0fc6e7/services/ui/manifest.json

Status: Assigned (was: Available)
Status: Fixed (was: Assigned)
We have API for this now.

Sign in to add a comment