diff options
Diffstat (limited to 'include/cru/win/native/input_method.hpp')
-rw-r--r-- | include/cru/win/native/input_method.hpp | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/include/cru/win/native/input_method.hpp b/include/cru/win/native/input_method.hpp index a0b18d63..7dc9526a 100644 --- a/include/cru/win/native/input_method.hpp +++ b/include/cru/win/native/input_method.hpp @@ -10,10 +10,8 @@ #include <imm.h> namespace cru::platform::native::win { -class WinNativeWindow; - class WinInputMethodContextRef : public WinNativeResource, - public IInputMethodContextRef { + public virtual IInputMethodContextRef { public: WinInputMethodContextRef(WinNativeWindow* window); @@ -53,4 +51,19 @@ class WinInputMethodContextRef : public WinNativeResource, Event<std::nullptr_t> composition_end_event_; Event<std::string> composition_text_change_event_; }; + +class WinInputMethodManager : public WinNativeResource, + public virtual IInputMethodManager { + public: + WinInputMethodManager(WinUiApplication* application); + + CRU_DELETE_COPY(WinInputMethodManager) + CRU_DELETE_MOVE(WinInputMethodManager) + + ~WinInputMethodManager() override; + + public: + std::unique_ptr<IInputMethodContextRef> GetContext( + INativeWindow* window) override; +}; } // namespace cru::platform::native::win |