Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(35)

Side by Side Diff: chromeos/dbus/power_manager_client.cc

Issue 12093058: Screensaver implementation for ChromeOS. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: build fixes. Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chromeos/chromeos_switches.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chromeos/dbus/power_manager_client.h" 5 #include "chromeos/dbus/power_manager_client.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
11 #include "base/format_macros.h" 11 #include "base/format_macros.h"
12 #include "base/memory/scoped_ptr.h" 12 #include "base/memory/scoped_ptr.h"
13 #include "base/message_loop.h"
13 #include "base/observer_list.h" 14 #include "base/observer_list.h"
14 #include "base/stringprintf.h" 15 #include "base/stringprintf.h"
15 #include "base/threading/platform_thread.h" 16 #include "base/threading/platform_thread.h"
16 #include "base/time.h" 17 #include "base/time.h"
17 #include "base/timer.h" 18 #include "base/timer.h"
18 #include "chromeos/dbus/power_manager/input_event.pb.h" 19 #include "chromeos/dbus/power_manager/input_event.pb.h"
19 #include "chromeos/dbus/power_manager/suspend.pb.h" 20 #include "chromeos/dbus/power_manager/suspend.pb.h"
20 #include "chromeos/dbus/power_state_control.pb.h" 21 #include "chromeos/dbus/power_state_control.pb.h"
21 #include "chromeos/dbus/power_supply_properties.pb.h" 22 #include "chromeos/dbus/power_supply_properties.pb.h"
22 #include "chromeos/dbus/video_activity_update.pb.h" 23 #include "chromeos/dbus/video_activity_update.pb.h"
(...skipping 776 matching lines...) Expand 10 before | Expand all | Expand 10 after
799 } 800 }
800 801
801 virtual void RequestRestart() OVERRIDE {} 802 virtual void RequestRestart() OVERRIDE {}
802 virtual void RequestShutdown() OVERRIDE {} 803 virtual void RequestShutdown() OVERRIDE {}
803 804
804 virtual void CalculateIdleTime(const CalculateIdleTimeCallback& callback) 805 virtual void CalculateIdleTime(const CalculateIdleTimeCallback& callback)
805 OVERRIDE { 806 OVERRIDE {
806 callback.Run(0); 807 callback.Run(0);
807 } 808 }
808 809
809 virtual void RequestIdleNotification(int64 threshold) OVERRIDE {} 810 virtual void RequestIdleNotification(int64 threshold) OVERRIDE {
811 MessageLoop::current()->PostDelayedTask(
812 FROM_HERE,
813 base::Bind(&PowerManagerClientStubImpl::TriggerIdleNotify,
814 base::Unretained(this),
815 threshold),
816 base::TimeDelta::FromMilliseconds(threshold));
817 }
818
810 virtual void NotifyUserActivity( 819 virtual void NotifyUserActivity(
811 const base::TimeTicks& last_activity_time) OVERRIDE {} 820 const base::TimeTicks& last_activity_time) OVERRIDE {}
812 virtual void NotifyVideoActivity( 821 virtual void NotifyVideoActivity(
813 const base::TimeTicks& last_activity_time, 822 const base::TimeTicks& last_activity_time,
814 bool is_fullscreen) OVERRIDE {} 823 bool is_fullscreen) OVERRIDE {}
815 virtual void RequestPowerStateOverrides( 824 virtual void RequestPowerStateOverrides(
816 uint32 request_id, 825 uint32 request_id,
817 base::TimeDelta duration, 826 base::TimeDelta duration,
818 int overrides, 827 int overrides,
819 const PowerStateRequestIdCallback& callback) OVERRIDE { 828 const PowerStateRequestIdCallback& callback) OVERRIDE {
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
862 FOR_EACH_OBSERVER(Observer, observers_, PowerChanged(status_)); 871 FOR_EACH_OBSERVER(Observer, observers_, PowerChanged(status_));
863 } 872 }
864 873
865 void SetBrightness(double percent, bool user_initiated) { 874 void SetBrightness(double percent, bool user_initiated) {
866 brightness_ = std::min(std::max(0.0, percent), 100.0); 875 brightness_ = std::min(std::max(0.0, percent), 100.0);
867 int brightness_level = static_cast<int>(brightness_); 876 int brightness_level = static_cast<int>(brightness_);
868 FOR_EACH_OBSERVER(Observer, observers_, 877 FOR_EACH_OBSERVER(Observer, observers_,
869 BrightnessChanged(brightness_level, user_initiated)); 878 BrightnessChanged(brightness_level, user_initiated));
870 } 879 }
871 880
881 void TriggerIdleNotify(int64 threshold) {
882 FOR_EACH_OBSERVER(Observer, observers_, IdleNotify(threshold));
883 }
884
872 bool discharging_; 885 bool discharging_;
873 int battery_percentage_; 886 int battery_percentage_;
874 double brightness_; 887 double brightness_;
875 int pause_count_; 888 int pause_count_;
876 ObserverList<Observer> observers_; 889 ObserverList<Observer> observers_;
877 base::RepeatingTimer<PowerManagerClientStubImpl> timer_; 890 base::RepeatingTimer<PowerManagerClientStubImpl> timer_;
878 PowerSupplyStatus status_; 891 PowerSupplyStatus status_;
879 uint32 next_request_id_; 892 uint32 next_request_id_;
880 }; 893 };
881 894
882 PowerManagerClient::PowerManagerClient() { 895 PowerManagerClient::PowerManagerClient() {
883 } 896 }
884 897
885 PowerManagerClient::~PowerManagerClient() { 898 PowerManagerClient::~PowerManagerClient() {
886 } 899 }
887 900
888 PowerManagerClient* PowerManagerClient::Create( 901 PowerManagerClient* PowerManagerClient::Create(
889 DBusClientImplementationType type, 902 DBusClientImplementationType type,
890 dbus::Bus* bus) { 903 dbus::Bus* bus) {
891 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) 904 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION)
892 return new PowerManagerClientImpl(bus); 905 return new PowerManagerClientImpl(bus);
893 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type); 906 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type);
894 return new PowerManagerClientStubImpl(); 907 return new PowerManagerClientStubImpl();
895 } 908 }
896 909
897 } // namespace chromeos 910 } // namespace chromeos
OLDNEW
« no previous file with comments | « chromeos/chromeos_switches.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698