Mitchell Hashimoto
28ec11e52b
docs updates
2024-10-02 10:52:59 -07:00
Roland Peelen
9e00eeff86
Review Feedback - formatting / docs
2024-10-02 10:33:36 -07:00
Roland Peelen
af48c1af0c
Refactor to hide only BaseTerminalController windows
...
This also slightly changes the code, as the duplication of the for loop
was making it harder to read now. I think technically slightly less
efficient, but this is hardly a hot code path, so should be fine imo.
2024-10-02 10:33:36 -07:00
Roland Peelen
4aac4ecd98
Add hiding toggle, hook up to menu / shortcut
2024-10-02 10:33:36 -07:00
Mitchell Hashimoto
78b9636d15
macos: apply background opacity to quick terminal
...
Fixes #2331
2024-09-30 21:18:47 -07:00
Mitchell Hashimoto
46cbe59076
macos: quick terminal supports fullscreen
...
Fixes #2330
The quick terminal now supports fullscreen. The fullscreen mode is
always non-native due to the quick terminal being a titleless, floating
window.
When the quick terminal loses focus and animates out, it will always
exit fullscreen mode.
2024-09-30 21:07:16 -07:00
Mitchell Hashimoto
7a5a9c2a58
macos: quick terminal app activation tweaks to avoid bringing up other windows
...
Fixes #2336
The comments explain the issues here.
2024-09-30 20:45:54 -07:00
Mitchell Hashimoto
22b9f24978
macos: clarify comments, clean up notifications for fullscreen
2024-09-30 20:10:23 -07:00
Mitchell Hashimoto
639434df33
macos: exit native fullscreen if we try to enter non-native
2024-09-30 15:01:44 -07:00
Mitchell Hashimoto
93f0b9dce9
macos: only exit on screen change if the screen really changed
2024-09-30 14:48:05 -07:00
Mitchell Hashimoto
ef5b835dc4
macos: only hide dock on the screen with the dock
2024-09-30 14:25:33 -07:00
Mitchell Hashimoto
408c33e174
macos: handle non-native fullscreen changing screens
2024-09-30 14:14:01 -07:00
Mitchell Hashimoto
35462331ae
macos: non-native fs sets frame async to account for style changes
...
Fixes #1996
2024-09-30 10:44:26 -07:00
Mitchell Hashimoto
ba9ae0c0be
macos: only get fullscreen mode on AppKit
2024-09-30 10:37:33 -07:00
Mitchell Hashimoto
045ecacd8c
macos: fullscreen mode can be changed at runtime
2024-09-30 10:31:11 -07:00
Mitchell Hashimoto
5f9d4f9733
macos: fullscreen=true with non-native fullscreen works
...
Fixes #1377
2024-09-30 10:02:50 -07:00
Mitchell Hashimoto
718fa6042c
macos: new fullscreen implementation
2024-09-30 09:42:46 -07:00
Mitchell Hashimoto
332e1a1494
macos: new FullscreenMode/Style architecture for fullscreen impls
2024-09-29 21:31:58 -07:00
Mitchell Hashimoto
ea46cb19e6
macos: use a different bundle identifier for debug builds
...
This is necessary to avoid conflicts with application data such
as permissions and preferences.
2024-09-29 16:16:55 -07:00
Mitchell Hashimoto
19012cb6f5
macos: quick terminal restores focus to previous application
2024-09-29 15:33:12 -07:00
Mitchell Hashimoto
c70e0b2634
macos: use orderOut which handles all of our focus logic for us
2024-09-29 15:06:54 -07:00
Mitchell Hashimoto
c8a40a7791
macos: quick terminal close focuses next window on same screen/space
...
Previously, we'd find the next Ghostty window anywhere. Now we find the
one on the same screen/space to avoid moving the focus to a different screen.
2024-09-29 14:56:03 -07:00
Mitchell Hashimoto
83505bb4c0
macos: ensure quick terminal becomes key and focused after animation in
2024-09-29 10:44:16 -07:00
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