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

Issue 847677 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: 2018-05-30
OS: Chrome
Pri: 1
Type: Bug
Team-Accessibility



Sign in to add a comment

ChromeVox linear nav not working on Chromebook in tablet mode/portrait orientation

Project Member Reported by leberly@chromium.org, May 30 2018

Issue description

Portrait means the convertible Chromebook is put into tablet mode by folding the screen over the keyboard and then it is turned such that the shorter edges of the screen are on the top and bottom and the longer edges are left and right. 

Chrome 65.0.3325.167 beta channel 
Google_Eve.9584.107.0 

Steps:
# In tablet mode, turn on ChromeVox using ctrl + alt + z
# Put Chromebook into portrait orientation as defined above
# Use your finger to tap anywhere on the screen, then bring drag it from left to right to linear navigate.  
Expected: focus moves to touch point then moves along in linear navigation
Actual: earcon plays a sound indicating offscreen, focus is not under finger at all. Linear navigation doesn't occur. 

Note that sometimes touch navigation will work and sometimes it won't but linear navigation never works in this scenario. 


 
Cc: kirtia@google.com dtseng@chromium.org
 Issue 839455  has been merged into this issue.
This impacts internal bug b/73281626
On the Dev channel of Eve I am unable to linear navigate or touch explore in both landscape and portrait configurations. 

Chrome 69.0.3444.0 (Official Build) dev (64-bit)
Google_Eve.9584.151.0 

Comment 4 Deleted

Comment 5 by dtseng@chromium.org, May 30 2018

Status: started (was: Available)
Project Member

Comment 6 by bugdroid1@chromium.org, Jun 5 2018

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

commit 3facca3dccb610edc29409fb823184c85faa8c08
Author: David Tseng <dtseng@chromium.org>
Date: Tue Jun 05 01:47:09 2018

Rationalize TouchExplorationController coordinate usage

events delivered to TouchExplorationController, an event rewriter, are in pixels, but are not transformed. Namely, they need to be mapped into the coordinate space of the root window.
For example, a root window that is default landscape, when put into portrit, has the transformation matrix
[0, 2.0, 0, 0]
[-2, 0, 0, 1600]
[0, 0, 1, 0]
[0, 0, 0, 1]

In this change:
- always convert incoming events to root window coordinates using DIP units
- always convert outgoing synthesized events to screen pixels
- ensure all logic within TouchExplorationController works based on root window DIP coordinates including lift activation, edge detection

Bug:  847677 
Test: on a device which is default in landscape, try touching all four corners, performing volume sliding on right edge. Flip into tablet, and try this in all four 90 degree rotations and verify the same. Try typing in the vk; verify lift activation.

ash_unittests --gtest_filter=*TouchEx*.*

Change-Id: Ibbce6d630734642a178db975c51be159ef913c00
Reviewed-on: https://chromium-review.googlesource.com/1083497
Commit-Queue: David Tseng <dtseng@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#564342}
[modify] https://crrev.com/3facca3dccb610edc29409fb823184c85faa8c08/ash/accessibility/touch_exploration_controller.cc
[modify] https://crrev.com/3facca3dccb610edc29409fb823184c85faa8c08/ash/accessibility/touch_exploration_controller.h
[modify] https://crrev.com/3facca3dccb610edc29409fb823184c85faa8c08/ash/accessibility/touch_exploration_controller_unittest.cc

Labels: Merge-Request-68
Project Member

Comment 8 by sheriffbot@chromium.org, Jun 6 2018

Labels: -Merge-Request-68 Hotlist-Merge-Approved Merge-Approved-68
Your change meets the bar and is auto-approved for M68. Please go ahead and merge the CL to branch 3440 manually. Please contact milestone owner if you have questions.
Owners: cmasso@(Android), kariahda@(iOS), bhthompson@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 9 by sheriffbot@chromium.org, Jun 11 2018

This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible!

If all merges have been completed, please remove any remaining Merge-Approved labels from this issue.

Thanks for your time! To disable nags, add the Disable-Nags label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 10 by bugdroid1@chromium.org, Jun 11 2018

Labels: -merge-approved-68 merge-merged-3440
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a94ffa4174b7318d20f5e607d6851b6059adb33b

commit a94ffa4174b7318d20f5e607d6851b6059adb33b
Author: David Tseng <dtseng@chromium.org>
Date: Mon Jun 11 18:12:16 2018

Merge to m68: Rationalize TouchExplorationController coordinate usage

TBR=dtseng@chromium.org

Original change description

events delivered to TouchExplorationController, an event rewriter, are in pixels, but are not transformed. Namely, they need to be mapped into the coordinate space of the root window.
For example, a root window that is default landscape, when put into portrit, has the transformation matrix
[0, 2.0, 0, 0]
[-2, 0, 0, 1600]
[0, 0, 1, 0]
[0, 0, 0, 1]

In this change:
- always convert incoming events to root window coordinates using DIP units
- always convert outgoing synthesized events to screen pixels
- ensure all logic within TouchExplorationController works based on root window DIP coordinates including lift activation, edge detection

Bug:  847677 
Test: on a device which is default in landscape, try touching all four corners, performing volume sliding on right edge. Flip into tablet, and try this in all four 90 degree rotations and verify the same. Try typing in the vk; verify lift activation.

ash_unittests --gtest_filter=*TouchEx*.*

Change-Id: Ibbce6d630734642a178db975c51be159ef913c00
Reviewed-on: https://chromium-review.googlesource.com/1083497
Commit-Queue: David Tseng <dtseng@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#564342}
Reviewed-on: https://chromium-review.googlesource.com/1095775
Reviewed-by: David Tseng <dtseng@chromium.org>
Cr-Commit-Position: refs/branch-heads/3440@{#278}
Cr-Branched-From: 010ddcfda246975d194964ccf20038ebbdec6084-refs/heads/master@{#561733}
[modify] https://crrev.com/a94ffa4174b7318d20f5e607d6851b6059adb33b/ash/accessibility/touch_exploration_controller.cc
[modify] https://crrev.com/a94ffa4174b7318d20f5e607d6851b6059adb33b/ash/accessibility/touch_exploration_controller.h
[modify] https://crrev.com/a94ffa4174b7318d20f5e607d6851b6059adb33b/ash/accessibility/touch_exploration_controller_unittest.cc

Status: fixed (was: Started)

Sign in to add a comment