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

Issue 743291 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Jul 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocking:
issue 620633


Participants' hotlists:
Fixing-touch


Sign in to add a comment

Ignore touchscreen events while screen is turned off due to inactivity

Project Member Reported by derat@chromium.org, Jul 15 2017

Issue description

(Forked from issue 620633.)

Our touchscreen-events-while-screen-is-off behavior is inconsistent from the user's perspective:

a) When a convertible Chromebook's screen is off because the user tapped the power button, tapping the screen doesn't do anything.

b) When the screen is off because the user decreased the brightness to 0, tapping the screen turns it back on.

c) When the screen is off because the user was inactive for several minutes, tapping the screen turns it back on.

d) When the screen is off because the system is suspended (a.k.a. sleeping a.k.a. in ACPI S3), tapping the screen doesn't do anything.

I don't have strong opinions about what we should do in b), but I think we should disable the touchscreen in c). Per issue 620633, I think that tbuckley@ and omrilio@ agree.

There may be some disagreement about whether we should keep the touchscreen active for a few seconds after it turns off, but given that we always go through the screen-dimmed state on the way to screen-off for inactivity, I think we should skip this in the initial implementation. I'll also point out that Android N (on a 5X) appears to not have a grace period after the screen is turned off for inactivity; touch events are ignored as soon as it goes off. (If you try this yourself, note that you need to keep the phone stationary so it won't turn its screen on in response to motion.)

So I propose the following: On convertible Chromebooks, make Chrome disable the touchscreen immediately when the display is turned off due to inactivity, and reenable it when the display is turned back on.

I think that this can live in TabletPowerButtonController. It already updates the touchscreen status when the display is forced off (for case a above), and it observes the brightness level too.

I'll take a stab at this unless Joe really wants to do it instead. :-)
 

Comment 1 by derat@chromium.org, Jul 15 2017

I'm not planning to update the behavior on non-convertible devices as part of this, since it's a separate codepath that doesn't currently do anything around the touchscreen state and it seems unlikely that many users will try to use the touchscreen to turn the screen on on an idle clamshell device anyway.
Yes, agreed that we should not allow users to tap the screen to wake the device once the screen turns off due to inactivity (c).
Project Member

Comment 4 by bugdroid1@chromium.org, Jul 17 2017

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

commit 8dbc2286a282432472add1a0ad491925dbf6f1c4
Author: Daniel Erat <derat@chromium.org>
Date: Mon Jul 17 20:11:17 2017

chromeos: Disable touchscreen for user inactivity.

Make TabletPowerButtonController disable the touchscreen
when powerd reports that the display was turned off
automatically (typically due to user inactivity).

This is intended to remove an inconsistency from the user's
perspective where the touchscreen turns the screen on when
the device is awake but in a screen-off state due to
inactivity, but doesn't wake the device when it's in S3
(i.e. suspended, asleep).

BUG= 743291 
TEST=manual: run set_short_powerd_timeouts, then:
     a) tap power button and verify touchscreen is disabled.
        after tapping power button again, screen turns on
        and touchscreen works.
     b) wait 20 seconds for screen to turn off due to
        inactivity and verify touchscreen is disabled. after
        hitting a key, screen turns on and touchscreen works
        again.
     c) manually decrease brightness to 0, wait five
        seconds, and then verify that touchscreen increases
        backlight brightness to min-visible level

Change-Id: I16c9769f587fe91bf2e6c3e68d06ccb83b299294
Reviewed-on: https://chromium-review.googlesource.com/572766
Reviewed-by: Qiang(Joe) Xu <warx@chromium.org>
Commit-Queue: Dan Erat <derat@chromium.org>
Cr-Commit-Position: refs/heads/master@{#487212}
[modify] https://crrev.com/8dbc2286a282432472add1a0ad491925dbf6f1c4/ash/system/power/tablet_power_button_controller.cc
[modify] https://crrev.com/8dbc2286a282432472add1a0ad491925dbf6f1c4/ash/system/power/tablet_power_button_controller.h
[modify] https://crrev.com/8dbc2286a282432472add1a0ad491925dbf6f1c4/ash/system/power/tablet_power_button_controller_unittest.cc

Comment 5 by derat@chromium.org, Jul 17 2017

Status: Fixed (was: Started)
Status: Verified (was: Fixed)
Verified all the scenarios from comment #4 on 
- Kevin with version - 9765.16.0, 61.0.3163.30
- Eve with version - 9765.13.0, 31.0.3163.20

Sign in to add a comment