aboutsummaryrefslogtreecommitdiff
path: root/src/osx/gui/InputMethod.mm
diff options
context:
space:
mode:
Diffstat (limited to 'src/osx/gui/InputMethod.mm')
-rw-r--r--src/osx/gui/InputMethod.mm15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/osx/gui/InputMethod.mm b/src/osx/gui/InputMethod.mm
index ec8d194c..56ac2c56 100644
--- a/src/osx/gui/InputMethod.mm
+++ b/src/osx/gui/InputMethod.mm
@@ -28,19 +28,14 @@ void OsxInputMethodContextPrivate::RaiseCompositionEvent() { composition_event_.
void OsxInputMethodContextPrivate::RaiseTextEvent(StringView text) { text_event_.Raise(text); }
void OsxInputMethodContextPrivate::PerformSel(SEL sel) {
- [window_->p_->GetNSWindow() performSelector:sel];
+ // [window_->p_->GetNSWindow() performSelector:sel];
}
-void OsxInputMethodContextPrivate::Activate() {
- auto input_context = [[window_->p_->GetNSWindow() contentView] inputContext];
- Ensures(input_context);
- [input_context activate];
-}
+void OsxInputMethodContextPrivate::Activate() { is_enabled_ = true; }
void OsxInputMethodContextPrivate::Deactivate() {
- auto input_context = [[window_->p_->GetNSWindow() contentView] inputContext];
- Ensures(input_context);
- [input_context deactivate];
+ input_method_context_->CompleteComposition();
+ is_enabled_ = false;
}
}
@@ -90,4 +85,6 @@ IEvent<std::nullptr_t>* OsxInputMethodContext::CompositionEvent() {
}
IEvent<StringView>* OsxInputMethodContext::TextEvent() { return &p_->text_event_; }
+
+bool OsxInputMethodContext::IsEnabled() { return p_->is_enabled_; }
}