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

Unified Diff: remoting/client/input/keyboard_interpreter.h

Issue 2868383003: [CRD iOS] Send key events to the session. (Closed)
Patch Set: Adding the interface for ClientInputInjector, removing the direct link between client and client/in… Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: remoting/client/input/keyboard_interpreter.h
diff --git a/remoting/client/input/keyboard_interpreter.h b/remoting/client/input/keyboard_interpreter.h
new file mode 100644
index 0000000000000000000000000000000000000000..bd1d4da41596e0da17f1bc8313ab683077ef8ee1
--- /dev/null
+++ b/remoting/client/input/keyboard_interpreter.h
@@ -0,0 +1,36 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef REMOTING_CLIENT_INPUT_KEYBOARD_INTERPRETER_H_
+#define REMOTING_CLIENT_INPUT_KEYBOARD_INTERPRETER_H_
+
+#include <string>
+
+#include "base/macros.h"
+
+namespace remoting {
+
+class KeyboardInputStrategy;
+class ClientInputInjector;
+
+// This is a class for interpreting raw keyboard input, it will delegate
+// handling of text events to the selected keyboard input strategy.
+class KeyboardInterpreter {
+ public:
+ explicit KeyboardInterpreter(ClientInputInjector* input_injector);
+ ~KeyboardInterpreter();
+
+ // Delegates to |KeyboardInputStrategy| to covert and send the input.
+ void HandleTextEvent(const std::string& text, uint8_t modifiers);
+ // Delegates to |KeyboardInputStrategy| to covert and send the delete.
+ void HandleDeleteEvent(uint8_t modifiers);
+
+ private:
+ std::unique_ptr<KeyboardInputStrategy> input_strategy_;
+
+ DISALLOW_COPY_AND_ASSIGN(KeyboardInterpreter);
+};
+
+} // namespace remoting
+#endif // REMOTING_CLIENT_INPUT_KEYBOARD_INTERPRETER_H_

Powered by Google App Engine
This is Rietveld 408576698