4478 Commits

Author SHA1 Message Date
Jeffrey C. Ollie
9f0468f950 generate gresource xml and dependencies at comptime rather than hardcoding 2024-03-27 16:47:27 -05:00
Jeffrey C. Ollie
f943a4cf87 GTK: Add compiled-in GTK resources and use them for icons.
Use glib-compile-resources to compile CSS style sheets and icons into
the Ghostty GTK binary. Makes for simpler access to icons and sets
things up for customizing the look of Ghostty with CSS in the future.
The CSS style sheets are blank for now so there will be no visual
changes.
2024-03-27 16:47:26 -05:00
Mitchell Hashimoto
8d4f454e30 terminal: add integrity assertion that cursor pin matches x/y 2024-03-27 13:42:11 -07:00
Igor Anić
137359bcb5 gtk: use symbolic icon for tab close
On my system (xorg Ubuntu 24.04, Adwaita:dark theme) tab close icon was
red while in all other applications was more discrete. With adding
`-symbolic` to the icon name now looks like all other application.
2024-03-27 20:04:17 +01:00
Mitchell Hashimoto
050e6e4daa terminal: when growing rows, need to set rows before grow()
grow() will not prune pages that are needed for the active but that
requires an accurate self.rows. We were setting this too late.
2024-03-27 10:38:31 -07:00
Kevin Hovsäter
e300d4766d Add final newline to CLI output 2024-03-27 15:32:59 +01:00
Mitchell Hashimoto
caf2742b76 Merge pull request #1584 from mitchellh/paged-terminal
Low-memory terminal state implementation
2024-03-26 20:00:20 -07:00
Jon Parise
baf75dfaaf macos: configurable titlebar fonts
Add support for configurable fonts for window and tab titles. This is
only implemented for macOS (and could be macOS-only if other platforms
aren't able to support this using their windowing toolkits). It plays
nicely with regular and titlebar tabs.
2024-03-26 16:56:39 -07:00
Mitchell Hashimoto
a416d4236a remove old terminal implementation 2024-03-26 16:14:25 -07:00
Qwerasd
d17344b855 perf(terminal/page): @memset micro-optimization 2024-03-26 12:07:35 -06:00
Qwerasd
d72eb30a26 fastmem: fix doc comment 2024-03-26 12:07:35 -06:00
Qwerasd
492e147e26 terminal: clean up some code and comments 2024-03-26 12:07:35 -06:00
Qwerasd
2274b8a912 fix(terminal): don't reset x when indexing in scroll region 2024-03-26 12:07:35 -06:00
Qwerasd
aadf795d28 fix(terminal): correctly use slow path for left/right scroll margin 2024-03-26 12:07:35 -06:00
Qwerasd
23d32e248e perf(terminal): fast-paths for scrolling regions 2024-03-26 12:07:35 -06:00
Qwerasd
d74ea89056 fastmem: rotateOnce 2024-03-26 12:07:35 -06:00
Qwerasd
ddd7f3e706 comments 2024-03-26 12:07:35 -06:00
Qwerasd
9df9c999a7 fix(terminal): clear erased rows
Clearing these rows is necessary to avoid memory corruption, but the
calls to `clearCells` in the first loop were redundant, since the rows
in question are included in the second loop as well.
2024-03-26 12:07:35 -06:00
Qwerasd
0a6ef3fda4 wip(terminal): Fast path for scroll regions 2024-03-26 12:07:35 -06:00
Mitchell Hashimoto
8f873dd488 Merge pull request #1593 from jcollie/log-build-info-2
log more information about the build
2024-03-26 09:47:49 -07:00
Mitchell Hashimoto
4e607e8901 only show optimization 2024-03-26 09:47:09 -07:00
Mitchell Hashimoto
1ad973b274 Merge pull request #1609 from gpanders/kitty-alt-reset
terminal: reset alt screen kitty keyboard state on full reset
2024-03-26 06:46:48 -07:00
Gregory Anders
6c0609ddc8 terminal: reset alt screen kitty keyboard state on full reset 2024-03-26 08:33:21 -05:00
Mitchell Hashimoto
b68e1c6a5d Merge pull request #1555 from BvngeeCord/gtk-tabs-location
add 'gtk-tabs-location'
2024-03-25 21:37:50 -07:00
Mitchell Hashimoto
f00242deaf Merge pull request #1594 from aca/aca
apprt/gtk: commit buffer before "preeditchanged" resets
2024-03-25 21:36:44 -07:00
Mitchell Hashimoto
7f1af89abb terminal: turn unreachable into todo 2024-03-25 20:11:21 -07:00
Mitchell Hashimoto
fcc0ea0c7c terminal: explicit error set for page clone 2024-03-25 20:10:03 -07:00
Mitchell Hashimoto
ad5d7b6c5a terminal: insert/deleteLines with L/R region across pages 2024-03-25 20:07:19 -07:00
Mitchell Hashimoto
e337ebe131 terminal: add clonePartialRowFrom 2024-03-25 20:01:28 -07:00
Gregory Anders
c634ba363a input: fix associated text on macOS
Ghostty does not report associated text on macOS when
macos-option-as-alt is enabled for _any_ key press, whether or not the
Alt modifier is actually present. The "option as alt" decision should
only be made when the alt modifier is present.
2024-03-25 13:43:32 -05:00
Mitchell Hashimoto
fe43462eb3 terminal: address todo to re-resolve 905 2024-03-25 11:20:28 -07:00
Mitchell Hashimoto
41720b3c8d terminal: PageList support initialization of multi-page viewports 2024-03-25 11:06:21 -07:00
Mitchell Hashimoto
705bd21055 terminal: PageList trim blanks erases empty pages
Fixes #1605
2024-03-25 10:18:31 -07:00
Mitchell Hashimoto
62abecd49d terminal: deleteLines resets line wrap 2024-03-25 10:09:23 -07:00
Mitchell Hashimoto
a58b03c5a0 terminal: insertLines clears row wrap state 2024-03-25 10:06:14 -07:00
Mitchell Hashimoto
dc858980de terminal: deleteChars resets row wrap state 2024-03-25 09:54:17 -07:00
Mitchell Hashimoto
9ee0b23ef7 terminal: clear spacer heads on growing cols w/o reflow 2024-03-25 09:42:05 -07:00
Mitchell Hashimoto
33ede13072 terminal: fix release builds 2024-03-24 21:28:30 -07:00
Mitchell Hashimoto
3e84591b84 terminal: insertBlanks doesn't split spacer tail 2024-03-24 21:27:45 -07:00
Mitchell Hashimoto
db3ab4b0c8 terminal: pause page integrity can be nested 2024-03-24 20:57:35 -07:00
Mitchell Hashimoto
d1a0149982 terminal: deleteChars must not shift a spacer head 2024-03-24 20:47:04 -07:00
Mitchell Hashimoto
36240b897c terminal: many more assertions around spacer state 2024-03-24 20:27:47 -07:00
Mitchell Hashimoto
1b8dc0c0c1 terminal: add a test for resize less cols across pages with cursor 2024-03-24 19:19:23 -07:00
Mitchell Hashimoto
3d6ae29dc3 terminal: when reflowing, set style to default to prevent integrity fail 2024-03-24 15:22:01 -07:00
Mitchell Hashimoto
be3749f1ad terminal: decaln accounts for styles across pages 2024-03-24 15:13:13 -07:00
Mitchell Hashimoto
f719999950 terminal: add assertion to page integrity that row/col count > 0 2024-03-24 14:46:43 -07:00
Mitchell Hashimoto
225cc642b9 terminal: allow growing beyond max size for active area to fit 2024-03-24 09:45:35 -07:00
Mitchell Hashimoto
6cbe699533 terminal: remove problematic test on 4k pages, still working on it 2024-03-23 21:43:16 -07:00
Mitchell Hashimoto
e4332891ee terminal: avoid memory fragmentation if possible on col grow 2024-03-23 21:37:34 -07:00
Mitchell Hashimoto
8c148fc32e terminal: use std.meta.eql for equality checks 2024-03-22 21:04:05 -07:00