diff options
Diffstat (limited to 'include/cru/platform')
-rw-r--r-- | include/cru/platform/native/base.hpp | 1 | ||||
-rw-r--r-- | include/cru/platform/native/input_method.hpp | 6 | ||||
-rw-r--r-- | include/cru/platform/native/ui_application.hpp | 1 |
3 files changed, 5 insertions, 3 deletions
diff --git a/include/cru/platform/native/base.hpp b/include/cru/platform/native/base.hpp index 883a9450..3cbf77c5 100644 --- a/include/cru/platform/native/base.hpp +++ b/include/cru/platform/native/base.hpp @@ -11,6 +11,7 @@ struct IUiApplication; struct INativeWindow; struct INativeWindowResolver; struct IInputMethodManager; +struct IInputMethodContextRef; struct Dpi { float x; diff --git a/include/cru/platform/native/input_method.hpp b/include/cru/platform/native/input_method.hpp index 6ca85852..cce10d93 100644 --- a/include/cru/platform/native/input_method.hpp +++ b/include/cru/platform/native/input_method.hpp @@ -8,7 +8,7 @@ namespace cru::platform::native { // It is a reference, so there is a ref count, remember to destroy it to release // the ref after use. -struct IInputMethodContextRef : INativeResource { +struct IInputMethodContextRef : virtual INativeResource { // Return true if you should draw composition text manually. Return false if // system will take care of that for you. virtual bool ShouldManuallyDrawCompositionText() = 0; @@ -17,7 +17,7 @@ struct IInputMethodContextRef : INativeResource { // Get the composition string. virtual std::string GetCompositionText() = 0; // Set the candidate window lefttop. Use this method to prepare typing. - virtual void SetCandidateWindowPosition(const Point& point); + virtual void SetCandidateWindowPosition(const Point& point) = 0; // Triggered when user starts composition. virtual IEvent<std::nullptr_t>* CompositionStartEvent() = 0; // Triggered when user stops composition. @@ -27,7 +27,7 @@ struct IInputMethodContextRef : INativeResource { virtual IEvent<std::string>* CompositionTextChangeEvent() = 0; }; -struct IInputMethodManager : INativeResource { +struct IInputMethodManager : virtual INativeResource { // Get a reference of context of a window. virtual std::unique_ptr<IInputMethodContextRef> GetContext( INativeWindow* window) = 0; diff --git a/include/cru/platform/native/ui_application.hpp b/include/cru/platform/native/ui_application.hpp index 0825251e..92222929 100644 --- a/include/cru/platform/native/ui_application.hpp +++ b/include/cru/platform/native/ui_application.hpp @@ -45,5 +45,6 @@ struct IUiApplication : public virtual INativeResource { virtual cru::platform::graph::IGraphFactory* GetGraphFactory() = 0; virtual ICursorManager* GetCursorManager() = 0; + virtual IInputMethodManager* GetInputMethodManager() = 0; }; } // namespace cru::platform::native |