Mitchell Hashimoto
e47e7a8b8b
macos: quick terminal always brings Ghostty to the front
2024-09-29 09:31:56 -07:00
Mitchell Hashimoto
4f9d49b380
macos: handle multiple monitors properly
2024-09-28 20:52:22 -07:00
Mitchell Hashimoto
bcdbb5899b
macos: only define quick terminal configs for AppKit
2024-09-28 19:14:27 -07:00
Mitchell Hashimoto
76a2041cbf
macos: make quick terminal animation 0.2 instead of 0.3
2024-09-28 19:11:40 -07:00
Mitchell Hashimoto
1d727320b4
macos: if initializing new surface tree, move focus to it
2024-09-28 19:11:16 -07:00
Mitchell Hashimoto
61dd395251
macos: show alert if new tab is attempted from quick term
2024-09-28 18:46:52 -07:00
Mitchell Hashimoto
11d5ec7dc1
config: support quick terminal position
2024-09-28 18:42:25 -07:00
Mitchell Hashimoto
13eb8ac6e2
macos: ability to interrupt animation, track it in menu
2024-09-28 15:29:57 -07:00
Mitchell Hashimoto
1570ef01a7
rename slide to quick terminal
2024-09-28 15:20:35 -07:00
Mitchell Hashimoto
e3b340c6d3
macos: set initial terminal dimensions
2024-09-28 15:08:27 -07:00
Mitchell Hashimoto
1977e220f5
macos: slide terminal exit and close window don't kill the window
2024-09-28 10:51:40 -07:00
Mitchell Hashimoto
50fb7331af
macos: base class for terminal controller
2024-09-28 10:41:51 -07:00
Mitchell Hashimoto
99e5e59491
macos: hook up the action for the slide terminal
2024-09-27 18:36:06 -07:00
Mitchell Hashimoto
bdc2c02f23
macos: when sliding out the terminal, cycle focus
2024-09-27 18:36:06 -07:00
Mitchell Hashimoto
cadb960ef9
core: slide terminal keybinding action
2024-09-27 18:36:06 -07:00
Mitchell Hashimoto
d18e1c879b
macos: restrict resizing based on sliding terminal position
2024-09-27 18:36:06 -07:00
Mitchell Hashimoto
63456d28a5
macos: make sliding logic a bit more extensible
2024-09-27 18:36:06 -07:00
Mitchell Hashimoto
bdd0070ffd
macos: render a terminal in the slide window
2024-09-27 18:36:06 -07:00
Mitchell Hashimoto
93b2fe60f8
macos: start work on SlideTerminal, slides in window from top
2024-09-27 18:36:06 -07:00
Mitchell Hashimoto
7befb5a418
macos: fix previous/next tab bindings, improve action logging
2024-09-27 12:24:11 -07:00
Mitchell Hashimoto
1bd0999eef
macos: add unhandled action
2024-09-27 10:18:01 -07:00
Mitchell Hashimoto
4ae20212bf
libghostty: unified action dispatch
...
First, this commit modifies libghostty to use a single unified action
dispatch system based on a tagged union versus the one-off callback
system that was previously in place. This change simplifies the code on
both the core and consumer sides of the library. Importantly, as we
introduce new actions, we can now maintain ABI compatibility so long as
our union size does not change (something I don't promise yet).
Second, this moves a lot more of the functions call on a surface into
the action system. This affects all apprts and continues the previous
work of introducing a more unified API for optional surface features.
2024-09-26 22:00:11 -07:00
Mitchell Hashimoto
02d7e766e1
core: move password input into action enum
2024-09-25 11:43:48 -07:00
Mitchell Hashimoto
d6e9db4ec5
Merge pull request #2299 from ghostty-org/global-keybind
...
Keybind features: System-global keybindings and target-all-terminal keybindings
2024-09-24 21:01:32 -07:00
Mitchell Hashimoto
6d6052d204
small comment changes
2024-09-24 20:53:45 -07:00
Mitchell Hashimoto
1b31663865
apprt/embedded: new_window can be called without a parent
2024-09-24 18:33:10 -07:00
Mitchell Hashimoto
689ee0f385
typos
2024-09-24 16:38:42 -07:00
Mitchell Hashimoto
ed7ac8aa21
macos: better enable timing depending on process launch time
2024-09-24 16:38:17 -07:00
Mitchell Hashimoto
1ad904478d
Tap events, core API to handle global keybinds
2024-09-24 16:29:02 -07:00
Qwerasd
92d310a660
macOS: prevent ctrl-return key equivalent
...
macOS 15 adds this as a default key equivalent to show the context menu,
this is annoying, so we capture the event and tell macOS we handled it.
2024-09-23 16:55:11 -06:00
Mitchell Hashimoto
c63af5efaa
macos: cannot call mouseEntered/Exited with blank NSEvent
...
Fixes #2283
macOS <= 14 crash with an invalid NSEvent error. macOS 15 seems to just
ignore the blank event. We just got lucky with this. Since we don't
override mouseEntered/Exited anymore we can remove this completely.
The regression was from: e89a4f74089b66c00043096589dc75fff5ab6674
2024-09-22 10:17:45 -07:00
Mitchell Hashimoto
261ce00552
apprt/macos,gtk: unfocused splits now highlight hovered links
...
Fixes #1547
The core change to make this work is to make the cursor position
callback support taking updated modifiers. On both macOS and GTK, cursor
position events also provide the pressed modifiers so we can pass those
in.
2024-09-21 15:16:14 -07:00
Mitchell Hashimoto
d090384600
macos: fix non-AppKit builds
2024-09-21 10:22:14 -07:00
Mitchell Hashimoto
7f56ea150d
typos
2024-09-21 10:00:32 -07:00
Mitchell Hashimoto
f9bd009ce5
macos: unhide cursor on clipboard confirmation
2024-09-21 09:59:40 -07:00
Mitchell Hashimoto
c01bdc6d7c
macos: use pointerStyle for SplitView Divider
2024-09-20 22:02:21 -07:00
Mitchell Hashimoto
0e1258b7fe
macos: pointer style uses macOS 15 helpers
2024-09-20 22:02:21 -07:00
Mitchell Hashimoto
e89a4f7408
macos: use macOS 15 pointerVisibility to show/hide cursor
2024-09-20 22:02:20 -07:00
Mitchell Hashimoto
c6bbdfb7bf
macos: remove EventSinkHostingView
...
This was breaking various other features:
- Popovers stopped working
- Split divider drag gestures stopped working
For now we document the top part of the window is draggable... we
can look into removing that limitation later.
2024-09-20 22:01:01 -07:00
Mitchell Hashimoto
2c44e20860
macos: EventSinkHostingView must not override mouse events
...
This breaks split resizing. Removing this doesn't seem to have negative
effects for hidden titlebars (which it was originally made for).
2024-09-20 21:40:30 -07:00
Mitchell Hashimoto
44e39326b3
Merge pull request #2276 from qwerasd205/macos-titlebar-hidden
...
macOS: add `macos-titlebar-style = hidden`
2024-09-20 20:50:27 -07:00
Mitchell Hashimoto
578aaa1ba6
macos: DraggableWindowView helper (unused currently)
2024-09-20 20:45:27 -07:00
Mitchell Hashimoto
962aa49a45
macos: remove nstitlecontainerview hidden
2024-09-20 19:18:01 -07:00
Qwerasd
16919488da
macOS: add macos-titlebar-style = hidden
...
Hides titlebar without removing the other typical window frame elements
2024-09-20 16:11:51 -06:00
Mitchell Hashimoto
df24d8e1a6
macos: show clickable mouse pointer when hovering over secure input
...
This only works on macOS 15 because it uses the new `pointerStyle` API.
I don't have the interest to backport this to older macOS versions but
I'm happy to accept a PR if someone else wants to do it.
2024-09-20 09:56:44 -07:00
Mitchell Hashimoto
df5cd719d6
macos: rename overlay config to indication
2024-09-19 20:00:46 -07:00
Mitchell Hashimoto
08a2a71ab8
macos: copy
2024-09-19 19:57:03 -07:00
Mitchell Hashimoto
fa9df4f6f0
macos: persist secure input state across restarts
2024-09-19 19:54:53 -07:00
Mitchell Hashimoto
a513a02328
config: config to disable auto secure input and secure input overlay
2024-09-19 17:20:54 -07:00
Mitchell Hashimoto
ced8395c77
macos: copy changes
2024-09-19 17:06:49 -07:00