Skip to content

fix(control): preserve plain symbol key levels - #129

Merged
bvolpato merged 1 commit into
am-will:mainfrom
bvolpato:bvolpato/fix-send-key-symbol-level
Aug 1, 2026
Merged

fix(control): preserve plain symbol key levels#129
bvolpato merged 1 commit into
am-will:mainfrom
bvolpato:bvolpato/fix-send-key-symbol-level

Conversation

@bvolpato

@bvolpato bvolpato commented Aug 1, 2026

Copy link
Copy Markdown
Collaborator

Summary

Fix regression introduced by #128 where control-socket send-key retranslates plain shifted-level keysyms through level zero. For example, send-key at emits 2 instead of @.

Changes

  • preserve requested keysym when Shift is absent
  • use active GDK keymap translation only for explicit Shift
  • retain Ctrl/Alt modifiers while preserving printable symbol text
  • extend blocking live GTK smoke assertion from A! to @A!

Testing

export LD_LIBRARY_PATH="$PWD/ghostty/zig-out/lib:${LD_LIBRARY_PATH:-}"
./scripts/check.sh
LIMUX_SMOKE_PROFILE=debug ./scripts/xvfb-smoke-test.sh
shellcheck scripts/xvfb-smoke-test.sh
git diff --check

Results:

  • 296 Rust tests passed
  • 14 packaging checks passed
  • live GTK bridge produced @A! through plain and shifted send-key calls
  • independent deep review approved with no blocking findings

Did this cause any problems?

Revert this PR to restore #128 behavior.

@bvolpato
bvolpato merged commit f662544 into am-will:main Aug 1, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant