6387 Commits

Author SHA1 Message Date
Qwerasd
8be145ec1f fix(terminal/Sreen): selectionString across pages
Newlines after rows should only be omitted on the final row of the
entire SELECTION, not on the final row of each page/chunk.
2024-04-03 20:03:25 -04:00
Qwerasd
fa5646e762 test(terminal/Screen): selectionString across page boundaries 2024-04-03 19:28:02 -04:00
Marius Svechla
e34b373426 shell-integration: implement no-title option
This adds a new option to the shell integration feature set, `no-title`.
If this option is set, the shell integration will not automatically
update the window title.
2024-04-03 22:00:42 +02:00
Mitchell Hashimoto
f0f53bd8b1 font/shaper: fix CoreText shaper to compile with latest terminal changes 2024-04-03 10:14:17 -07:00
Pete Schaffner
e4066aaa85 Put titlebar font code where it was intended 2024-04-03 15:36:04 +02:00
Pete Schaffner
ab26863088 Merge remote-tracking branch 'upstream/main' into titlebar-unzoom-button 2024-04-03 15:25:51 +02:00
Pete Schaffner
a0a1c991b5 Fix conflicting constraints issue 2024-04-02 22:31:23 +02:00
Pete Schaffner
f086bff651 Make things work with really dark backgrounds
This fixes issue #1549
2024-04-02 22:28:34 +02:00
Mitchell Hashimoto
c1b5957cb0 Merge pull request #1642 from qwerasd205/box-drawing-fixes
font/sprite: improve rendering of dashed lines
2024-04-02 08:41:58 -07:00
Mitchell Hashimoto
0c69078f6f Merge pull request #1641 from g-cassie/fix-mac-m2-test-build
fix(build): solve issue with building tests on Apple M2.
2024-04-02 08:41:26 -07:00
Mitchell Hashimoto
eb2a2e3931 fmt 2024-04-02 08:38:51 -07:00
Mitchell Hashimoto
555f6e159f font/sprite: remove comptime arg for box drawing 2024-04-02 08:38:36 -07:00
Qwerasd
5abc63193e font/sprite: improve rendering of dashed lines
Previous implementation would draw dashes to the edge of the character
cell, which would result in double-wide dashes at the point where they
tiled. This fixes that, and also generally implements it in a cleaner
way than before.
2024-04-01 18:35:34 -04:00
Gordon Cassie
3e8193c342 fix(build): solve issue with building tests on certain apple cpus. 2024-04-01 11:45:06 -07:00
Mitchell Hashimoto
8e3c8acf76 Merge pull request #1639 from qwerasd205/kitty-image-fixes
Kitty image fixes
2024-04-01 11:01:46 -07:00
Qwerasd
04ec859925 terminal/kitty_graphics: update tests
Kitty Graphics command structures have been changed to hold decoded payloads not base64 strings.
2024-03-31 22:28:53 -04:00
Qwerasd
51d3c2cf35 fix(kitty_graphics): set dirty state on various scroll operations 2024-03-31 21:49:28 -04:00
Qwerasd
ca4b55b486 terminal/kitty_graphics: ignore base64 padding
Also move all base64 decoding to inside of the command parser.
2024-03-31 21:09:37 -04:00
Qwerasd
5dee7e1430 terminal/kitty_graphics: update outdated comments 2024-03-31 19:29:56 -04:00
Mitchell Hashimoto
b793228ed4 Merge pull request #1636 from jparise/homedir-macos
os/homedir: use NSFileManager on macOS
2024-03-31 09:36:08 -07:00
Jon Parise
29a5b52885 os/homedir: remove now unnecessary fba.reset() 2024-03-31 08:56:56 -07:00
Jon Parise
55b611e4cb os/homedir: use NSFileManager on macOS
NSFileManager has offered a homeDirectoryForCurrentUser property since
macOS 10.12. Using that is preferable to running a directory service
child process.
2024-03-30 20:24:43 -07:00
Mitchell Hashimoto
9e4af4b599 Merge pull request #1634 from vancluever/nix-zig-follow-staging
nix: update nixpkgs-zig-0-12 (security, ff to staging-next)
2024-03-30 09:34:29 -07:00
Chris Marchesi
e8c8c3ca74 nix: update nixpkgs-zig-0-12 (security, ff to staging-next)
This fast-forwards the nixpkgs-zig-0-12 flake input to follow
staging-next instead of nixos-unstable, in response to CVE-2024-3094.

