From 4220a3bd3a2f7c450b93449d6c2dc4de9484adc5 Mon Sep 17 00:00:00 2001 From: Jan200101 Date: Wed, 5 Jun 2024 09:10:24 +0200 Subject: [PATCH 1/2] =?UTF-8?q?inspector:=20fallback=20to=20unicode=20when?= =?UTF-8?q?=20key=20event=20is=20invalid=20This=20prevents=20non-ascii=20c?= =?UTF-8?q?haracters=20like=20=C3=96=20from=20being=20displayed=20as=20inv?= =?UTF-8?q?alid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/inspector/key.zig | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/inspector/key.zig b/src/inspector/key.zig index 0a44e2c9d..c75d0fa46 100644 --- a/src/inspector/key.zig +++ b/src/inspector/key.zig @@ -52,7 +52,18 @@ pub const Event = struct { if (self.event.mods.ctrl) try writer.writeAll("Ctrl+"); if (self.event.mods.alt) try writer.writeAll("Alt+"); if (self.event.mods.super) try writer.writeAll("Super+"); - try writer.writeAll(@tagName(self.event.key)); + + try writer.writeAll(key: { + if (self.event.key != .invalid) { + break :key @tagName(self.event.key); + } + + if (self.event.utf8.len > 0) { + break :key self.event.utf8; + } + + break :key @tagName(.invalid); + }); // Deadkey if (self.event.composing) try writer.writeAll(" (composing)"); From 9f1572918fa97514b626d800defcda16ba5c6d45 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Wed, 5 Jun 2024 09:11:44 -0700 Subject: [PATCH 2/2] bikeshed style --- src/inspector/key.zig | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/src/inspector/key.zig b/src/inspector/key.zig index c75d0fa46..9e1d6eacb 100644 --- a/src/inspector/key.zig +++ b/src/inspector/key.zig @@ -53,16 +53,11 @@ pub const Event = struct { if (self.event.mods.alt) try writer.writeAll("Alt+"); if (self.event.mods.super) try writer.writeAll("Super+"); - try writer.writeAll(key: { - if (self.event.key != .invalid) { - break :key @tagName(self.event.key); - } - - if (self.event.utf8.len > 0) { - break :key self.event.utf8; - } - - break :key @tagName(.invalid); + // Write our key. If we have an invalid key we attempt to write + // the utf8 associated with it if we have it to handle non-ascii. + try writer.writeAll(switch (self.event.key) { + .invalid => if (self.event.utf8.len > 0) self.event.utf8 else @tagName(.invalid), + else => @tagName(self.event.key), }); // Deadkey