Index: ui/events/ozone/evdev/input_controller_evdev.cc |
diff --git a/ui/events/ozone/evdev/input_controller_evdev.cc b/ui/events/ozone/evdev/input_controller_evdev.cc |
index 65ca67ec8cc4ebd86ff926c4fc819b87851ae2ce..8f135530f0f90670a7d34e2efddbdbb6921e27c8 100644 |
--- a/ui/events/ozone/evdev/input_controller_evdev.cc |
+++ b/ui/events/ozone/evdev/input_controller_evdev.cc |
@@ -7,7 +7,8 @@ |
#include <linux/input.h> |
#include <vector> |
-#include "ui/events/ozone/evdev/event_factory_evdev.h" |
+#include "ui/events/ozone/evdev/input_device_factory_evdev.h" |
+#include "ui/events/ozone/evdev/keyboard_evdev.h" |
#include "ui/events/ozone/evdev/mouse_button_map_evdev.h" |
#if defined(USE_EVDEV_GESTURES) |
@@ -45,7 +46,6 @@ void SetGestureBoolProperty(GesturePropertyProvider* provider, |
} // namespace |
InputControllerEvdev::InputControllerEvdev( |
- EventFactoryEvdev* event_factory, |
KeyboardEvdev* keyboard, |
MouseButtonMapEvdev* button_map |
#if defined(USE_EVDEV_GESTURES) |
@@ -53,7 +53,7 @@ InputControllerEvdev::InputControllerEvdev( |
GesturePropertyProvider* gesture_property_provider |
#endif |
) |
- : event_factory_(event_factory), |
+ : input_device_factory_(nullptr), |
keyboard_(keyboard), |
button_map_(button_map) |
#if defined(USE_EVDEV_GESTURES) |
@@ -66,12 +66,21 @@ InputControllerEvdev::InputControllerEvdev( |
InputControllerEvdev::~InputControllerEvdev() { |
} |
+void InputControllerEvdev::SetInputDeviceFactory( |
+ InputDeviceFactoryEvdev* input_device_factory) { |
+ input_device_factory_ = input_device_factory; |
+} |
+ |
bool InputControllerEvdev::HasMouse() { |
- return event_factory_->GetDeviceIdsByType(DT_MOUSE, NULL); |
+ if (!input_device_factory_) |
+ return false; |
+ return input_device_factory_->GetDeviceIdsByType(DT_MOUSE, NULL); |
} |
bool InputControllerEvdev::HasTouchpad() { |
- return event_factory_->GetDeviceIdsByType(DT_TOUCHPAD, NULL); |
+ if (!input_device_factory_) |
+ return false; |
+ return input_device_factory_->GetDeviceIdsByType(DT_TOUCHPAD, NULL); |
} |
bool InputControllerEvdev::IsCapsLockEnabled() { |
@@ -105,28 +114,35 @@ void InputControllerEvdev::GetAutoRepeatRate(base::TimeDelta* delay, |
} |
void InputControllerEvdev::DisableInternalTouchpad() { |
- event_factory_->DisableInternalTouchpad(); |
+ if (input_device_factory_) |
+ input_device_factory_->DisableInternalTouchpad(); |
} |
void InputControllerEvdev::EnableInternalTouchpad() { |
- event_factory_->EnableInternalTouchpad(); |
+ if (input_device_factory_) |
+ input_device_factory_->EnableInternalTouchpad(); |
} |
void InputControllerEvdev::DisableInternalKeyboardExceptKeys( |
scoped_ptr<std::set<DomCode>> excepted_keys) { |
- event_factory_->DisableInternalKeyboardExceptKeys(excepted_keys.Pass()); |
+ if (input_device_factory_) |
+ input_device_factory_->DisableInternalKeyboardExceptKeys( |
alexst (slow to review)
2015/01/27 19:31:41
nit: I prefer a set of curly braces once it become
spang
2015/01/28 01:40:46
Done.
|
+ excepted_keys.Pass()); |
} |
void InputControllerEvdev::EnableInternalKeyboard() { |
- event_factory_->EnableInternalKeyboard(); |
+ if (input_device_factory_) |
+ input_device_factory_->EnableInternalKeyboard(); |
} |
void InputControllerEvdev::SetIntPropertyForOneType(const EventDeviceType type, |
const std::string& name, |
int value) { |
+ if (!input_device_factory_) |
+ return; |
#if defined(USE_EVDEV_GESTURES) |
std::vector<int> ids; |
- event_factory_->GetDeviceIdsByType(type, &ids); |
+ input_device_factory_->GetDeviceIdsByType(type, &ids); |
for (size_t i = 0; i < ids.size(); ++i) { |
SetGestureIntProperty(gesture_property_provider_, ids[i], name, value); |
} |
@@ -139,9 +155,11 @@ void InputControllerEvdev::SetIntPropertyForOneType(const EventDeviceType type, |
void InputControllerEvdev::SetBoolPropertyForOneType(const EventDeviceType type, |
const std::string& name, |
bool value) { |
+ if (!input_device_factory_) |
+ return; |
#if defined(USE_EVDEV_GESTURES) |
std::vector<int> ids; |
- event_factory_->GetDeviceIdsByType(type, &ids); |
+ input_device_factory_->GetDeviceIdsByType(type, &ids); |
for (size_t i = 0; i < ids.size(); ++i) { |
SetGestureBoolProperty(gesture_property_provider_, ids[i], name, value); |
} |