Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "config.h" | 5 #include "config.h" |
| 6 #include "modules/device_orientation/DeviceOrientationInspectorAgent.h" | 6 #include "modules/device_orientation/DeviceOrientationInspectorAgent.h" |
| 7 | 7 |
| 8 #include "core/dom/Document.h" | 8 #include "core/dom/Document.h" |
| 9 #include "core/frame/LocalFrame.h" | 9 #include "core/frame/LocalFrame.h" |
| 10 #include "core/inspector/InspectorController.h" | 10 #include "core/inspector/InspectorController.h" |
| 11 #include "core/inspector/InspectorState.h" | |
| 11 #include "core/page/Page.h" | 12 #include "core/page/Page.h" |
| 12 | 13 |
| 13 #include "modules/device_orientation/DeviceOrientationController.h" | 14 #include "modules/device_orientation/DeviceOrientationController.h" |
| 14 #include "modules/device_orientation/DeviceOrientationData.h" | 15 #include "modules/device_orientation/DeviceOrientationData.h" |
| 15 | 16 |
| 16 namespace WebCore { | 17 namespace WebCore { |
| 17 | 18 |
| 19 namespace DeviceOrientationInspectorAgentState { | |
| 20 static const char alpha[] = "alpha"; | |
|
timvolodine
2014/03/27 00:04:30
I think you need to indent this, because the scope
dgozman
2014/03/27 09:30:33
There are similar namespaces in the code without a
| |
| 21 static const char beta[] = "beta"; | |
| 22 static const char gamma[] = "gamma"; | |
| 23 static const char overrideEnabled[] = "overrideEnabled"; | |
| 24 } | |
| 25 | |
| 18 void DeviceOrientationInspectorAgent::provideTo(Page& page) | 26 void DeviceOrientationInspectorAgent::provideTo(Page& page) |
| 19 { | 27 { |
| 20 OwnPtr<DeviceOrientationInspectorAgent> deviceOrientationAgent(adoptPtr(new DeviceOrientationInspectorAgent(page))); | 28 OwnPtr<DeviceOrientationInspectorAgent> deviceOrientationAgent(adoptPtr(new DeviceOrientationInspectorAgent(page))); |
| 21 page.inspectorController().registerModuleAgent(deviceOrientationAgent.releas e()); | 29 page.inspectorController().registerModuleAgent(deviceOrientationAgent.releas e()); |
| 22 } | 30 } |
| 23 | 31 |
| 24 DeviceOrientationInspectorAgent::~DeviceOrientationInspectorAgent() | 32 DeviceOrientationInspectorAgent::~DeviceOrientationInspectorAgent() |
| 25 { | 33 { |
| 26 } | 34 } |
| 27 | 35 |
| 28 DeviceOrientationInspectorAgent::DeviceOrientationInspectorAgent(Page& page) | 36 DeviceOrientationInspectorAgent::DeviceOrientationInspectorAgent(Page& page) |
| 29 : InspectorBaseAgent<DeviceOrientationInspectorAgent>("DeviceOrientation") | 37 : InspectorBaseAgent<DeviceOrientationInspectorAgent>("DeviceOrientation") |
| 30 , m_page(page) | 38 , m_page(page) |
| 31 { | 39 { |
| 32 } | 40 } |
| 33 | 41 |
| 42 DeviceOrientationController& DeviceOrientationInspectorAgent::controller() | |
| 43 { | |
| 44 ASSERT(m_page.mainFrame()->document()); | |
| 45 return DeviceOrientationController::from(*m_page.mainFrame()->document()); | |
| 46 } | |
| 47 | |
| 34 void DeviceOrientationInspectorAgent::setDeviceOrientationOverride(ErrorString* error, double alpha, double beta, double gamma) | 48 void DeviceOrientationInspectorAgent::setDeviceOrientationOverride(ErrorString* error, double alpha, double beta, double gamma) |
| 35 { | 49 { |
| 36 ASSERT(m_page.mainFrame()->document()); | 50 m_state->setBoolean(DeviceOrientationInspectorAgentState::overrideEnabled, t rue); |
| 37 DeviceOrientationController& controller = DeviceOrientationController::from( *m_page.mainFrame()->document()); | 51 m_state->setDouble(DeviceOrientationInspectorAgentState::alpha, alpha); |
| 38 controller.didChangeDeviceOrientation(DeviceOrientationData::create(true, al pha, true, beta, true, gamma).get()); | 52 m_state->setDouble(DeviceOrientationInspectorAgentState::beta, beta); |
| 53 m_state->setDouble(DeviceOrientationInspectorAgentState::gamma, gamma); | |
| 54 controller().setOverride(DeviceOrientationData::create(true, alpha, true, be ta, true, gamma).get()); | |
| 39 } | 55 } |
| 40 | 56 |
| 41 void DeviceOrientationInspectorAgent::clearDeviceOrientationOverride(ErrorString * error) | 57 void DeviceOrientationInspectorAgent::clearDeviceOrientationOverride(ErrorString * error) |
| 42 { | 58 { |
| 43 setDeviceOrientationOverride(error, 0, 0, 0); | 59 m_state->setBoolean(DeviceOrientationInspectorAgentState::overrideEnabled, f alse); |
| 60 controller().clearOverride(); | |
| 61 } | |
| 62 | |
| 63 void DeviceOrientationInspectorAgent::clearFrontend() | |
| 64 { | |
| 65 m_state->setBoolean(DeviceOrientationInspectorAgentState::overrideEnabled, f alse); | |
| 66 controller().clearOverride(); | |
| 67 } | |
| 68 | |
| 69 void DeviceOrientationInspectorAgent::restore() | |
| 70 { | |
| 71 if (m_state->getBoolean(DeviceOrientationInspectorAgentState::overrideEnable d)) { | |
| 72 double alpha = m_state->getDouble(DeviceOrientationInspectorAgentState:: alpha); | |
| 73 double beta = m_state->getDouble(DeviceOrientationInspectorAgentState::b eta); | |
| 74 double gamma = m_state->getDouble(DeviceOrientationInspectorAgentState:: gamma); | |
| 75 controller().setOverride(DeviceOrientationData::create(true, alpha, true , beta, true, gamma).get()); | |
| 76 } | |
| 77 } | |
| 78 | |
| 79 void DeviceOrientationInspectorAgent::didCommitLoadForMainFrame() | |
| 80 { | |
| 81 // New document in main frame - apply override there. | |
| 82 // No need to cleanup previous one, as it's already gone. | |
| 83 restore(); | |
| 44 } | 84 } |
| 45 | 85 |
| 46 } // namespace WebCore | 86 } // namespace WebCore |
| OLD | NEW |