Mitchell Hashimoto
923df53825
ci: use custom token for release so it isn't rate limited
2023-08-12 11:41:22 -07:00
Mitchell Hashimoto
63fa34ef6b
terminal: avoid underflow on resize, tests added
2023-08-12 11:30:07 -07:00
Mitchell Hashimoto
6fec9f8096
Merge pull request #273 from mitchellh/wide-resize
...
Fix numerous edge cases with resizing columns with soft-wrapped wide characters (i.e. emoji)
2023-08-12 10:31:56 -07:00
Mitchell Hashimoto
9b5fd4b2ee
terminal: print wide char with 1-col width
2023-08-12 10:27:42 -07:00
Mitchell Hashimoto
71c8d5fc8e
terminal: resizing to 1 col wide with wide chars
2023-08-12 10:23:06 -07:00
Mitchell Hashimoto
44dd51a5b9
terminal: less col resizing with wide char needs to insert head spacer
2023-08-12 10:07:13 -07:00
Mitchell Hashimoto
eb10e9642c
terminal: introduce wide spacer head if reflowing wide char w/ more cols
2023-08-12 09:51:33 -07:00
Mitchell Hashimoto
3d5eda62fe
terminal: resize more cols with wide spacer head across multiple lines
2023-08-12 08:26:13 -07:00
Mitchell Hashimoto
a6af75aee4
terminal: resize more cols with wide spacer head deletes the spacer
2023-08-12 08:20:10 -07:00
Mitchell Hashimoto
3d72178ef4
terminal: delete wide char if it wraps and we delete the row above
2023-08-11 16:23:02 -07:00
Mitchell Hashimoto
8bb69045a8
terminal: allow selections outside of written area and clamp
...
This fixes a possible crash.
2023-08-11 14:21:07 -07:00
Mitchell Hashimoto
8fd772c95e
Merge pull request #271 from mitchellh/keymap
...
macos, gtk: robust keyboard layout handling
2023-08-11 13:15:25 -07:00
Mitchell Hashimoto
55778a049b
apprt/gtk, opengl: render preedit
2023-08-11 12:37:27 -07:00
Mitchell Hashimoto
d62161e2c3
support preedit text rendering in core and metal
2023-08-11 12:20:48 -07:00
Mitchell Hashimoto
65c4aada02
input: rename "unmapped" to "physical"
2023-08-11 12:02:01 -07:00
Mitchell Hashimoto
57f7a59168
input: rename Keymap to KeymapDarwin since its macos only for now
2023-08-11 12:02:01 -07:00
Mitchell Hashimoto
ce4eb2112c
core: get rid of ignore_char, apprt must handle this now
2023-08-11 12:02:01 -07:00
Mitchell Hashimoto
38477ed547
apprt/gtk: use manual translation, handle dead key states
2023-08-11 12:02:01 -07:00
Mitchell Hashimoto
e787a79702
input: printable, comment on what magic indexes mean
2023-08-11 12:02:01 -07:00
Mitchell Hashimoto
1ded176377
input: only load Keymap on darwin
2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
7ea8feea69
apprt/embedded: fix char callback ignore when key is consumed
2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
4fe739cae0
core: note when keyCallback processed the input
2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
d5df8aea9a
apprt/embedded: handle repeat events
2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
d02bf322f8
apprt/embedded: remove old _key api, new only!
2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
1e1ad7deb9
macos: use the new self-hosted translation
2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
6d439c06af
keymap had incorrect bitfield for modifiers
2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
f06fecbc43
input: associate input.Key with keycodes from Chrome
2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
1f4a80aa93
apprt/embedded: keymap state is per surface, not per app
2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
57a527b0c9
macos: detect keyboard layout change and reload the keymap
2023-08-11 12:01:59 -07:00
Mitchell Hashimoto
3d23f26326
input, macos: initial work on keymapper and macos usage of it
2023-08-11 12:01:58 -07:00
Mitchell Hashimoto
a042b5db9c
Merge pull request #270 from mitchellh/cc-hidden-inactive-cursor
...
Don't show hollow cursor in inactive windows when cursor is hidden.
2023-08-11 08:56:06 -07:00
cryptocode
6045088afc
Don't show hollow cursor in inactive windows when cursor is hidden.
...
This is the behavior of the other terminals I have, such as iTerm, allcritty, WezTerm, and Kitty. The hollow cursor is especially noticable when running in two panes,
one of them inactive with animations (such as a progress bar)
2023-08-11 17:20:03 +02:00
Mitchell Hashimoto
70efaea787
Merge pull request #269 from mitchellh/ignore-char-control
...
do not process charCallback if control character was processed
2023-08-10 12:19:58 -07:00
Mitchell Hashimoto
68cb3288be
do not process charCallback if control character was processed
...
Fixes #267
We have a mechanism `ignore_char` to ignore the `charCallback` exactly
once. It is guaranteed by all app runtimes that `keyCallback` is called
before `charCallback` and that they're called in order by key press
(you'll never get 3 `keyCallbacks` and then `charCallback` for the first
press).
We use this for example to ensure that if you bind `a` to something,
that we never actually print 'a', since the binding consumes it.
This commit sets `ignore_char` whenever we detect a key that should be
translated to a control character and written to the pty. As the comment
in the code states: we probably should've been doing this anyways. It is
a complete mystery why macOS behaves the way it does that caused us to
figure this out.
2023-08-10 11:51:11 -07:00
Mitchell Hashimoto
2704b54bc5
warn if the binary is a debug build
2023-08-09 15:18:35 -07:00
Mitchell Hashimoto
7b33ee6b71
Merge pull request #266 from mitchellh/primary-clipboard
...
Primary (selection) clipboard support
2023-08-09 15:14:59 -07:00
Mitchell Hashimoto
ecb9563f2a
apprt/glfw: warn that the macos version has bugs
2023-08-09 15:14:39 -07:00
Mitchell Hashimoto
688ab84661
apprt/embedded: allow noting that selection clipboard is not supported
2023-08-09 14:52:22 -07:00
Mitchell Hashimoto
5d6086a1b1
"copy-on-select" configuation to disable
2023-08-09 14:44:24 -07:00
Mitchell Hashimoto
afc6a9976f
apprt/embedded: support selection clipboard
2023-08-09 14:29:39 -07:00
Mitchell Hashimoto
ca008df73d
apprt/glfw: support primary clipboard
2023-08-09 14:22:17 -07:00
Mitchell Hashimoto
f012b908b7
apprt/gtk: use glfw for reading primary clipboard (see comment)
2023-08-09 14:17:03 -07:00
Mitchell Hashimoto
347c60d9bd
selection copies to the selection clipboard
2023-08-09 14:00:48 -07:00
Mitchell Hashimoto
f3996ff0f8
apprt: primary clipboard awareness (selection clipboard)
2023-08-09 13:41:22 -07:00
Mitchell Hashimoto
232bffe338
Merge pull request #264 from moderation/main
...
gtk: apply background opacity
2023-08-09 12:38:13 -07:00
moderation
b33b2bb6a4
gtk: apply background opacity
...
Signed-off-by: moderation <michael@sooper.org>
2023-08-09 12:03:05 -07:00
Mitchell Hashimoto
1bb5158185
Merge pull request #263 from mitchellh/mrn/gtk-fix-up-arrow
...
gtk: fix arrow-up stealing focus
2023-08-09 11:17:11 -07:00
Thorsten Ball
147d5b0f3e
gtk: fix arrow-up stealing focus
...
This fixes #253 -- with essentially a single line! Just took me a while
to find out where to add this line.
Turns out we already solved this problem for `<Tab>` so now we do the
same thing for `<Up>`: we tell the `GtkApplication` we handled the event
so it doesn't propagate any further.
2023-08-09 20:11:03 +02:00
Mitchell Hashimoto
0ff390919a
Merge pull request #262 from mitchellh/split-writes
...
update libxev to fix split writes on large writes (i.e. big paste)
2023-08-09 10:17:36 -07:00
Mitchell Hashimoto
6cf22f841c
ctrl+backspace should send 0x08
...
Fixes #260
2023-08-09 10:16:23 -07:00