aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/textinput.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/textinput.rs')
-rw-r--r--components/script/textinput.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/components/script/textinput.rs b/components/script/textinput.rs
index 00272be528c..2f36b08dbd9 100644
--- a/components/script/textinput.rs
+++ b/components/script/textinput.rs
@@ -6,6 +6,7 @@
use crate::clipboard_provider::ClipboardProvider;
use crate::dom::bindings::str::DOMString;
+use crate::dom::compositionevent::CompositionEvent;
use crate::dom::keyboardevent::KeyboardEvent;
use keyboard_types::{Key, KeyState, Modifiers, ShortcutMatcher};
use std::borrow::ToOwned;
@@ -831,6 +832,11 @@ impl<T: ClipboardProvider> TextInput<T> {
.unwrap()
}
+ pub fn handle_compositionend(&mut self, event: &CompositionEvent) -> KeyReaction {
+ self.insert_string(event.data());
+ KeyReaction::DispatchInput
+ }
+
/// Whether the content is empty.
pub fn is_empty(&self) -> bool {
self.lines.len() <= 1 && self.lines.get(0).map_or(true, |line| line.is_empty())