Panics with input text field
While playing with the examples/input (unmodified code) I ran into two panics.
[dependencies]
anyhow = "1.0.100"
gpui = "0.2.2"
gpui-component = "0.3.1"
cargo 1.90.0 (840b83a10 2025-07-30)
rustc 1.90.0 (1159e78c4 2025-09-14)
Distributor ID: Ubuntu
Description: Ubuntu 24.04.3 LTS
Release: 24.04
Codename: noble
Panic 1
thread 'main' panicked at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ropey-2.0.0-beta.1/src/rope.rs:694:59:
index is out of bounds
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
How to reproduce:
- Run the example with
cargo run -r - Randomly type and delete text in the input text field
- Happens rarely
Panic 2
thread 'main' panicked at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/client.rs:237:67:
Encoding Error: Utf8Error(FromUtf8Error { bytes: [168], error: Utf8Error { valid_up_to: 0, error_len: Some(1) } })
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
How to reproduce:
- Run the example with
cargo run -r - Select the text field and hold the
!key to enter a bunch of exclamations marks - Press CTRL+A
- Hint: I only seem to be able to reproduce it with when the keyboard layout is set to
German (Switzerland). It doesn't happen withEnglish (US).
My code:
use gpui::*;
use gpui_component::{
input::{InputEvent, InputState, TextInput},
*,
};
pub struct Example {
input_state: Entity<InputState>,
display_text: SharedString,
/// We need to keep the subscriptions alive with the Example entity.
///
/// So if the Example entity is dropped, the subscriptions are also dropped.
/// This is important to avoid memory leaks.
_subscriptions: Vec<Subscription>,
}
impl Example {
fn new(window: &mut Window, cx: &mut Context<Self>) -> Self {
let input_state = cx.new(|cx| InputState::new(window, cx).placeholder("Enter your name"));
let _subscriptions = vec![cx.subscribe_in(&input_state, window, {
let input_state = input_state.clone();
move |this, _, ev: &InputEvent, _window, cx| match ev {
InputEvent::Change => {
let value = input_state.read(cx).value();
this.display_text = format!("Hello, {}!", value).into();
cx.notify()
}
_ => {}
}
})];
Self {
input_state,
display_text: SharedString::default(),
_subscriptions,
}
}
}
impl Render for Example {
fn render(&mut self, _: &mut Window, _: &mut Context<Self>) -> impl IntoElement {
v_flex()
.p_5()
.gap_2()
.size_full()
.items_center()
.justify_center()
.child(TextInput::new(&self.input_state))
.child(self.display_text.clone())
}
}
fn main() {
let app = Application::new();
app.run(move |cx| {
// This must be called before using any GPUI Component features.
gpui_component::init(cx);
let window_options = WindowOptions {
window_bounds: Some(WindowBounds::centered(size(px(800.), px(600.)), cx)),
..Default::default()
};
cx.spawn(async move |cx| {
cx.open_window(window_options, |window, cx| {
let view = cx.new(|cx| Example::new(window, cx));
// This first level on the window, should be a Root.
cx.new(|cx| Root::new(view.into(), window, cx))
})?;
Ok::<_, anyhow::Error>(())
})
.detach();
});
}
I have just test on macOS, but not reproduce.
Would you please enable RUST_BACKTRACE=1 and submit more crash backtrace to me?
This is for the second panic. I can't reproduce the first one anymore
RUST_BACKTRACE=1
thread 'main' panicked at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/client.rs:237:67:
Encoding Error: Utf8Error(FromUtf8Error { bytes: [168], error: Utf8Error { valid_up_to: 0, error_len: Some(1) } })
stack backtrace:
0: __rustc::rust_begin_unwind
1: core::panicking::panic_fmt
2: core::result::unwrap_failed
3: zed_xim::client::handle_request
4: gpui::platform::linux::x11::client::X11Client::process_x11_events
5: <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events
6: calloop::loop_logic::EventLoop<Data>::run
7: <gpui::platform::linux::x11::client::X11Client as gpui::platform::linux::platform::LinuxClient>::run
8: gpui::platform::linux::platform::<impl gpui::platform::Platform for P>::run
9: gpui::app::Application::run
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
RUST_BACKTRACE=full
thread 'main' panicked at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/client.rs:237:67:
Encoding Error: Utf8Error(FromUtf8Error { bytes: [168], error: Utf8Error { valid_up_to: 0, error_len: Some(1) } })
stack backtrace:
0: 0x628fa25e5852 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hdcfcb6d4c8489523
1: 0x628fa2613153 - core::fmt::write::h8a494366950f23bb
2: 0x628fa25e0c73 - std::io::Write::write_fmt::h6556609fca33d0b1
3: 0x628fa25e56a2 - std::sys::backtrace::BacktraceLock::print::hb2a626a81e06b2dc
4: 0x628fa25e6f03 - std::panicking::default_hook::{{closure}}::h4f78485264f12d10
5: 0x628fa25e6ce5 - std::panicking::default_hook::h2c66fc99e962531d
6: 0x628fa25e7915 - std::panicking::rust_panic_with_hook::h33ac55f64bbd807d
7: 0x628fa25e76aa - std::panicking::begin_panic_handler::{{closure}}::h30e7cb89678a57fe
8: 0x628fa25e5d59 - std::sys::backtrace::__rust_end_short_backtrace::hed60f27456c16ced
9: 0x628fa25e733d - __rustc[de2ca18b4c54d5b8]::rust_begin_unwind
10: 0x628fa2610110 - core::panicking::panic_fmt::h62f63d096dd276af
11: 0x628fa2610536 - core::result::unwrap_failed::h95bc3f5a607b2c95
12: 0x628fa1994759 - zed_xim::client::handle_request::h4bb1d750b40690cf
13: 0x628fa19af1a3 - gpui::platform::linux::x11::client::X11Client::process_x11_events::h4a3faf855ef9bd9a
14: 0x628fa19c00ca - <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::hca9e2f7c0b48382a
15: 0x628fa1c1e977 - calloop::loop_logic::EventLoop<Data>::run::h4c5dcf6d6b204642
16: 0x628fa19b5641 - <gpui::platform::linux::x11::client::X11Client as gpui::platform::linux::platform::LinuxClient>::run::h9a7ff65affbdcfbc
17: 0x628fa199ae73 - gpui::platform::linux::platform::<impl gpui::platform::Platform for P>::run::hb9c3d77594190cef
18: 0x628fa14cf921 - gpui::app::Application::run::h10693890802e1809
19: 0x628fa14e81d3 - std::sys::backtrace::__rust_begin_short_backtrace::hfe1c9e4389ce9a83
20: 0x628fa14dd909 - std::rt::lang_start::{{closure}}::ha05ffc861fbec461
21: 0x628fa25d7470 - std::rt::lang_start_internal::h34f9328d113fd60a
22: 0x628fa14e5035 - main
23: 0x71623c82a1ca - __libc_start_call_main
at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
24: 0x71623c82a28b - __libc_start_main_impl
at ./csu/../csu/libc-start.c:360:3
25: 0x628fa14c0a55 - _start
26: 0x0 - <unknown>
And in debug mode:
thread 'main' panicked at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/client.rs:237:67:
Encoding Error: Utf8Error(FromUtf8Error { bytes: [168], error: Utf8Error { valid_up_to: 0, error_len: Some(1) } })
stack backtrace:
0: __rustc::rust_begin_unwind
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:697:5
1: core::panicking::panic_fmt
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panicking.rs:75:14
2: core::result::unwrap_failed
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/result.rs:1765:5
3: core::result::Result<T,E>::expect
at /home/user/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/result.rs:1119:23
4: zed_xim::client::handle_request
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/client.rs:237:67
5: zed_xim::x11rb::X11rbClient<C>::handle_xim_protocol
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/x11rb.rs:597:13
6: zed_xim::x11rb::X11rbClient<C>::filter_event
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/x11rb.rs:564:26
7: gpui::platform::linux::x11::client::X11Client::process_x11_events
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gpui-0.2.2/src/platform/linux/x11/client.rs:633:41
8: gpui::platform::linux::x11::client::X11Client::new::{{closure}}
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gpui-0.2.2/src/platform/linux/x11/client.rs:448:32
9: <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::{{closure}}
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/sources/mod.rs:327:61
10: <calloop::sources::generic::Generic<F,E> as calloop::sources::EventSource>::process_events
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/sources/generic.rs:290:9
11: <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/sources/mod.rs:327:14
12: calloop::loop_logic::EventLoop<Data>::dispatch_events
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/loop_logic.rs:445:36
13: calloop::loop_logic::EventLoop<Data>::dispatch
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/loop_logic.rs:559:14
14: calloop::loop_logic::EventLoop<Data>::run
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/loop_logic.rs:596:18
15: <gpui::platform::linux::x11::client::X11Client as gpui::platform::linux::platform::LinuxClient>::run
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gpui-0.2.2/src/platform/linux/x11/client.rs:1607:20
16: gpui::platform::linux::platform::<impl gpui::platform::Platform for P>::run
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gpui-0.2.2/src/platform/linux/platform.rs:165:9
17: gpui::app::Application::run
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gpui-0.2.2/src/app.rs:180:18
18: toki_ui::main
at ./src/main.rs:58:9
19: core::ops::function::FnOnce::call_once
at /home/user/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:253:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread 'main' panicked at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/client.rs:237:67:
Encoding Error: Utf8Error(FromUtf8Error { bytes: [168], error: Utf8Error { valid_up_to: 0, error_len: Some(1) } })
stack backtrace:
0: 0x634e3925a3a2 - std::backtrace_rs::backtrace::libunwind::trace::h2d45396358f41939
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
1: 0x634e3925a3a2 - std::backtrace_rs::backtrace::trace_unsynchronized::hffcefc0b67f1d6e2
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
2: 0x634e3925a3a2 - std::sys::backtrace::_print_fmt::hd72f71d23b436b92
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/backtrace.rs:66:9
3: 0x634e3925a3a2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hdcfcb6d4c8489523
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/backtrace.rs:39:26
4: 0x634e39288223 - core::fmt::rt::Argument::fmt::h2c56b3114963061a
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/fmt/rt.rs:173:76
5: 0x634e39288223 - core::fmt::write::h8a494366950f23bb
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/fmt/mod.rs:1468:25
6: 0x634e39255783 - std::io::default_write_fmt::ha27fbccbc65eb6fa
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/io/mod.rs:639:11
7: 0x634e39255783 - std::io::Write::write_fmt::h6556609fca33d0b1
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/io/mod.rs:1954:13
8: 0x634e3925a1f2 - std::sys::backtrace::BacktraceLock::print::hb2a626a81e06b2dc
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/backtrace.rs:42:9
9: 0x634e3925ba53 - std::panicking::default_hook::{{closure}}::h4f78485264f12d10
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:300:27
10: 0x634e3925b835 - std::panicking::default_hook::h2c66fc99e962531d
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:327:9
11: 0x634e3925c465 - std::panicking::rust_panic_with_hook::h33ac55f64bbd807d
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:833:13
12: 0x634e3925c1fa - std::panicking::begin_panic_handler::{{closure}}::h30e7cb89678a57fe
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:706:13
13: 0x634e3925a8a9 - std::sys::backtrace::__rust_end_short_backtrace::hed60f27456c16ced
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/sys/backtrace.rs:174:18
14: 0x634e3925be8d - __rustc[de2ca18b4c54d5b8]::rust_begin_unwind
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:697:5
15: 0x634e392850c0 - core::panicking::panic_fmt::h62f63d096dd276af
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/panicking.rs:75:14
16: 0x634e392855d6 - core::result::unwrap_failed::h95bc3f5a607b2c95
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/result.rs:1765:5
17: 0x634e370644bd - core::result::Result<T,E>::expect::he347e11fc53abcb6
at /home/user/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/result.rs:1119:23
18: 0x634e372784c0 - zed_xim::client::handle_request::h7f9c69787c08214b
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/client.rs:237:67
19: 0x634e372743e9 - zed_xim::x11rb::X11rbClient<C>::handle_xim_protocol::h4b9f943a652868fd
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/x11rb.rs:597:13
20: 0x634e372733a4 - zed_xim::x11rb::X11rbClient<C>::filter_event::h2e1c24f36aebfb6a
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zed-xim-0.4.0-zed/src/x11rb.rs:564:26
21: 0x634e372b61c4 - gpui::platform::linux::x11::client::X11Client::process_x11_events::h50e6f37070398a81
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gpui-0.2.2/src/platform/linux/x11/client.rs:633:41
22: 0x634e372b48de - gpui::platform::linux::x11::client::X11Client::new::{{closure}}::h556adaeb0a67012b
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gpui-0.2.2/src/platform/linux/x11/client.rs:448:32
23: 0x634e371b57d2 - <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::{{closure}}::h47765465178d4f8b
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/sources/mod.rs:327:61
24: 0x634e36c1a4a4 - <calloop::sources::generic::Generic<F,E> as calloop::sources::EventSource>::process_events::h94b82d727955f78d
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/sources/generic.rs:290:9
25: 0x634e36f0ad6b - <core::cell::RefCell<calloop::sources::DispatcherInner<S,F>> as calloop::sources::EventDispatcher<Data>>::process_events::hbb0819888a62a623
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/sources/mod.rs:327:14
26: 0x634e36f40a91 - calloop::loop_logic::EventLoop<Data>::dispatch_events::h115e439d59c3629c
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/loop_logic.rs:445:36
27: 0x634e36f4a7f0 - calloop::loop_logic::EventLoop<Data>::dispatch::h2ba451db41a673ab
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/loop_logic.rs:559:14
28: 0x634e36f48670 - calloop::loop_logic::EventLoop<Data>::run::h0c09528bc80826a9
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/calloop-0.13.0/src/loop_logic.rs:596:18
29: 0x634e372c4a3c - <gpui::platform::linux::x11::client::X11Client as gpui::platform::linux::platform::LinuxClient>::run::h95adb5400e677516
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gpui-0.2.2/src/platform/linux/x11/client.rs:1607:20
30: 0x634e37296e03 - gpui::platform::linux::platform::<impl gpui::platform::Platform for P>::run::h4685993431691983
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gpui-0.2.2/src/platform/linux/platform.rs:165:9
31: 0x634e3615210a - gpui::app::Application::run::h6589fa60b46f42bd
at /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gpui-0.2.2/src/app.rs:180:18
32: 0x634e3614ad03 - toki_ui::main::hf6407a8cfe7a284c
at /home/user/code/toki-ui/src/main.rs:58:9
33: 0x634e36149f0b - core::ops::function::FnOnce::call_once::h68e72dac23b6154a
at /home/user/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:253:5
34: 0x634e3615bf2e - std::sys::backtrace::__rust_begin_short_backtrace::h40c3de61a7bd07dc
at /home/user/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/backtrace.rs:158:18
35: 0x634e36151841 - std::rt::lang_start::{{closure}}::hcf500a6d1207bc76
at /home/user/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:206:18
36: 0x634e3924c370 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h638295a043b40957
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/ops/function.rs:290:21
37: 0x634e3924c370 - std::panicking::catch_unwind::do_call::hbd68098bdea1ca50
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:589:40
38: 0x634e3924c370 - std::panicking::catch_unwind::h50591d85bf847c7c
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:552:19
39: 0x634e3924c370 - std::panic::catch_unwind::h2487b4c4f2ae22c6
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panic.rs:359:14
40: 0x634e3924c370 - std::rt::lang_start_internal::{{closure}}::h61f0945cc6c9a811
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/rt.rs:175:24
41: 0x634e3924c370 - std::panicking::catch_unwind::do_call::h34b9c3722acd6bd1
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:589:40
42: 0x634e3924c370 - std::panicking::catch_unwind::hf9a822ea043fb0d6
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panicking.rs:552:19
43: 0x634e3924c370 - std::panic::catch_unwind::h5b3cac802237ed89
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/panic.rs:359:14
44: 0x634e3924c370 - std::rt::lang_start_internal::h34f9328d113fd60a
at /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/std/src/rt.rs:171:5
45: 0x634e36151827 - std::rt::lang_start::h18c6db10fc00255f
at /home/user/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:205:5
46: 0x634e3614ad2e - main
47: 0x71fc99a2a1ca - __libc_start_call_main
at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
48: 0x71fc99a2a28b - __libc_start_main_impl
at ./csu/../csu/libc-start.c:360:3
49: 0x634e36148e25 - _start
50: 0x0 - <unknown>
The panic happens in zed-xim-0.4.0-zed/src/client.rs on line 237 with preedit_string containing ASCII code 168 which is ¨ (German umlaut). This is the same key which types ! with my keyboard layout.
I could narrow down the reproduction steps:
- select the text field.
- Type the
¨key (German umlaut) - It does not happen when I copy-paste the character
- I can only reproduce it on Ubuntu. It doesn't happen on MacOS