+#ifndef MSP_GLTK_SYSTEMKEYBOARDINPUT_H_
+#define MSP_GLTK_SYSTEMKEYBOARDINPUT_H_
+
+#include <msp/input/keyboard.h>
+#include "inputmethod.h"
+
+namespace Msp {
+namespace GLtk {
+
+class SystemKeyboardInput: public InputMethod, public sigc::trackable
+{
+private:
+ Input::Keyboard &keyboard;
+
+public:
+ SystemKeyboardInput(Root &, Input::Keyboard &);
+
+private:
+ bool key_press(unsigned);
+ bool key_release(unsigned);
+ bool character(StringCodec::unichar);
+};
+
+} // namespace GLtk
+} // namespace Msp
+
+#endif