mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-03-22 05:33:45 -04:00
url-mode: disable IME mode while URL-mode is active
This prevents the IME from stealing "our" key-presses, and thus preventing the user from opening URLs. Closes #1718, hopefully.
This commit is contained in:
parent
18b702b249
commit
8716ca5784
4 changed files with 18 additions and 1 deletions
12
url-mode.c
12
url-mode.c
|
|
@ -778,6 +778,12 @@ urls_render(struct terminal *term)
|
|||
if (tll_length(win->term->urls) == 0)
|
||||
return;
|
||||
|
||||
/* Disable IME while in URL-mode */
|
||||
if (term_ime_is_enabled(term)) {
|
||||
term->ime_reenable_after_url_mode = true;
|
||||
term_ime_disable(term);
|
||||
}
|
||||
|
||||
/* Dirty the last cursor, to ensure it is erased */
|
||||
{
|
||||
struct row *cursor_row = term->render.last_cursor.row;
|
||||
|
|
@ -861,5 +867,11 @@ urls_reset(struct terminal *term)
|
|||
term->urls_show_uri_on_jump_label = false;
|
||||
memset(term->url_keys, 0, sizeof(term->url_keys));
|
||||
|
||||
/* Re-enable IME, if it was enabled before we entered URL-mode */
|
||||
if (term->ime_reenable_after_url_mode) {
|
||||
term->ime_reenable_after_url_mode = false;
|
||||
term_ime_enable(term);
|
||||
}
|
||||
|
||||
render_refresh(term);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue