summaryrefslogtreecommitdiffstats
path: root/content/browser/devtools
diff options
context:
space:
mode:
Diffstat (limited to 'content/browser/devtools')
-rw-r--r--content/browser/devtools/devtools_power_handler.cc18
-rw-r--r--content/browser/devtools/devtools_power_handler.h2
2 files changed, 20 insertions, 0 deletions
diff --git a/content/browser/devtools/devtools_power_handler.cc b/content/browser/devtools/devtools_power_handler.cc
index 8915c03..d71482f 100644
--- a/content/browser/devtools/devtools_power_handler.cc
+++ b/content/browser/devtools/devtools_power_handler.cc
@@ -21,6 +21,11 @@ DevToolsPowerHandler::DevToolsPowerHandler() {
RegisterCommandHandler(devtools::Power::canProfilePower::kName,
base::Bind(&DevToolsPowerHandler::OnCanProfilePower,
base::Unretained(this)));
+ // TODO(vivekg): Replace hardcoded "Power.getAccuracyLevel" with
+ // devtools::Power::getAccuracyLevel::kName once crrev.com/336713005 lands
+ RegisterCommandHandler("Power.getAccuracyLevel" ,
+ base::Bind(&DevToolsPowerHandler::OnGetAccuracyLevel,
+ base::Unretained(this)));
}
DevToolsPowerHandler::~DevToolsPowerHandler() {
@@ -80,6 +85,19 @@ DevToolsPowerHandler::OnCanProfilePower(
return command->SuccessResponse(result);
}
+scoped_refptr<DevToolsProtocol::Response>
+DevToolsPowerHandler::OnGetAccuracyLevel(
+ scoped_refptr<DevToolsProtocol::Command> command) {
+ if (PowerProfilerService::GetInstance()->IsAvailable()) {
+ base::DictionaryValue* result = new base::DictionaryValue();
+ result->SetString(
+ devtools::kResult,
+ PowerProfilerService::GetInstance()->GetAccuracyLevel());
+ return command->SuccessResponse(result);
+ }
+ return command->InternalErrorResponse("Power profiler service unavailable");
+}
+
void DevToolsPowerHandler::OnClientDetached() {
PowerProfilerService::GetInstance()->RemoveObserver(this);
}
diff --git a/content/browser/devtools/devtools_power_handler.h b/content/browser/devtools/devtools_power_handler.h
index 6042eab..25498bf 100644
--- a/content/browser/devtools/devtools_power_handler.h
+++ b/content/browser/devtools/devtools_power_handler.h
@@ -31,6 +31,8 @@ class DevToolsPowerHandler
scoped_refptr<DevToolsProtocol::Command> command);
scoped_refptr<DevToolsProtocol::Response> OnCanProfilePower(
scoped_refptr<DevToolsProtocol::Command> command);
+ scoped_refptr<DevToolsProtocol::Response> OnGetAccuracyLevel(
+ scoped_refptr<DevToolsProtocol::Command> command);
DISALLOW_COPY_AND_ASSIGN(DevToolsPowerHandler);
};