Jeffrey C. Ollie
a2ef0ca751
Address review comments.
...
- Cap the total number of requests at twice the maximum number of
keys (currently 263, so 526 requests). Basically you can set and then
query every key in one message. This is an absurdly high number
but should prevent serious DOS attacks.
- Clarify meaning of new hex color codes.
- Better handle sending messages to the renderer in a way that should
prevent deadlocks.
- Handle 0-255 palette color requests by creatively using non-exhautive
enums.
- Fix an error in the query reply.
2024-08-19 00:22:09 -05:00
Mitchell Hashimoto
ec050407ee
input: remove unused struct
2024-08-18 20:58:35 -07:00
Mitchell Hashimoto
2da2cee704
input: remove the old parse method for bindings
2024-08-18 20:58:35 -07:00
Mitchell Hashimoto
6d2cbb0703
config: write the docs now for sequences
2024-08-18 20:30:33 -07:00
Mitchell Hashimoto
9577c8b8b9
core: log when we see a leader
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
43176c750e
config: support equality checking keybinds with sequences
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
9944f5d34d
input: Binding.Set.clone handles leaders
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
bfb31c374e
input: binding set needs to clean up leader memory on manual put
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
2bf20ec32c
fix compilation but logic broken
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
39d91741e0
input: remove todo
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
2f71eb6f99
input: unwind properly on unbind
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
64a68eeaff
input: more parseAndPut tests
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
c71615c467
input: binding.set can parse sequences... lots TODO
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
7dfad49e40
input: converting set entries to Entry from Action
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
bc4eab4af7
input: add Set.parseAndPut
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
a798a26063
input: binding parser of sequences
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
e2913fd16f
input: SequenceIterator to parse sequences of triggers
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
63ec5cdd9d
input: Trigger.parse
2024-08-18 20:30:32 -07:00
Mitchell Hashimoto
1fd9cf2d08
Merge pull request #2089 from jcollie/theme-updates
...
Theme updates
2024-08-18 19:48:18 -07:00
Mitchell Hashimoto
00f642a28f
typos
2024-08-18 19:34:26 -07:00
Mitchell Hashimoto
ea0e3057ca
config: fix build on iOS for error set
2024-08-18 19:31:54 -07:00
Mitchell Hashimoto
b79d80dc82
Fix broken import from rebase
2024-08-18 19:23:49 -07:00
Mitchell Hashimoto
c7e0173158
config: remove unused types and function
2024-08-18 19:20:42 -07:00
Jeffrey C. Ollie
7de692c955
themes: don't use arena directly and cleanup debug code
2024-08-18 19:20:42 -07:00
Jeffrey C. Ollie
50c31ba173
themes: fix comment
2024-08-18 19:20:42 -07:00
Jeffrey C. Ollie
8c4cfc3bbb
themes: finish refactor
2024-08-18 19:20:42 -07:00
Mitchell Hashimoto
5e33d77160
config: use else to catch all errors since there are many
2024-08-18 19:20:42 -07:00
Mitchell Hashimoto
d3182c8d7c
config: move theme loading to dedicated file
2024-08-18 19:20:42 -07:00
Jeffrey C. Ollie
87791ed562
themes: add a switch that shows a small preview of each theme
2024-08-18 19:20:42 -07:00
Jeffrey C. Ollie
7a11b22c5f
themes: allow loading from absolute paths and from user config dir
2024-08-18 19:20:42 -07:00
Mitchell Hashimoto
f7f55d716d
Merge pull request #2118 from ghostty-org/push-ymywukppmvvu
...
readme: clarify that comments are only allowed on a dedicated line
2024-08-18 19:04:13 -07:00
Mitchell Hashimoto
6877ba9f7f
readme: clarify that comments are only allowed on a dedicated line
2024-08-18 19:01:47 -07:00
Mitchell Hashimoto
37d19b3cef
Merge pull request #2109 from edmz/block_hollow
...
Config: cursor-style can bet set to block_hollow
2024-08-18 15:08:08 -07:00
Mitchell Hashimoto
18a8d2b01d
Minor changes, mainly commenting to clarify some behaviors
2024-08-18 15:05:31 -07:00
Mitchell Hashimoto
df9725a142
Merge pull request #2117 from ghostty-org/extend-covering
...
renderer: use fg as extension color for covering glyphs (U+2588)
2024-08-18 12:02:02 -07:00
Mitchell Hashimoto
2ee54879a4
renderer: use fg as extension color for covering glyphs (U+2588)
...
Fixes #2099
This is another heuristic of sorts to make `window-padding-color=extend`
look better by default. If a fully covering glyph is used then we use
the fg color to extend rather than the background.
This doesn't account for fonts that may do this for whatever codepoints,
but I think that's a special scenario that we should just recommend
disabling this feature.
2024-08-18 11:56:50 -07:00
Mitchell Hashimoto
794f31fb8b
Merge pull request #2115 from ghostty-org/index
...
Index should create scrollback anytime top scroll region is top line
2024-08-18 10:34:50 -07:00
Mitchell Hashimoto
994514981f
terminal: handle case grow allocates but cursor is multiple pages back
2024-08-18 10:20:23 -07:00
Mitchell Hashimoto
602fea52ec
terminal: cursorScrollAbove handles case of no new page, prev page
2024-08-18 10:14:35 -07:00
Mitchell Hashimoto
1028fe1c56
terminal: only call new method
2024-08-17 22:02:48 -07:00
Mitchell Hashimoto
adb382f1c8
terminal: call new method for scroll operation
2024-08-17 22:00:52 -07:00
Mitchell Hashimoto
9898489e25
terminal: add Screen.cursorScrollAbove and tests
2024-08-17 21:57:07 -07:00
Mitchell Hashimoto
a125dc9682
terminal: add more tests for index, verified that l/r margin handling is
...
good
2024-08-17 20:01:47 -07:00
Jeffrey C. Ollie
254072e656
fix test error and improve error logging
2024-08-17 15:34:35 -05:00
Mitchell Hashimoto
1d7e87c88d
terminal: index from bottom row of scroll region always makes scrollback
...
Ghostty previously incorrectly only created scrollback if the top/bot
margins were the full height of the viewport. The actual xterm behavior
is to create scrollback as long as the top margin is the top row and the
cursor is on the bottom margin (wherever that may be).
2024-08-17 10:58:34 -07:00
Jeffrey C. Ollie
b11b8be124
Implement Kitty Color Protocol (OSC 21)
...
Kitty 0.36.0 added support for a new OSC escape sequence for
quering, setting, and resetting the terminal colors. Details
can be found [here](https://sw.kovidgoyal.net/kitty/color-stack/#setting-and-querying-colors ).
This fully parses the OSC 21 escape sequences, but only supports
actually querying and changing the foreground color, the background
color, and the cursor color because that's what Ghostty currently
supports. Adding support for the other settings that Kitty supports
changing ranges from easy (cursor text) to difficult (visual bell,
second transparent background color).
2024-08-17 07:05:28 -05:00
Mitchell Hashimoto
dd9e1d9fa7
Merge pull request #2110 from ghostty-org/yeet-usingns2
...
Yeet Usingnamespace (Part 2, no calls in the repository)
2024-08-16 17:21:42 -07:00
Mitchell Hashimoto
fd37e6a351
pkg/harfbuzz: yeet usingns
2024-08-16 17:00:58 -07:00
Mitchell Hashimoto
38a7a55300
pkg/fontconfig: yeet usingns
2024-08-16 16:58:16 -07:00
Mitchell Hashimoto
d7299b16bf
apprt/gtk: fix imgui calls
2024-08-16 16:53:17 -07:00