--- /dev/null
+#include "DSWaylandTextInputManager.h"
+#include "DSWaylandTextInputManagerPrivate.h"
+#include "DSWaylandTextInput.h"
+#include "DSWaylandTextInputPrivate.h"
+
+namespace display_server {
+
+DSWaylandTextInputManagerPrivate::DSWaylandTextInputManagerPrivate(DSWaylandTextInputManager *p_ptr)
+ : DSObjectPrivate(p_ptr),
+ __p_ptr(p_ptr)
+{
+}
+
+DSWaylandTextInputManagerPrivate::~DSWaylandTextInputManagerPrivate()
+{
+}
+
+void DSWaylandTextInputManagerPrivate::text_input_manager_create_text_input(Resource *resource, uint32_t id)
+{
+}
+
+
+DSWaylandTextInputManager::DSWaylandTextInputManager()
+ : DSObject(), _d_ptr(std::make_unique<DSWaylandTextInputManagerPrivate>(this))
+{
+}
+
+DSWaylandTextInputManager::~DSWaylandTextInputManager()
+{
+}
+
+
+DSWaylandTextInputPrivate::DSWaylandTextInputPrivate(DSWaylandTextInput *p_ptr)
+ : DSObjectPrivate(p_ptr),
+ __p_ptr(p_ptr)
+{
+}
+
+DSWaylandTextInputPrivate::~DSWaylandTextInputPrivate()
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_destroy(Resource *resource)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_activate(Resource *resource, struct ::wl_resource *seat, struct ::wl_resource *surface)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_deactivate(Resource *resource, struct ::wl_resource *seat)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_show_input_panel(Resource *resource)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_hide_input_panel(Resource *resource)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_reset(Resource *resource)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_set_content_type(Resource *resource, uint32_t hint, uint32_t purpose)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_set_cursor_rectangle(Resource *resource, int32_t x, int32_t y, int32_t width, int32_t height)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_set_preferred_language(Resource *resource, const std::string &language)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_commit_state(Resource *resource, uint32_t serial)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_invoke_action(Resource *resource, uint32_t button, uint32_t index)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_set_return_key_type(Resource *resource, uint32_t return_key_type)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_set_return_key_disabled(Resource *resource, uint32_t return_key_disabled)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_set_input_panel_data(Resource *resource, const std::string &input_panel_data, uint32_t input_panel_length)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_bidi_direction(Resource *resource, uint32_t direction)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_set_cursor_position(Resource *resource, uint32_t cursor_position)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_process_input_device_event(Resource *resource, uint32_t event_type, const std::string &event_data, uint32_t event_length)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_filter_key_event(Resource *resource, uint32_t serial, uint32_t time, const std::string &keyname, uint32_t state, uint32_t modifiers, const std::string &dev_name, uint32_t dev_class, uint32_t dev_subclass, uint32_t keycode)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_get_hide_permission(Resource *resource)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_set_capital_mode(Resource *resource, uint32_t mode)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_prediction_hint(Resource *resource, const std::string &text)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_set_mime_type(Resource *resource, const std::string &type)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_set_input_panel_position(Resource *resource, uint32_t x, uint32_t y)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_finalize_content(Resource *resource, const std::string &text, uint32_t cursor_position)
+{
+}
+
+void DSWaylandTextInputPrivate::text_input_prediction_hint_data(Resource *resource, const std::string &key, const std::string &value)
+{
+}
+
+
+DSWaylandTextInput::DSWaylandTextInput()
+ : DSObject(), _d_ptr(std::make_unique<DSWaylandTextInputPrivate>(this))
+{
+}
+
+DSWaylandTextInput::~DSWaylandTextInput()
+{
+}
+
+}
\ No newline at end of file
--- /dev/null
+#ifndef __DS_WAYLAND_TEXT_INPUT_H__
+#define __DS_WAYLAND_TEXT_INPUT_H__
+
+#include "DSCore.h"
+#include "DSObject.h"
+
+namespace display_server
+{
+
+class DSWaylandTextInputPrivate;
+
+class DS_DECL_EXPORT DSWaylandTextInput : public DSObject
+{
+DS_PIMPL_USE_PRIVATE(DSWaylandTextInput);
+public:
+ DSWaylandTextInput();
+ ~DSWaylandTextInput() override;
+
+protected:
+
+private:
+
+};
+
+}
+
+#endif //__DS_WAYLAND_TEXT_INPUT_H__
--- /dev/null
+#ifndef __DS_WAYLAND_TEXT_INPUT_MANAGER_H__
+#define __DS_WAYLAND_TEXT_INPUT_MANAGER_H__
+
+#include "DSCore.h"
+#include "DSObject.h"
+
+namespace display_server
+{
+
+class DSWaylandTextInputManagerPrivate;
+
+class DS_DECL_EXPORT DSWaylandTextInputManager : public DSObject
+{
+DS_PIMPL_USE_PRIVATE(DSWaylandTextInputManager);
+public:
+ DSWaylandTextInputManager();
+ ~DSWaylandTextInputManager() override;
+
+protected:
+
+private:
+
+};
+
+}
+
+#endif //__DS_WAYLAND_TEXT_INPUT_MANAGER_H__
--- /dev/null
+#ifndef __DS_WAYLAND_TEXT_INPUT_MANAGER_PRIVATE_H__
+#define __DS_WAYLAND_TEXT_INPUT_MANAGER_PRIVATE_H__
+
+#include "dswayland-server-text.h"
+
+#include "DSCore.h"
+#include "DSObjectPrivate.h"
+#include "DSWaylandTextInputManager.h"
+
+namespace display_server
+{
+
+class DS_DECL_EXPORT DSWaylandTextInputManagerPrivate : public DSObjectPrivate, public DSWaylandServer::wl_text_input_manager
+{
+DS_PIMPL_USE_PUBLIC(DSWaylandTextInputManager);
+public:
+ DSWaylandTextInputManagerPrivate(DSWaylandTextInputManager *p_ptr);
+ ~DSWaylandTextInputManagerPrivate() override;
+
+protected:
+ void text_input_manager_create_text_input(Resource *resource, uint32_t id);
+};
+
+}
+
+#endif //__DS_WAYLAND_TEXT_INPUT_MANAGER_PRIVATE_H__
+
--- /dev/null
+#ifndef __DS_WAYLAND_TEXT_INPUT_PRIVATE_H__
+#define __DS_WAYLAND_TEXT_INPUT_PRIVATE_H__
+
+#include "dswayland-server-text.h"
+
+#include "DSCore.h"
+#include "DSObjectPrivate.h"
+#include "DSWaylandTextInput.h"
+
+namespace display_server
+{
+
+class DS_DECL_EXPORT DSWaylandTextInputPrivate : public DSObjectPrivate, public DSWaylandServer::wl_text_input
+{
+DS_PIMPL_USE_PUBLIC(DSWaylandTextInput);
+public:
+ DSWaylandTextInputPrivate(DSWaylandTextInput *p_ptr);
+ ~DSWaylandTextInputPrivate() override;
+
+protected:
+ void text_input_destroy(Resource *resource);
+ void text_input_activate(Resource *resource, struct ::wl_resource *seat, struct ::wl_resource *surface);
+ void text_input_deactivate(Resource *resource, struct ::wl_resource *seat);
+ void text_input_show_input_panel(Resource *resource);
+ void text_input_hide_input_panel(Resource *resource);
+ void text_input_reset(Resource *resource);
+ void text_input_set_content_type(Resource *resource, uint32_t hint, uint32_t purpose);
+ void text_input_set_cursor_rectangle(Resource *resource, int32_t x, int32_t y, int32_t width, int32_t height);
+ void text_input_set_preferred_language(Resource *resource, const std::string &language);
+ void text_input_commit_state(Resource *resource, uint32_t serial);
+ void text_input_invoke_action(Resource *resource, uint32_t button, uint32_t index);
+ void text_input_set_return_key_type(Resource *resource, uint32_t return_key_type);
+ void text_input_set_return_key_disabled(Resource *resource, uint32_t return_key_disabled);
+ void text_input_set_input_panel_data(Resource *resource, const std::string &input_panel_data, uint32_t input_panel_length);
+ void text_input_bidi_direction(Resource *resource, uint32_t direction);
+ void text_input_set_cursor_position(Resource *resource, uint32_t cursor_position);
+ void text_input_process_input_device_event(Resource *resource, uint32_t event_type, const std::string &event_data, uint32_t event_length);
+ void text_input_filter_key_event(Resource *resource, uint32_t serial, uint32_t time, const std::string &keyname, uint32_t state, uint32_t modifiers, const std::string &dev_name, uint32_t dev_class, uint32_t dev_subclass, uint32_t keycode);
+ void text_input_get_hide_permission(Resource *resource);
+ void text_input_set_capital_mode(Resource *resource, uint32_t mode);
+ void text_input_prediction_hint(Resource *resource, const std::string &text);
+ void text_input_set_mime_type(Resource *resource, const std::string &type);
+ void text_input_set_input_panel_position(Resource *resource, uint32_t x, uint32_t y);
+ void text_input_finalize_content(Resource *resource, const std::string &text, uint32_t cursor_position);
+ void text_input_prediction_hint_data(Resource *resource, const std::string &key, const std::string &value);
+};
+
+}
+
+#endif //__DS_WAYLAND_TEXT_INPUT_PRIVATE_H__
+
'DSWaylandServer/DSWaylandInputMethodPrivate.h',
'DSWaylandServer/DSWaylandInputMethod.h',
'DSWaylandServer/DSWaylandInputMethod.cpp',
+ 'DSWaylandServer/DSWaylandTextInputManagerPrivate.h',
+ 'DSWaylandServer/DSWaylandTextInputManager.h',
+ 'DSWaylandServer/DSWaylandTextInputPrivate.h',
+ 'DSWaylandServer/DSWaylandTextInput.h',
+ 'DSWaylandServer/DSWaylandTextInput.cpp',
]
libds_srcs += libds_wayland_srcs