diff options
author | Midas Chien <midaschieh@google.com> | 2020-06-20 17:52:03 +0800 |
---|---|---|
committer | Midas Chien <midaschieh@google.com> | 2020-06-30 06:15:54 +0000 |
commit | 6bd8a847b8e59aafdf09feda6f52afe55ee8dde2 (patch) | |
tree | a97e06e75c1776ef40b79dfe08bc34b83472529e /power-libperfmgr/aidl/Power.cpp | |
parent | 90ef3eb2c1e44353ab97161cba7660644bc56a1c (diff) | |
download | pixel-6bd8a847b8e59aafdf09feda6f52afe55ee8dde2.tar.gz |
display: cache display lpm state to avoid set it againandroid11-dev
If current foss state same as desired state, doesn't set it again.
Bug: 148656663
Test: stress on/off battery saver and check foss state
Test: enable battery saver, stress on/off screen
Change-Id: I6298361fd6a5d6a86c94eabb71ab254507136fd3
Diffstat (limited to 'power-libperfmgr/aidl/Power.cpp')
-rw-r--r-- | power-libperfmgr/aidl/Power.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/power-libperfmgr/aidl/Power.cpp b/power-libperfmgr/aidl/Power.cpp index eba695dd..d944cf40 100644 --- a/power-libperfmgr/aidl/Power.cpp +++ b/power-libperfmgr/aidl/Power.cpp @@ -30,7 +30,7 @@ #include <utils/Log.h> #include <utils/Trace.h> -#include "disp-power/display-helper.h" +#include "disp-power/DisplayLowPower.h" namespace aidl { namespace google { @@ -43,8 +43,9 @@ constexpr char kPowerHalStateProp[] = "vendor.powerhal.state"; constexpr char kPowerHalAudioProp[] = "vendor.powerhal.audio"; constexpr char kPowerHalRenderingProp[] = "vendor.powerhal.rendering"; -Power::Power(std::shared_ptr<HintManager> hm) +Power::Power(std::shared_ptr<HintManager> hm, std::shared_ptr<DisplayLowPower> dlpw) : mHintManager(hm), + mDisplayLowPower(dlpw), mInteractionHandler(nullptr), mVRModeOn(false), mSustainedPerfModeOn(false) { @@ -90,13 +91,10 @@ ndk::ScopedAStatus Power::setMode(Mode type, bool enabled) { ATRACE_INT(toString(type).c_str(), enabled); switch (type) { case Mode::LOW_POWER: + mDisplayLowPower->SetDisplayLowPower(enabled); if (enabled) { - // Device in battery saver mode, enable display low power mode - set_display_lpm(true); mHintManager->DoHint(toString(type)); } else { - // Device exiting battery saver mode, disable display low power mode - set_display_lpm(false); mHintManager->EndHint(toString(type)); } break; |