6822 Commits

Author SHA1 Message Date
Mitchell Hashimoto
16f5890724 termio: delete old impl 2024-07-13 15:20:39 -07:00
Mitchell Hashimoto
b3c2479f87 termio: move subprocess out to its own file 2024-07-13 15:20:38 -07:00
Mitchell Hashimoto
2e62e3354b termio: cleanup more state 2024-07-13 15:19:39 -07:00
Mitchell Hashimoto
bfbbe1485e termio: queueWrite no longer uses EventData 2024-07-13 15:19:38 -07:00
Mitchell Hashimoto
ffaf020576 termio: move stream handler to dedicated file, remove dep on EventData 2024-07-13 15:19:38 -07:00
Mitchell Hashimoto
e51180e4a9 termio: changeConfig on reader data 2024-07-13 15:19:38 -07:00
Mitchell Hashimoto
4e6e0f90c7 termio: remove data field 2024-07-13 15:19:38 -07:00
Mitchell Hashimoto
c4484938c5 termio: wip but it builds 2024-07-13 15:19:38 -07:00
Mitchell Hashimoto
49c92fd0e6 termio: rename Exec to Termio throughout 2024-07-13 15:19:37 -07:00
Mitchell Hashimoto
8a5826b525 Merge pull request #1941 from ThatOneCalculator/patch-1
docs: AUR package
2024-07-12 14:52:33 -07:00
Mitchell Hashimoto
ef5491ed50 Merge pull request #1946 from ghostty-org/tmuxcc
Tmux Control Mode Parser (ONLY the parser)
2024-07-12 14:50:09 -07:00
Mitchell Hashimoto
9e5e7e6480 Merge pull request #1937 from rockorager/gtk-split-opacity
gtk: implement unfocused-split opacity and fill
2024-07-12 14:14:10 -07:00
Mitchell Hashimoto
df088c67f4 terminal/tmux: block output notifications 2024-07-12 14:04:56 -07:00
Mitchell Hashimoto
057dc32c71 terminal/tmux: many more notifications 2024-07-12 11:57:37 -07:00
Mitchell Hashimoto
bc7bc15120 terminal/tmux: parse session-changed notification 2024-07-12 10:22:59 -07:00
Mitchell Hashimoto
8c3559ecff terminal: move tmux control mode parsing out to dedicated file 2024-07-12 09:49:59 -07:00
Mitchell Hashimoto
1ea25c5c64 terminal: tmux parsing handles begin/end blocks 2024-07-11 20:53:50 -07:00
Mitchell Hashimoto
f4db5009d6 terminal: dcs state cleanup in deinit 2024-07-11 19:09:55 -07:00
Mitchell Hashimoto
88d055452b terminal: tmux enter/exit 2024-07-11 19:02:33 -07:00
Mitchell Hashimoto
ff43609097 terminal: boilerplate for tmux control mode parsing 2024-07-11 18:58:25 -07:00
Mitchell Hashimoto
f375bf009c terminal: all DCS events can produce a command 2024-07-11 18:53:42 -07:00
Mitchell Hashimoto
01e1538ad3 terminal: dcs put can return a command 2024-07-11 18:42:22 -07:00
Mitchell Hashimoto
38d33a761b terminal: test DCS to make sure we don't regress 2024-07-11 18:34:05 -07:00
Mitchell Hashimoto
c28470e98a terminal: DCS parses params correctly 2024-07-11 18:29:14 -07:00
Kainoa Kanter
d0bf2c6ac0 docs: AUR package
After finding out about ghostty from Jarred Sumner's Twitter, I immediately searched the AUR for a package and found `ghostty-git`, which should be perfect for keeping up with development as `-git` packages can be set to update with new pushes when updating your system!
2024-07-11 15:17:59 -07:00
Mitchell Hashimoto
113efbb102 Merge pull request #1940 from shekhirin/keycallback-method-doc
docs(surface): remove `keyCallback` return type doc
2024-07-11 14:00:19 -07:00
Alexey Shekhirin
447c324c4d docs(surface): keyCallback return value is self-descriptive 2024-07-11 20:24:09 +01:00
Mitchell Hashimoto
a73c9d9727 Merge pull request #1936 from gpanders/context-menu-split
macos: add split menu items to context menu
2024-07-11 09:58:52 -07:00
Tim Culverhouse
76df732169 gtk: add unfocused_widget when split created from menu
When a split is created from a menu action, the focus is lost before the
split is made which prevents the surface from having the
unfocused_widget. Move the logic to add the unfocused_widget to the
overlay to an exported function which is called when the split is
created.
2024-07-11 10:29:40 -05:00
Tim Culverhouse
fc3d885022 gtk: remove unused css class on GtkNotebook 2024-07-11 08:34:51 -05:00
Tim Culverhouse
11c2ae1007 gtk: use GtkDrawingArea to dim unfocused split
Refactor the GTK unfocused split code to use a GtkDrawingArea widget to
dim the unfocused split. The GtkDrawingArea is added to the overlay and
a CSS style is used to give it a background color and opacity. This
aligns with the macOS design of drawing on top of the surface. In GTK,
we don't need to actually draw a rectangle because we can apply CSS
directly to the widget.
2024-07-11 08:28:47 -05:00
Tim Culverhouse
f04fe01ac6 gtk: improve readability of runtime css fmt 2024-07-10 14:17:58 -05:00
Tim Culverhouse
d1d3de758c gtk: prevent CSS collision on notebook stack
Add a class to the GtkNotebook which holds our tabs so we can more
precisely set the background color of just this `stack`. A collision was
occurring with the menu widgets, which are also a `stack`.
2024-07-10 13:56:03 -05:00
Tim Culverhouse
6c40cd963d gtk: implement unfocused-split opacity and fill
For a long time, us GTK users have been subject to lesser UX by not
knowing which split was focused. Improve the GTK UX by implementing both
unfocused-split-opacity and unfocused-split-fill. This is implemented by
setting the background-color of the notebook stack, and conditionally
applying a new css class "unfocused-split" to the unfocused split.
2024-07-10 12:56:09 -05:00
Gregory Anders
c9c7b3803e macos: add split menu items to context menu 2024-07-10 08:47:04 -05:00
Mitchell Hashimoto
b1677b8900 Merge pull request #1932 from ghostty-org/urllen
macOS: URL preview limited to one line, truncate
2024-07-09 09:34:18 -07:00
Mitchell Hashimoto
53fbed492b apprt/gtk: ellipsize URLs in middle to show end 2024-07-09 09:26:07 -07:00
Mitchell Hashimoto
eaa7a3f69c macos: left hover needs to be higher Z so it takes mouse priority 2024-07-09 09:18:32 -07:00
Mitchell Hashimoto
4d3797c15e macos: limit URL preview to a single line, ellipses in middle 2024-07-09 09:15:45 -07:00
Mitchell Hashimoto
205bbc35f0 Merge pull request #1929 from qwerasd205/reflow-fix
Reflow rework, various fixes
2024-07-09 09:08:45 -07:00
Mitchell Hashimoto
54034468b7 terminal: remove errdefer deleted call for refcountedset 2024-07-09 09:07:28 -07:00
Mitchell Hashimoto
0acdea646b Merge pull request #1923 from antonk52/docs/window-decoration
docs: warn about `window-decoration` disables tabs functionality
2024-07-09 08:34:34 -07:00
Mitchell Hashimoto
4d1d5f282a Merge pull request #1931 from jparise/shell-features-true-false
config: document true/false for shell-integration-features
2024-07-09 07:59:04 -07:00
Jon Parise
91b56e2494 config: document true/false for shell-integration-features 2024-07-09 10:52:20 -04:00
Mitchell Hashimoto
68599244fe Merge pull request #1930 from jparise/packed-struct-true-false
cli: boolean value support for packed structs
2024-07-09 07:11:43 -07:00
Jon Parise
9de940cbbf cli: boolean value support for packed structs
Allow standalone boolean values like "true" and "false" to turn on or
off all of the struct's fields.
2024-07-09 09:08:27 -04:00
Anton Kastritskii
d97910a4e8 docs: fix typo 2024-07-09 10:51:51 +01:00
Qwerasd
8589f2c0fb terminal/PageList: rework reflow logic to fix issues
Reflow logic now lives inside of ReflowCursor. This fixes multiple
issues with the previous implementation, and is more straightforward
in how it works. The old impl resulted in fragmentation of pages,
leading to unbounded memory growth when resizing repeatedly.

Also improves the preserved_cursor logic in `resizeCols`.
2024-07-08 22:35:15 -04:00
Qwerasd
10dbca9464 terminal/PageList: fix some incorrect test expectations 2024-07-08 22:29:55 -04:00
Qwerasd
be99e50c50 terminal/PageList: add method for logging debug diagrams 2024-07-08 22:28:16 -04:00