Nixpkgs PR: https://github.com/NixOS/nixpkgs/pull/300028
2024-03-30 02:18:09 -07:00
Mitchell Hashimoto
07eadeb404 Merge pull request #1628 from qwerasd205/fuzzer-fixes
Various bug fixes
2024-03-29 13:56:49 -07:00
Qwerasd
5b509f9295 test(terminal/Screen): clearRows with protected cells 2024-03-29 16:47:53 -04:00
Mitchell Hashimoto
1c62009e7c Merge pull request #1629 from tatablack/readme-changes
Clarify macOS build requirements
2024-03-29 13:45:29 -07:00
Mitchell Hashimoto
5a8c68de54 Merge pull request #1630 from RGBCube/releasefast-default
nix: make ReleaseFast the default package
2024-03-29 13:44:54 -07:00
Qwerasd
925c7e86a2 fix(terminal): insert/deleteLines boundary cond.s
Introduced a helper function for correctly handling boundary conditions
in insertLines and deleteLines. Also adds a whole host of tests for said
conditions in deleteLines, tests not duplicated for insertLines because
they both use the same helper function.
2024-03-29 16:29:27 -04:00
RGBCube
aa928b8d87 nix: use packages = instead of (native)buildInputs as that is recommended 2024-03-29 22:27:32 +03:00
RGBCube
a491381191 nix: make ReleaseFast the default package 2024-03-29 22:24:32 +03:00
Angelo Tata
314106ec52 Clarify macOS build requirements 2024-03-29 19:08:11 +00:00
Qwerasd
4c9e238c3f fix(termio/exec): avoid overflow in setCursorRow/ColRelative
Using a saturating addition here just to avoid overflow, since setCursorPos handles proper clamping to the screen size so we don't need to duplicate that logic.
2024-03-29 13:15:24 -04:00
Qwerasd
20ab4ec01f fix(terminal): correct wrap logic in insert/deleteLines
Appropriately handles clearing spacer heads if shifted lines include rightmost column, and centralizes clearing of row wrap state for full width scrolling regions.
2024-03-29 13:12:52 -04:00
Qwerasd
e55f2daf90 perf(terminal): clear unprotected cells in spans
Previous behavior of clearing one at a time hit a page integrity assertion after clearing a wide character but not its tail. This fixes that and should also be - in theory - significantly more performant as well by identifying spans of unprotected cells and clearing them in bulk.
2024-03-29 13:08:38 -04:00
Mitchell Hashimoto
00f018f6ff Merge pull request #1626 from tristan957/libadwaita
fix: remove deprecated to-pixdata gresource preprocessor
2024-03-28 20:07:17 -07:00
Tristan Partin
0adbe097ed fix: remove deprecated to-pixdata gresource preprocessor
It was deprecated in gdk-pixbuf 2.32.

Link: https://docs.gtk.org/gio/struct.Resource.html
2024-03-28 21:15:09 -05:00
Mitchell Hashimoto
37f31017dc Merge pull request #1625 from qwerasd205/spa-epa
fix(terminal/stream): add SPA and EPA handlers
2024-03-28 17:21:13 -07:00
Qwerasd
5df5fb4a56 fix(terminal/stream): add SPA and EPA handlers 2024-03-28 20:05:10 -04:00
Mitchell Hashimoto
e4dcd6283f Merge pull request #1624 from mitchellh/realizehandle
apprt/gtk: handle gtk realize error more gracefully
2024-03-28 15:14:55 -07:00
Mitchell Hashimoto
77c8a5998f apprt/gtk: handle gtk realize error more gracefully
Fixes #1606

This improves our logging when this occurs and prevents a crash.
The program will just run indefinitely with no windows (you can try to
create another but it will probably fail) but the logs are much more
helpful now.
2024-03-28 15:11:45 -07:00
Mitchell Hashimoto
054aeebf17 Merge pull request #1506 from jcollie/gtk-resources
GTK: Add compiled-in GTK resources and use them for icons.
2024-03-28 14:48:40 -07:00
Mitchell Hashimoto
b6f5970264 minor style changes 2024-03-28 14:45:44 -07:00
Mitchell Hashimoto
41cffd116a Merge pull request #1484 from jparise/window-title-font
macos: configurable titlebar fonts
2024-03-28 09:49:19 -07:00
Pete Schaffner
bbe35ee02e Revert luminance check from commit f7129880f5c4
This fixes the issues reporting wrong toolbar colors:
https://github.com/mitchellh/ghostty/pull/1550#issuecomment-2021538747
2024-03-28 10:51:00 +01:00
Pete Schaffner
cf6017e777 Revert "Revert "Merge pull request #1550 from peteschaffner/titlebar-unzoom-button""
This reverts commit 7f59d844c098f65158b4c5674f53371e0c4a4f1a.
2024-03-28 10:48:05 +01:00
Mitchell Hashimoto
9aadf59ab1 macos,libghostty: font size is a u8 2024-03-27 20:53:03 -07:00
Mitchell Hashimoto
45019fac7e Merge pull request #1621 from mitchellh/font-size
font sizes are limited to u8 (max size = 255 points)
2024-03-27 20:48:36 -07:00
Mitchell Hashimoto
552c97eea4 font/freetype: avoid overflows with u8 font size 2024-03-27 20:45:55 -07:00
Mitchell Hashimoto
461b16ce34 font sizes are limited to u8 (max size = 255 points)
Fixes #1618

Font sizes in configuration were always a u8, but the keybinding and
internal state was a u16 so it allowed for an ever-growing font size. At
a certain point, there is an integer overflow which causes it to wrap
around. This is all silly, 255 should be large enough for anyone[1]

[1]: Ready to be super wrong about this
2024-03-27 20:36:59 -07:00