104 Commits

Author SHA1 Message Date
Mitchell Hashimoto
7f549c5b41 macos: detect mouseEntered/Exit on frame change 2023-09-21 09:42:17 -07:00
Mitchell Hashimoto
d12f07ceda macos: mouse tracking area should always send
Without this, non-first-responder views would not receive mouse
entered/exit events. This would break some of our mouse hiding state.
See comments for more info.
2023-09-21 09:30:42 -07:00
Mitchell Hashimoto
960edee559 macos: background-opacity getter 2023-09-20 22:05:23 -07:00
Mitchell Hashimoto
3ad39dd5e4 macos: sync NSAppearance for app based on window-theme setting 2023-09-20 21:54:50 -07:00
Mitchell Hashimoto
6cee9e57f6 macos: prevent mouseEntered/Exited processing if already in that state
See the comment in the code.

Fixes #494
2023-09-20 08:53:31 -07:00
Mitchell Hashimoto
5a02635d2c macos: async style clipboard reading 2023-09-19 10:36:17 -07:00
Mitchell Hashimoto
d911c49f44 macos: remove unnecessary call 2023-09-17 12:01:36 -07:00
SoraTenshi
833be445ba Spawn alert box on new tab if decorations disabled
Stray spaces

Fix check for windowDecoration
2023-09-17 11:58:11 -07:00
Mitchell Hashimoto
2b380ad37e macos: stylistic changes 2023-09-17 11:57:36 -07:00
Mitchell Hashimoto
f8fea2f65b macos: show warning in debug mode 2023-09-15 15:40:41 -07:00
Mitchell Hashimoto
724900f143 macos: implement setCursorVisibility 2023-09-14 19:37:30 -07:00
Mitchell Hashimoto
cb2931cb27 rename cursor shape to mouse shape for OSC 22 2023-09-14 11:12:17 -07:00
Mitchell Hashimoto
3356146bb4 macos: support cursor style 2023-09-14 10:40:40 -07:00
Mitchell Hashimoto
c1fe1f6646 macos: AppState config must be published and observed
Fixes #440

We previously weren't observing changes so they weren't being
automatically propagated. We were using an old pointer which at best
returned the wrong value and at worst crashed. I was able to make it
crash eventually, too.

This changes the fields to be properly published and observed and as a
result the config is immediately available to all users.
2023-09-13 15:06:41 -07:00
Mitchell Hashimoto
999d17c49d macos: integrate needsConfirmQuit to quit if all windows are at prompt 2023-09-11 15:44:28 -07:00
Mitchell Hashimoto
2f0905b60c macos: reload config MUST go through Zig core 2023-09-11 15:20:31 -07:00
Mitchell Hashimoto
711e3a5043 macos: add reload configuration to the Ghostty menu bar 2023-09-11 13:49:20 -07:00
Mitchell Hashimoto
db799d53e6 macos: UI for configuration errors 2023-09-11 13:21:13 -07:00
Mitchell Hashimoto
f0ee2fb454 macos: log configuration errors 2023-09-11 09:39:58 -07:00
Mitchell Hashimoto
2b04a7114b macos: use the configured unfocused split opacity 2023-09-10 18:52:40 -07:00
Mitchell Hashimoto
8bec01f237 macos: disable hit testing for unfocused split rectangle 2023-09-10 16:02:09 -07:00
Mitchell Hashimoto
ef5c5d1c0b macos: add split zoom to menu 2023-09-10 09:30:42 -07:00
Mitchell Hashimoto
de564dad94 macos: fade unfocused splits
Fixes #353
2023-09-10 09:17:46 -07:00
Mitchell Hashimoto
303c5ca189 macos: split traversal uses direction to determine proper focus target
Fixes #415
2023-09-10 08:59:05 -07:00
Mitchell Hashimoto
e5cba11ad0 macos: key events for modifier-only keys 2023-09-09 09:22:15 -07:00
Will Pragnell
7d9598fe6e macos: fix split focus when toggling fullscreen 2023-09-03 22:55:22 -07:00
Mitchell Hashimoto
e657a0f671 macos: close and refocus split work while zoomed 2023-09-02 16:47:48 -07:00
Mitchell Hashimoto
76ae039701 macos: new split on zoomed split unzooms 2023-09-02 16:37:22 -07:00
Mitchell Hashimoto
e2282f1f4d macos: zoomed splits put an emoji in the title bar 2023-09-02 16:33:33 -07:00
Mitchell Hashimoto
4570356e57 turn zoom into a toggle rather than an explicit zoom/unzoom 2023-09-02 16:03:51 -07:00
Mitchell Hashimoto
70bdc21d22 macos: support zoomed splits 2023-09-02 15:51:10 -07:00
Mitchell Hashimoto
1626c8cd3a macos: hacks for split focus to work correctly on macos 12 2023-09-02 09:15:50 -07:00
Will Pragnell
86122624e0 macos: add visible-menu non-native-fullscreen option 2023-09-01 21:45:45 -07:00
Mitchell Hashimoto
e0015a0d00 macos: hacks to grab surface focus on macOS 12
See comment in code.
2023-09-01 16:23:30 -07:00
Mitchell Hashimoto
b7508cdc66 macos: setup delegate for app state, config reload callback 2023-08-31 11:56:15 -07:00
Mitchell Hashimoto
76053460d5 macos: sync File menu 2023-08-31 11:40:21 -07:00
Mitchell Hashimoto
c7071a1da2 macos: complete lookup table for key equivalents 2023-08-31 11:14:07 -07:00
Mitchell Hashimoto
52396304ff macos: begin syncing menuitem key equivalents 2023-08-30 22:45:29 -07:00
Mitchell Hashimoto
c71979804e apprt/embedded: ghostty_surface_binding_action can now run any action 2023-08-30 21:46:38 -07:00
Thorsten Ball
a76aea4d0a macOS: new split can inherit font size 2023-08-19 09:59:04 +02:00
Thorsten Ball
2e9b787668 macOS: new window can inherit font size
This is the second part of #281 and adds the same mechanism that was
added for tabs in #296 for windows.

It works exactly the same way.
2023-08-19 09:29:56 +02:00
Mitchell Hashimoto
a18503fc01 macos: can always set base config on new tab 2023-08-18 09:21:47 -07:00
Mitchell Hashimoto
79971c62a6 macos: pass around a base surface_config_s rather than a new tab 2023-08-18 09:09:43 -07:00
Thorsten Ball
cda87a6963 embedded: use separate struct to pass options to new_tab_cb 2023-08-18 06:50:47 +02:00
Thorsten Ball
d2dae7a696 macOS: inherit font size when creating new tab
This is one part of #281.
2023-08-17 20:56:56 +02:00
Mitchell Hashimoto
721087be76 macos: send the left/right status of modifier keys 2023-08-14 12:40:48 -07:00
Mitchell Hashimoto
d5df8aea9a apprt/embedded: handle repeat events 2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
1e1ad7deb9 macos: use the new self-hosted translation 2023-08-11 12:02:00 -07:00
Mitchell Hashimoto
57a527b0c9 macos: detect keyboard layout change and reload the keymap 2023-08-11 12:01:59 -07:00
Mitchell Hashimoto
3d23f26326 input, macos: initial work on keymapper and macos usage of it 2023-08-11 12:01:58 -07:00