summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDr. Chat <arkolbed@gmail.com>2018-05-15 17:02:36 -0500
committerDr. Chat <arkolbed@gmail.com>2018-10-12 14:54:19 -0500
commitb97a4bbf17a4fe43938145b404c45140b378bb2f (patch)
tree0702bcf11d85e29feeb8497c94b384021973d1d6
parent7f9ed83844161c0ff0fb184dda34ead54dfd27f4 (diff)
[HID] Remove ui::Window reference from drivers that don't need it
-rw-r--r--src/xenia/hid/input_driver.cc3
-rw-r--r--src/xenia/hid/input_driver.h6
-rw-r--r--src/xenia/hid/input_system.h6
-rw-r--r--src/xenia/hid/nop/nop_hid.cc4
-rw-r--r--src/xenia/hid/nop/nop_hid.h2
-rw-r--r--src/xenia/hid/nop/nop_input_driver.cc2
-rw-r--r--src/xenia/hid/nop/nop_input_driver.h2
-rw-r--r--src/xenia/hid/winkey/winkey_input_driver.cc2
-rw-r--r--src/xenia/hid/winkey/winkey_input_driver.h5
-rw-r--r--src/xenia/hid/xinput/xinput_hid.cc4
-rw-r--r--src/xenia/hid/xinput/xinput_input_driver.h2
11 files changed, 16 insertions, 22 deletions
diff --git a/src/xenia/hid/input_driver.cc b/src/xenia/hid/input_driver.cc
index 1627d5dc4..a4a8430c5 100644
--- a/src/xenia/hid/input_driver.cc
+++ b/src/xenia/hid/input_driver.cc
@@ -12,8 +12,7 @@
namespace xe {
namespace hid {
-InputDriver::InputDriver(xe::ui::Window* window) : window_(window) {}
-
+InputDriver::InputDriver() = default;
InputDriver::~InputDriver() = default;
} // namespace hid
diff --git a/src/xenia/hid/input_driver.h b/src/xenia/hid/input_driver.h
index 6de322ab1..e05ae0aff 100644
--- a/src/xenia/hid/input_driver.h
+++ b/src/xenia/hid/input_driver.h
@@ -26,6 +26,7 @@ class InputSystem;
class InputDriver {
public:
+ InputDriver();
virtual ~InputDriver();
virtual X_STATUS Setup() = 0;
@@ -37,11 +38,6 @@ class InputDriver {
X_INPUT_VIBRATION* vibration) = 0;
virtual X_RESULT GetKeystroke(uint32_t user_index, uint32_t flags,
X_INPUT_KEYSTROKE* out_keystroke) = 0;
-
- protected:
- explicit InputDriver(xe::ui::Window* window);
-
- xe::ui::Window* window_ = nullptr;
};
} // namespace hid
diff --git a/src/xenia/hid/input_system.h b/src/xenia/hid/input_system.h
index 7632d6d34..57d93d1ec 100644
--- a/src/xenia/hid/input_system.h
+++ b/src/xenia/hid/input_system.h
@@ -18,12 +18,6 @@
#include "xenia/xbox.h"
namespace xe {
-namespace ui {
-class Window;
-} // namespace ui
-} // namespace xe
-
-namespace xe {
namespace hid {
class InputSystem {
diff --git a/src/xenia/hid/nop/nop_hid.cc b/src/xenia/hid/nop/nop_hid.cc
index 54765df5f..dcbcb226f 100644
--- a/src/xenia/hid/nop/nop_hid.cc
+++ b/src/xenia/hid/nop/nop_hid.cc
@@ -15,8 +15,8 @@ namespace xe {
namespace hid {
namespace nop {
-std::unique_ptr<InputDriver> Create(xe::ui::Window* window) {
- return std::make_unique<NopInputDriver>(window);
+std::unique_ptr<InputDriver> Create() {
+ return std::make_unique<NopInputDriver>();
}
} // namespace nop
diff --git a/src/xenia/hid/nop/nop_hid.h b/src/xenia/hid/nop/nop_hid.h
index c2ea0a037..48f55e5d9 100644
--- a/src/xenia/hid/nop/nop_hid.h
+++ b/src/xenia/hid/nop/nop_hid.h
@@ -18,7 +18,7 @@ namespace xe {
namespace hid {
namespace nop {
-std::unique_ptr<InputDriver> Create(xe::ui::Window* window);
+std::unique_ptr<InputDriver> Create();
} // namespace nop
} // namespace hid
diff --git a/src/xenia/hid/nop/nop_input_driver.cc b/src/xenia/hid/nop/nop_input_driver.cc
index bd22d65e2..535638c5e 100644
--- a/src/xenia/hid/nop/nop_input_driver.cc
+++ b/src/xenia/hid/nop/nop_input_driver.cc
@@ -15,7 +15,7 @@ namespace xe {
namespace hid {
namespace nop {
-NopInputDriver::NopInputDriver(xe::ui::Window* window) : InputDriver(window) {}
+NopInputDriver::NopInputDriver() {}
NopInputDriver::~NopInputDriver() = default;
diff --git a/src/xenia/hid/nop/nop_input_driver.h b/src/xenia/hid/nop/nop_input_driver.h
index be949f016..70d6e7df9 100644
--- a/src/xenia/hid/nop/nop_input_driver.h
+++ b/src/xenia/hid/nop/nop_input_driver.h
@@ -18,7 +18,7 @@ namespace nop {
class NopInputDriver : public InputDriver {
public:
- explicit NopInputDriver(xe::ui::Window* window);
+ NopInputDriver();
~NopInputDriver() override;
X_STATUS Setup() override;
diff --git a/src/xenia/hid/winkey/winkey_input_driver.cc b/src/xenia/hid/winkey/winkey_input_driver.cc
index 30ce09309..d98d26a84 100644
--- a/src/xenia/hid/winkey/winkey_input_driver.cc
+++ b/src/xenia/hid/winkey/winkey_input_driver.cc
@@ -19,7 +19,7 @@ namespace hid {
namespace winkey {
WinKeyInputDriver::WinKeyInputDriver(xe::ui::Window* window)
- : InputDriver(window), packet_number_(1) {
+ : window_(window), packet_number_(1) {
// Register a key listener.
window_->on_key_down.AddListener([this](ui::KeyEvent* evt) {
auto global_lock = global_critical_region_.Acquire();
diff --git a/src/xenia/hid/winkey/winkey_input_driver.h b/src/xenia/hid/winkey/winkey_input_driver.h
index 2bc923f39..ad31d6192 100644
--- a/src/xenia/hid/winkey/winkey_input_driver.h
+++ b/src/xenia/hid/winkey/winkey_input_driver.h
@@ -16,6 +16,10 @@
#include "xenia/hid/input_driver.h"
namespace xe {
+namespace ui {
+class Window;
+} // namespace ui
+
namespace hid {
namespace winkey {
@@ -41,6 +45,7 @@ class WinKeyInputDriver : public InputDriver {
bool prev_state = false; // down(true) or up(false)
};
+ xe::ui::Window* window_ = nullptr;
xe::global_critical_region global_critical_region_;
std::queue<KeyEvent> key_events_;
diff --git a/src/xenia/hid/xinput/xinput_hid.cc b/src/xenia/hid/xinput/xinput_hid.cc
index 093d266f0..e3cd62a50 100644
--- a/src/xenia/hid/xinput/xinput_hid.cc
+++ b/src/xenia/hid/xinput/xinput_hid.cc
@@ -15,8 +15,8 @@ namespace xe {
namespace hid {
namespace xinput {
-std::unique_ptr<InputDriver> Create(xe::ui::Window* window) {
- return std::make_unique<XInputInputDriver>(window);
+std::unique_ptr<InputDriver> Create() {
+ return std::make_unique<XInputInputDriver>();
}
} // namespace xinput
diff --git a/src/xenia/hid/xinput/xinput_input_driver.h b/src/xenia/hid/xinput/xinput_input_driver.h
index fbf75c422..bc904b6c0 100644
--- a/src/xenia/hid/xinput/xinput_input_driver.h
+++ b/src/xenia/hid/xinput/xinput_input_driver.h
@@ -18,7 +18,7 @@ namespace xinput {
class XInputInputDriver : public InputDriver {
public:
- explicit XInputInputDriver(xe::ui::Window* window);
+ XInputInputDriver();
~XInputInputDriver() override;
X_STATUS Setup() override;