81 Commits

Author SHA1 Message Date
Mitchell Hashimoto
0fbb5c8c70 macos: simpler mechanism to detect no more config errors
Fixes #702
2023-10-30 22:25:39 -07:00
Mitchell Hashimoto
07c4692799 macos: forgot the toggle fullscreen binding 2023-10-30 22:18:20 -07:00
Mitchell Hashimoto
09ad0f6b7b macos: attach various menu items to first responder, terminal
Fixes #758
2023-10-30 22:06:55 -07:00
Mitchell Hashimoto
9d3a4d2a58 Update macos/Sources/Features/Terminal/TerminalController.swift
Co-authored-by: Gregory Anders <8965202+gpanders@users.noreply.github.com>
2023-10-30 18:26:44 -07:00
Mitchell Hashimoto
db309a0b61 macos: fix cascade points 2023-10-30 15:28:14 -07:00
Mitchell Hashimoto
b4c973cd23 macos: improved comments 2023-10-30 15:15:56 -07:00
Mitchell Hashimoto
b010875176 macos: do not need base config 2023-10-30 14:59:19 -07:00
Mitchell Hashimoto
7fe6f15d2d macos: only show alert once 2023-10-30 14:56:59 -07:00
Mitchell Hashimoto
350a9da68b macos: confirm quit with splits, tab 2023-10-30 14:50:54 -07:00
Mitchell Hashimoto
1fcc5812be macos: detect when surface tree becomes empty 2023-10-30 14:46:28 -07:00
Mitchell Hashimoto
c18cf207d6 macos: rename all the 2-suffix 2023-10-30 14:40:45 -07:00
Mitchell Hashimoto
b40245f01d macos: remove old primary window stuff 2023-10-30 14:36:20 -07:00
Mitchell Hashimoto
c86faa37c2 macos: terminal controller owns split data 2023-10-30 14:31:04 -07:00
Mitchell Hashimoto
1b0fea044f macos: move debug view 2023-10-30 12:01:10 -07:00
Mitchell Hashimoto
05fd3f25b3 macos: clear content view on window close 2023-10-30 11:58:23 -07:00
Mitchell Hashimoto
ed1741730e macos: base config plumbed through 2023-10-30 11:53:05 -07:00
Mitchell Hashimoto
61451942e8 macos: implement last surface close to close window 2023-10-30 09:53:59 -07:00
Mitchell Hashimoto
481d128405 macos: tab labels, detect window close 2023-10-30 09:50:52 -07:00
Mitchell Hashimoto
8a03dcbb5b macos: goto tab works 2023-10-30 09:24:06 -07:00
Mitchell Hashimoto
b8a24e8bba macos: toggle fullscreen 2023-10-30 09:19:13 -07:00
Mitchell Hashimoto
bee0f25d54 macos: new terminal view new tab/window 2023-10-30 09:06:24 -07:00
Mitchell Hashimoto
704c303cd1 macos: working on the new terminalmanager 2023-10-30 09:06:24 -07:00
Mitchell Hashimoto
3018377389 macos: wip 2023-10-30 09:06:24 -07:00
Mitchell Hashimoto
0ca69cbc98 macos: update xib version 2023-10-30 09:06:23 -07:00
Mitchell Hashimoto
6504a67f0b macos: set proper cascade point when closing tab in window
Fixes #745
2023-10-27 14:56:30 -07:00
Gregory Anders
9d2d9ca7a3 maacos: update doc comment for PrimaryView.window 2023-10-27 10:07:15 -05:00
Gregory Anders
add2b675bd config: add window-step-resize option 2023-10-27 09:33:56 -05:00
Gregory Anders
2ee80a52df macos: set window resizeIncrements when cell size changes
The resizeIncrements property is only modified when the cell size of the
focused window changes. If two splits have the same cell size then the
property is not modified when focusing between the two splits.
2023-10-26 20:27:58 -05:00
Gregory Anders
4681b95bb3 macos: force new window for "New Window" action
There is a setting in the macOS System Preferences called "Prefer tabs
when opening documents" (accessed through the userTabbingPreference
field of NSWindow) which, when set to "Always", makes the "New Window"
action open windows in tabs.

Ideally, this setting would be controlled on a per-app basis in macOS,
but unfortunately that is not the case. Because Ghostty explicitly
offers both "New Tab" and "New Window" actions, this user setting should
be ignored when creating new windows.
2023-10-09 09:20:52 -05:00
Mitchell Hashimoto
a040e807e8 macos: implement service provider 2023-10-04 12:11:23 -07:00
Mitchell Hashimoto
96b8fbb84d macos: support dropping folder with window 2023-10-03 22:07:58 -07:00
Mitchell Hashimoto
d5299fec25 macos: use SurfaceConfiguration everywhere instead of bare c struct 2023-10-03 22:00:56 -07:00
Mitchell Hashimoto
00cb572a5b macos: change close confirmations to NSAlert
Fixes #560
2023-10-03 09:53:15 -07:00
Mitchell Hashimoto
cc8e1cd936 macos: support initial window size 2023-09-30 20:47:31 -07:00
Mitchell Hashimoto
0e4b91de88 macos: stylistic changes 2023-09-28 08:34:27 -07:00
Gregory Anders
137d24db9c macos: display keybinding instead of index in tab label 2023-09-28 08:28:46 -07:00
Gregory Anders
8f75e83958 macos: rename indexTabs() to relabelTabs()
This is a better name because the tab label may not necessarily be an
index (if a user binds some non-numeric key, for instance).
2023-09-28 08:28:46 -07:00
Gregory Anders
59ba6fac2b macos: add tab index labels 2023-09-28 08:28:46 -07:00
Mitchell Hashimoto
960edee559 macos: background-opacity getter 2023-09-20 22:05:23 -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
Will Pragnell
81efb2dfe5 macos: always use latest window decoration config from runtime 2023-09-17 11:57:01 -07:00
SoraTenshi
ddb9be0971 Remove custom CAPI function
and use the already existing get_config function
2023-09-17 11:57:01 -07:00
SoraTenshi
ed8b5bc283 macos: allow to hide decorations 2023-09-17 11:57:00 -07:00
Mitchell Hashimoto
2dccf4596a macos: consistent text 2023-09-15 15:58:14 -07:00
Mitchell Hashimoto
f8fea2f65b macos: show warning in debug mode 2023-09-15 15:40:41 -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
9c42b9976a macos: use appearance-sensitive bg color for error window
Fixes #432
2023-09-13 08:10:19 -07:00
Mitchell Hashimoto
a95a1a8838 macos: add button to ignore configuration errors
The popup will return on the next launch or configuration load.
2023-09-12 22:25:24 -07:00
Mitchell Hashimoto
42bbcbfb9b macos: add a reload configuration button 2023-09-11 15:13:02 -07:00