New issue
Advanced search Search tips

Issue 898658 link

Starred by 1 user

Issue metadata

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

Blocked on:
issue 889093



Sign in to add a comment

StickyKeysBrowserTest is failing with SingleProcessMash

Project Member Reported by mukai@chromium.org, Oct 24

Issue description

StickyKeysBrowserTest is still failing with SingleProcessMash. I thought it was an easy fix once  issue 890536  was fixed, but that seems wrong. This issue is for tracking the status of this test.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Oct 24

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

commit 8631bb061a545c65d4e65fe588dbcbce3b79b7ea
Author: Jun Mukai <mukai@chromium.org>
Date: Wed Oct 24 23:17:52 2018

Stops using EventGenerator for StickyKeysBrowserTest

The EventGenerator isn't using EventInjector for Mash when the target
window is specified. But actually this EventGenerator is only
generating key events, which can be replaced by
ui_test_utils::SendKeyPressSync().

This doesn't fix the SingleProcessMash cases, but at least now
the key events are processed by Ash. And this simplifies
the code.

BUG= 898658 
TEST=interactive_ui_tests

Change-Id: Ibf3df0588fdaf8a6429ddf05326f6ed119c4e063
Reviewed-on: https://chromium-review.googlesource.com/c/1298075
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: Jun Mukai <mukai@chromium.org>
Cr-Commit-Position: refs/heads/master@{#602516}
[modify] https://crrev.com/8631bb061a545c65d4e65fe588dbcbce3b79b7ea/chrome/browser/chromeos/accessibility/sticky_keys_browsertest.cc

This is still failing because:
- sticky keys handling is implemented as an EventRewriter, and sometimes it blocks a key event (pressing of ctrl key is blocked) as EVENT_REWRITE_DISCARD
- in that case, EventSource simply stops processing the rewriting and immediately returns the an empty result (https://cs.chromium.org/chromium/src/ui/events/event_source.cc?l=74)
- this happens *before* WindowEventDispatcher starts processing an event, so InjectedEventHandler don't handle the result of the event
Cc: msw@chromium.org
Labels: Pri-2
Blockedon: 889093
Owner: sky@chromium.org
Status: Started (was: Assigned)
This looks related to event injection. I'm going to take a look.
Project Member

Comment 7 by bugdroid1@chromium.org, Dec 11

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

commit 344aea41e72b4926b7f82c5b2aba6a2ad814c992
Author: Scott Violet <sky@chromium.org>
Date: Tue Dec 11 20:10:23 2018

chromeos: run callbacks if event is discarded by a rewriter

If an EventRewriter discards the event, callbacks should be run immediately.
Without this, the callback never gets run.

BUG= 898658 
TEST=covered by tests

Change-Id: Ia2644890750fe328506d4fce3f575f327c06cd1f
Reviewed-on: https://chromium-review.googlesource.com/c/1371216
Commit-Queue: Scott Violet <sky@chromium.org>
Reviewed-by: Michael Wasserman <msw@chromium.org>
Cr-Commit-Position: refs/heads/master@{#615636}
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/ash/host/ash_window_tree_host_platform.cc
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/ash/host/ash_window_tree_host_platform.h
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/services/ws/event_queue.cc
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/services/ws/event_queue.h
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/services/ws/host_event_dispatcher.h
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/services/ws/host_event_queue.cc
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/services/ws/host_event_queue.h
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/services/ws/injected_event_handler.cc
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/services/ws/injected_event_handler.h
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/services/ws/injected_event_handler_unittest.cc
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/services/ws/test_host_event_dispatcher.cc
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/services/ws/test_host_event_dispatcher.h
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/testing/buildbot/filters/chromeos.single_process_mash.interactive_ui_tests.filter
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/ui/events/event_dispatcher.h
[modify] https://crrev.com/344aea41e72b4926b7f82c5b2aba6a2ad814c992/ui/events/event_source.cc

Status: Fixed (was: Started)
My patch fixed a couple of StickyKeysBrowserTests. The remaining ones are covered by 913549.

Sign in to add a comment