New issue
Advanced search Search tips

Issue 854908 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jul 3
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Feature

Blocking:
issue 787993



Sign in to add a comment

Make powerd let Chrome defer screen dimming

Project Member Reported by derat@chromium.org, Jun 21 2018

Issue description

powerd should emit a new ScreenDimImminent D-Bus signal shortly before it plans to dim the screen. When Chrome sees this, it will have a chance to call a new DeferScreenDim D-Bus method exported by powerd. If this is called, powerd will defer screen dimming at most once; otherwise the screen will be dimmed like normal.

See http://doc/1wBdnowPGwhWwT_FnhlGYy0e3POkNpPOeh021wO9s3HM and http://doc/1y1uT-ZXDKrj89_dnpd_Yfr8A7Yhk5uXxpNsP0zNLMS4 for more details.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jun 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/system_api/+/f05c58b1e0caa619384eef965fbde28a0c8e57e2

commit f05c58b1e0caa619384eef965fbde28a0c8e57e2
Author: Daniel Erat <derat@chromium.org>
Date: Tue Jun 26 19:51:55 2018

system_api: Add ScreenDimImminent and DeferScreenDim.

Add constants for a new powerd D-Bus ScreenDimImminent
signal and DeferScreenDim method.

BUG= chromium:854908 
TEST=built it

Change-Id: Iee1e53751721f11b613831cff9816850607bc946
Reviewed-on: https://chromium-review.googlesource.com/1114125
Commit-Ready: Dan Erat <derat@chromium.org>
Tested-by: Dan Erat <derat@chromium.org>
Reviewed-by: Jia Meng <jiameng@chromium.org>
Reviewed-by: Dan Erat <derat@chromium.org>

[modify] https://crrev.com/f05c58b1e0caa619384eef965fbde28a0c8e57e2/dbus/power_manager/dbus-constants.h

Project Member

Comment 2 by bugdroid1@chromium.org, Jun 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/3ed093be3468ac16aed56465252e042bbd71c14c

commit 3ed093be3468ac16aed56465252e042bbd71c14c
Author: Daniel Erat <derat@chromium.org>
Date: Tue Jun 26 19:51:56 2018

power: Emit ScreenDimImminent D-Bus signal.

Update powerd's StateController class to emit an empty
ScreenDimImminent D-Bus signal five seconds before it plans
to dim the screen in response to user inactivity.

BUG= chromium:854908 
TEST=added unit tests; also manually tested by running:
       dbus-monitor --system \
         "type='signal',sender='org.chromium.PowerManager'"
     and verifying that i see a ScreenDimImminent signal get
     emitted soon after after locking the screen (i.e. just
     before the screen is dimmed)
CQ-DEPEND=Iee1e53751721f11b613831cff9816850607bc946

Change-Id: I60ee4e87e535c2123f2be588844842229afde7df
Reviewed-on: https://chromium-review.googlesource.com/1114130
Commit-Ready: Dan Erat <derat@chromium.org>
Tested-by: Dan Erat <derat@chromium.org>
Reviewed-by: Jia Meng <jiameng@chromium.org>
Reviewed-by: Dan Erat <derat@chromium.org>

[modify] https://crrev.com/3ed093be3468ac16aed56465252e042bbd71c14c/power_manager/powerd/policy/state_controller_unittest.cc
[modify] https://crrev.com/3ed093be3468ac16aed56465252e042bbd71c14c/power_manager/powerd/policy/state_controller.cc
[modify] https://crrev.com/3ed093be3468ac16aed56465252e042bbd71c14c/power_manager/powerd/policy/state_controller.h

Project Member

Comment 3 by bugdroid1@chromium.org, Jun 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/e61964935662fb41f4966e31ccd74818e9ef4e4d

commit e61964935662fb41f4966e31ccd74818e9ef4e4d
Author: Daniel Erat <derat@chromium.org>
Date: Thu Jun 28 05:07:45 2018

power: Add DeferScreenDim D-Bus method.

Make powerd export a DeferScreenDim D-Bus method that Chrome
can call to defer dimming the screen (and performing other
inactivity-triggered actions) after receiving a
ScreenDimImminent signal.

BUG= chromium:854908 
TEST=added unit tests; also manually tested by waiting for
     ScreenDimImminent and then running:
     dbus-send --type=method_call --system --print-reply \
       --dest=org.chromium.PowerManager \
       /org/chromium/PowerManager \
       org.chromium.PowerManager.DeferScreenDim

Change-Id: I5a2a60618de1541b195d0b857970c051c2d7a1e4
Reviewed-on: https://chromium-review.googlesource.com/1116068
Commit-Ready: Dan Erat <derat@chromium.org>
Tested-by: Dan Erat <derat@chromium.org>
Reviewed-by: Jia Meng <jiameng@chromium.org>
Reviewed-by: Dan Erat <derat@chromium.org>

[modify] https://crrev.com/e61964935662fb41f4966e31ccd74818e9ef4e4d/power_manager/powerd/policy/state_controller_unittest.cc
[modify] https://crrev.com/e61964935662fb41f4966e31ccd74818e9ef4e4d/power_manager/powerd/policy/state_controller.cc
[modify] https://crrev.com/e61964935662fb41f4966e31ccd74818e9ef4e4d/power_manager/powerd/policy/state_controller.h

Project Member

Comment 4 by bugdroid1@chromium.org, Jul 3

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

commit dee97bf10a386d12fe36e51f3d65c30a903b6d52
Author: Daniel Erat <derat@chromium.org>
Date: Tue Jul 03 00:10:46 2018

chromeos: Add screen-dim deferring to PowerManagerClient.

Make PowerManagerClient notify its observers about
ScreenDimImminent D-Bus signals from powerd, and expose a
new method that calls powerd's DeferScreenDim D-Bus method.

Bug:  854908 
Change-Id: I28db70981ad44c6073db4ef90dd94180665012af
Reviewed-on: https://chromium-review.googlesource.com/1123410
Reviewed-by: Jia Meng <jiameng@chromium.org>
Commit-Queue: Dan Erat <derat@chromium.org>
Cr-Commit-Position: refs/heads/master@{#572051}
[modify] https://crrev.com/dee97bf10a386d12fe36e51f3d65c30a903b6d52/chromeos/dbus/fake_power_manager_client.cc
[modify] https://crrev.com/dee97bf10a386d12fe36e51f3d65c30a903b6d52/chromeos/dbus/fake_power_manager_client.h
[modify] https://crrev.com/dee97bf10a386d12fe36e51f3d65c30a903b6d52/chromeos/dbus/power_manager_client.cc
[modify] https://crrev.com/dee97bf10a386d12fe36e51f3d65c30a903b6d52/chromeos/dbus/power_manager_client.h

Status: Fixed (was: Started)

Sign in to add a comment