diff options
author | Tadeo Kondrak <me@tadeo.ca> | 2021-02-08 11:35:05 -0700 |
---|---|---|
committer | Tudor Brindus <me@tbrindus.ca> | 2021-02-15 16:45:35 -0500 |
commit | c88f7ad1d0a59fc0994ae353551133733de6ee07 (patch) | |
tree | af9d4ae55ba7fdb9fadf1d3941af05c07426717a /sway | |
parent | b0e8f4ade2e6e7831671faa05bdfd2cac0059adf (diff) |
text_input: Only send surrounding_text and content_type if supported
Diffstat (limited to 'sway')
-rw-r--r-- | sway/input/text_input.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/sway/input/text_input.c b/sway/input/text_input.c index 70659712..2a8f6222 100644 --- a/sway/input/text_input.c +++ b/sway/input/text_input.c @@ -92,13 +92,18 @@ static void relay_send_im_state(struct sway_input_method_relay *relay, return; } // TODO: only send each of those if they were modified - wlr_input_method_v2_send_surrounding_text(input_method, - input->current.surrounding.text, input->current.surrounding.cursor, - input->current.surrounding.anchor); + if (input->active_features & WLR_TEXT_INPUT_V3_FEATURE_SURROUNDING_TEXT) { + wlr_input_method_v2_send_surrounding_text(input_method, + input->current.surrounding.text, input->current.surrounding.cursor, + input->current.surrounding.anchor); + } wlr_input_method_v2_send_text_change_cause(input_method, input->current.text_change_cause); - wlr_input_method_v2_send_content_type(input_method, - input->current.content_type.hint, input->current.content_type.purpose); + if (input->active_features & WLR_TEXT_INPUT_V3_FEATURE_CONTENT_TYPE) { + wlr_input_method_v2_send_content_type(input_method, + input->current.content_type.hint, + input->current.content_type.purpose); + } wlr_input_method_v2_send_done(input_method); // TODO: pass intent, display popup size } |