1701 Commits

Author SHA1 Message Date
Mitchell Hashimoto
2be4eb0da7 font/shaper: split runs at selection boundaries 2023-03-23 10:24:22 -07:00
Mitchell Hashimoto
d4cbe88c98 selection: containedRow for getting the row that contains a screen point 2023-03-23 10:01:09 -07:00
Mitchell Hashimoto
530f28a706 Merge pull request #126 from mitchellh/macos-intel
renderer/metal: fix color bug on macOS 13 Intel.
2023-03-22 14:43:38 -07:00
Mitchell Hashimoto
7ae200a1dc renderer/metal: fix color bug on macOS 13 Intel.
See the associated test.
2023-03-22 14:22:12 -07:00
Mitchell Hashimoto
5f5700259f shift-click extends selection 2023-03-21 21:12:15 -07:00
Mitchell Hashimoto
ae0738f0a9 update TODO 2023-03-21 21:03:08 -07:00
Mitchell Hashimoto
35fe74e599 core: scroll the surface when mouse is pulled above or below surface 2023-03-21 21:02:25 -07:00
Mitchell Hashimoto
bf699dd381 terminal: selection within logic is more correct, better tested
Fixes #108
2023-03-21 19:55:56 -07:00
Mitchell Hashimoto
0be6d64dd8 Merge pull request #123 from mitchellh/selection
Scrolling screen with full scrollback should modify selection if set
2023-03-21 11:13:39 -07:00
Mitchell Hashimoto
70236ebc33 terminal: screen scroll with full scrollback modifies selection 2023-03-21 10:59:44 -07:00
Mitchell Hashimoto
dfb40426a0 move selection to screen 2023-03-21 10:43:50 -07:00
Mitchell Hashimoto
88a7b3067a ci: add timeout to release 2023-03-20 20:59:33 -07:00
Mitchell Hashimoto
d9f41b4fa6 scroll viewport to bottom on certain character write events
Fixes #120
2023-03-20 20:58:00 -07:00
Mitchell Hashimoto
0cd6e08ca3 if no argv, then don't load CLI args 2023-03-20 15:51:27 -07:00
Mitchell Hashimoto
fe034fe524 Merge pull request #118 from mitchellh/focus
terminal: implement focus event mode 1004
2023-03-20 15:27:24 -07:00
Mitchell Hashimoto
b1af02941a terminal: implement focus event mode 1004
https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h3-FocusIn_FocusOut
2023-03-20 15:20:14 -07:00
Mitchell Hashimoto
05ae626047 update zig-objc 2023-03-20 14:45:46 -07:00
Mitchell Hashimoto
ce10d875b6 Merge pull request #117 from mitchellh/config-stuff
Reloadable Configuration
2023-03-19 12:32:23 -07:00
Mitchell Hashimoto
f28b677417 don't look up default shell from SHELL env if shell is set 2023-03-19 12:13:56 -07:00
Mitchell Hashimoto
b0b3b0af2d update config messages use pointers now to make messages small again 2023-03-19 10:48:42 -07:00
Mitchell Hashimoto
638e05454f termio: allow write req pool to grow if needed
This may be necessary if large amounts of data is being written (i.e. a
large clipboard paste). The pool is never shrunk again for now but once
the writes go through the buffer items will of course be reused so its
unlikely to need to continue growing.
2023-03-19 10:27:08 -07:00
Mitchell Hashimoto
e84fb55e2c surface mouse_interval is dynamically update-able 2023-03-19 10:14:28 -07:00
Mitchell Hashimoto
6f4e913182 termio/exec: comment about what we're updating 2023-03-19 10:11:32 -07:00
Mitchell Hashimoto
8f0be3ad9e termio: use DerivedConfig 2023-03-19 10:09:17 -07:00
Mitchell Hashimoto
7eda21d544 surface propagates new config to renderer 2023-03-19 09:50:55 -07:00
Mitchell Hashimoto
f34da17a11 renderer: use a DerivedConfig to avoid the main Config pointer 2023-03-19 09:50:54 -07:00
Mitchell Hashimoto
b26e51d222 macos: implement config reloading callback 2023-03-19 09:50:54 -07:00
Mitchell Hashimoto
a5cfd4b04b ghostty.h: add missing reload callback 2023-03-19 09:50:54 -07:00
Mitchell Hashimoto
8d3f40fa41 apprt/embedded: reload config support 2023-03-19 09:50:54 -07:00
Mitchell Hashimoto
f5c1dfa374 reload_config keybinding (defaults to ctrl+alt+super+space) 2023-03-19 09:50:53 -07:00
Mitchell Hashimoto
a9928cfb90 implement reload_config app message 2023-03-19 09:50:18 -07:00
Mitchell Hashimoto
3e1f975551 move config loading into apprt to prep for reloading 2023-03-19 09:50:17 -07:00
Mitchell Hashimoto
8cb9ee5d59 make it claer the config pointer is not stable after renderer/IO init 2023-03-19 09:49:44 -07:00
Mitchell Hashimoto
9b10b5d716 surface doesn't store a pointer to Config anymore 2023-03-19 09:49:44 -07:00
Mitchell Hashimoto
3ce7baf30e config: dedicated load func so we can reload 2023-03-19 09:49:44 -07:00
Mitchell Hashimoto
11e4215f9f config: implement comparison for keybinding change 2023-03-19 09:49:44 -07:00
Mitchell Hashimoto
0d93da5f30 config: changed() to test if a specific key has changed 2023-03-19 09:49:44 -07:00
Mitchell Hashimoto
16166b6297 config: implement change iterator (one todo) 2023-03-19 09:49:44 -07:00
Mitchell Hashimoto
510f4b4699 config supports clone() operation for a deep copy 2023-03-19 09:49:42 -07:00
Mitchell Hashimoto
f03d765020 Merge pull request #114 from mitchellh/process-exit
Detect command exit and close surface
2023-03-18 19:59:55 -07:00
Mitchell Hashimoto
b3c568813a update TODO! 2023-03-18 19:47:24 -07:00
Mitchell Hashimoto
ddbc0dc586 apprt/embedded: incorrect function call for new close surface 2023-03-18 19:40:42 -07:00
Mitchell Hashimoto
a950adbf17 apprt/gtk: do not use unique app mode (do not set ID for GApplication)
Fixes #101. This prevents single-instance GTK mode from being enabled.
For now, this makes the most sense in my opinion but we can revisit
later.
2023-03-18 19:37:00 -07:00
Mitchell Hashimoto
91c9655475 remove unused function, make apprt surface close mandatory 2023-03-18 19:33:08 -07:00
Mitchell Hashimoto
6b61a2449a termio: no need to close pty primary when process exits 2023-03-18 19:30:01 -07:00
Mitchell Hashimoto
00c837e0d2 apprt: all implement close surface 2023-03-18 19:25:54 -07:00
Mitchell Hashimoto
d83bf5aeb4 termio: close surface on process exit 2023-03-18 19:21:28 -07:00
Mitchell Hashimoto
872c1211f5 pty: deinit should close child end 2023-03-18 19:15:29 -07:00
Mitchell Hashimoto
679f07605e termio: detect child process exit 2023-03-18 18:58:34 -07:00
Mitchell Hashimoto
bae92c5d47 Merge pull request #113 from mitchellh/alt-scroll
Mouse Alt Scroll (mode 1007) and Horizontal Scroll
2023-03-17 19:30:39 -07:00