Mitchell Hashimoto
5c1ffbb642
apprt: implement key_sequence action
2024-10-08 21:55:00 -07:00
Qwerasd
5730242596
coretext: don't emit 0 codepoints for special fonts
2024-10-08 23:47:35 -04:00
Qwerasd
7686cacde6
renderer, shaper: don't use null cells, handle bg and decorations separately
...
Significant rework that also removes a lot of unnecessarily duplicated
work while rebuilding cells in both renderers. Fixes multiple issues
with decorations and bg colors on wide chars and ligatures, while
reducing the amount of special case handling required.
2024-10-08 23:10:43 -04:00
Mitchell Hashimoto
8d7367fa64
input: return a K/V entry for the binding set get
2024-10-08 06:29:54 -10:00
Jeffrey C. Ollie
a559ecf957
gtk: add adw
or gtk
class to top level windows
2024-10-08 11:17:33 -05:00
Jeffrey C. Ollie
bb109c435f
gtk: fix window-theme=ghostty
2024-10-08 11:17:33 -05:00
Jeffrey C. Ollie
ab0a736089
gtk: load css when libadwaita is not being used
2024-10-08 11:17:32 -05:00
Mitchell Hashimoto
78d6cfb620
Merge pull request #2255 from pluiedev/feat/situs-inversus
...
DRAFT: implement splitting leftwards and upwards
2024-10-08 06:09:26 -10:00
Mitchell Hashimoto
392875381a
macos: become aware of new split directions left and up
2024-10-07 15:34:47 -10:00
Leah Amelia Chen
fbc621a7d8
gtk: implement splitting leftwards and upwards
2024-10-07 18:19:27 -07:00
Mitchell Hashimoto
1b5a4433c8
Merge pull request #2414 from ghostty-org/push-yzvnksxnotwm
...
macos: quick terminal window blur settings take effect properly
2024-10-07 15:01:20 -10:00
Mitchell Hashimoto
163e6cccca
macos: quick terminal window blur settings take effect properly
...
Fixes #2410
2024-10-07 14:58:47 -10:00
Mitchell Hashimoto
2b93e37e8f
Merge pull request #2413 from ghostty-org/push-zzplrqptxorm
...
macos: remove the ability to bind fn/globe
2024-10-07 14:54:33 -10:00
Mitchell Hashimoto
ed2cd6d436
macos: remove the ability to bind fn/globe
...
This was recently introduced a few days ago. Unfortunately, this doesn't
work as expected. The "function" modifier is not actually the fn key
but used by macOS to represent a variety of "functional" key presses.
This breaks other bindings such as #2411 .
I can't find a source on the internet that reliably tells me how we
can detect fn key presses, but I do find a number of sources that tell
us we can't.
2024-10-07 14:36:12 -10:00
Mitchell Hashimoto
3e3c666244
Merge pull request #2408 from ghostty-org/push-ykwznorkrttp
...
macos: send mouse cursor position events for right mouse dragged
2024-10-07 10:55:33 -10:00
Mitchell Hashimoto
fe3f8439a7
macos: send mouse cursor position events for right mouse dragged
...
Fixes #2407
2024-10-07 10:50:04 -10:00
Mitchell Hashimoto
c4105c3f40
Merge pull request #2406 from ghostty-org/gtk-key
...
gtk: handle key press events at the window level if necessary
2024-10-07 10:20:54 -10:00
Mitchell Hashimoto
1b1589e0c6
apprt/gtk: only run window key events with tab overview shown
2024-10-07 13:17:21 -07:00
Mitchell Hashimoto
9c547dd8cd
apprt/gtk: forward window key events to the focused surface
2024-10-07 13:06:35 -07:00
Mitchell Hashimoto
9e435f050e
apprt/gtk: setup window key event infrastructure
2024-10-07 13:01:36 -07:00
Mitchell Hashimoto
495b4c6131
Merge pull request #2405 from ghostty-org/push-pwuvkvrtvytu
...
gtk: only set initial window size if its the first terminal in a window
2024-10-07 06:52:28 -10:00
Mitchell Hashimoto
eab6c0d4af
gtk: only set initial window size if its the first terminal in a window
...
Fixes #2391
2024-10-07 09:46:13 -07:00
Mitchell Hashimoto
dd0f05a537
Merge pull request #2404 from ghostty-org/push-wnotxszvqmwr
...
macos: global keybind event tap only handles events when app is inactive
2024-10-07 06:03:58 -10:00
Mitchell Hashimoto
9e161758bb
input: function is part of the binding mods
2024-10-07 05:52:20 -10:00
Mitchell Hashimoto
715df3f263
macos: global keybind event tap only handles events when app is inactive
...
Fixes #2403
2024-10-07 05:46:16 -10:00
Mitchell Hashimoto
481e249958
Merge pull request #2400 from ghostty-org/mouse-exit
...
Detect mouse leave events, use it to reset hover states
2024-10-06 15:42:33 -10:00
Mitchell Hashimoto
c7f83fcef8
gtk: notify core of cursor leave
2024-10-06 18:23:53 -07:00
Mitchell Hashimoto
227eda1d09
macos: notify core of mouse exit
2024-10-06 15:20:17 -10:00
Mitchell Hashimoto
65c907ddab
core: negative x/y for cursor position indicates mouse exited viewport
2024-10-06 15:20:17 -10:00
Mitchell Hashimoto
bca0f76a7f
Merge pull request #2399 from qwerasd205/broken-undercurl
...
Undercurl fixes/improvements
2024-10-06 15:02:11 -10:00
Mitchell Hashimoto
c49b896f22
Merge pull request #2398 from ghostty-org/app-focus
...
Make core app-focus aware, used to determine global keybind behavior
2024-10-06 10:47:46 -10:00
Mitchell Hashimoto
494fedca2f
apprt/gtk: report proper app focus state
2024-10-06 13:31:03 -07:00
Mitchell Hashimoto
e56cfbdc8b
macos: set the proper app focus state
2024-10-06 10:06:17 -10:00
Mitchell Hashimoto
8dc4ebb4f7
apprt/embedded: add ghostty_app_set_focus
2024-10-06 09:58:46 -10:00
Mitchell Hashimoto
bac1780c3c
core: add app focused state, make App.keyEvent focus aware
2024-10-06 09:58:46 -10:00
Mitchell Hashimoto
2e0a514384
Merge pull request #2395 from ghostty-org/mods
...
Hyperlink state improvements (no mouse move, blurred splits/windows on macOS)
2024-10-06 09:40:49 -10:00
Mitchell Hashimoto
6785f886ad
core: ghostty_app_key only handles global keybinds for now
...
This introduces a separate bug fixes #2396
2024-10-06 09:32:30 -10:00
Mitchell Hashimoto
50b52da638
Merge pull request #2389 from ghostty-org/fn-globe
...
macOS: Allow binding the function/globe modifier
2024-10-06 06:07:32 -10:00
Qwerasd
06a37f32be
font/sprite: use offset curve approximation for undercurl
2024-10-06 01:43:11 -04:00
Qwerasd
c454ef627b
fix(font/sprite): avoid underflow
...
There's a degenerate case where height < line_pos
2024-10-05 22:12:59 -04:00
Qwerasd
fd49fb7338
font/sprite: improve double underline legibility with min 2px gap
...
At small thicknesses, the legibility of the double underline is not
great when it's a 1px line, a 1px gap, and another 1px line.
2024-10-05 22:08:17 -04:00
Qwerasd
156f735f8d
font/sprite: fix undercurl rendering
...
- Limit max amplitude relative to cell width to avoid being too wavy
- Fix application of xiaolin-wu's for anti-aliasing too always be at
least 1px thick.
- Fix height calculation to avoid clipping bottom of wave at small
sizes.
2024-10-05 22:01:43 -04:00
Mitchell Hashimoto
520c21d665
core: refresh hyperlink state without hacky cursorPosCallback
...
This fixes a longstanding piece of tech debt which caused all sorts of
bugs. Instead of trying to jam cursorPosCallback into a modsChanged
event we bring out the link refreshing into a dedicated method that is
shared.
2024-10-05 15:31:36 -10:00
Mitchell Hashimoto
e3dd0edc4f
macos: use local event listener to propagate modifier changes to all
...
Related to #1547
Concretely, if you are highlighting a link and then release the
modifier, the other surfaces will be notified of this change.
2024-10-05 10:33:15 -10:00
Mitchell Hashimoto
e9f1fe327f
cli/list-keybinds: output function modifier
2024-10-05 10:13:39 -10:00
Mitchell Hashimoto
b9fa6b1b83
config: more caveats for fn
2024-10-05 10:11:25 -10:00
Mitchell Hashimoto
f9e6d6efa6
macos: forward key events to the app when no windows exist
2024-10-05 10:05:06 -10:00
Mitchell Hashimoto
6fdfa9d491
Make the function/globe key available as a modifier on macOS
2024-10-05 09:39:55 -10:00
Mitchell Hashimoto
a36bdd97de
Merge pull request #2387 from ghostty-org/push-pkurnzzzyxyx
...
Bind ctrl+tab and ctrl+shift+tab by default
2024-10-05 06:37:17 -10:00
Mitchell Hashimoto
a278022e5d
Bind ctrl+tab and ctrl+shift+tab by default
...
This matches default behaviors on native apps for macOS and GTK so we
should always bind it.
2024-10-05 09:34:46 -07:00