Mitchell Hashimoto
4a4577cf8a
apprt/gtk-ng: address some TODOs
2025-08-07 08:14:02 -07:00
Mitchell Hashimoto
bc731c0ff6
apprt/gtk-ng: hook up Tab signals to surface
2025-08-07 08:14:02 -07:00
Mitchell Hashimoto
3b4c33afe0
apprt/gtk-ng: connect surface signals
2025-08-07 08:14:02 -07:00
Mitchell Hashimoto
a7865d79ea
apprt/gtk-ng: render a single artificial split
2025-08-07 08:14:02 -07:00
Mitchell Hashimoto
70b050ebb4
apprt/gtk-ng: setup split tree property
2025-08-07 08:14:02 -07:00
Mitchell Hashimoto
fa08434b28
apprt/gtk-ng: initial GhosttySplitTree widget
2025-08-07 08:14:02 -07:00
Mitchell Hashimoto
3e767c166c
datastruct: split tree node removal
2025-08-07 08:14:02 -07:00
Mitchell Hashimoto
52e264948d
apprt/gtk-ng: ASCII output for SplitTree
2025-08-07 08:14:02 -07:00
Mitchell Hashimoto
5c30ac0e8e
apprt/gtk-ng: spatial tree
2025-08-07 08:14:02 -07:00
Mitchell Hashimoto
7811c04f9d
apprt/gtk-ng: SplitTree data structure
2025-08-07 08:14:02 -07:00
Jeffrey C. Ollie
35e3ac8b4c
gtk-ng: remove use of deprecated use-es GLArea property
2025-08-05 19:56:00 -05:00
Jeffrey C. Ollie
288601e386
gtk-ng: fix OSC 22 not changing mouse shape on -ng
2025-08-05 19:56:00 -05:00
Mitchell Hashimoto
5c0e15f50f
gtk-ng: port the command palette ( #8083 )
2025-08-05 09:40:37 -07:00
Mitchell Hashimoto
19fde96d30
funny typos
2025-08-05 09:38:08 -07:00
Jeffrey C. Ollie
cf77897388
gtk-ng: port the command palette
2025-08-05 10:33:08 -05:00
Jeffrey C. Ollie
6ae333869e
zig: switch all uses of callconv(.C) to callconv(.c)
2025-08-05 10:32:03 -05:00
Mitchell Hashimoto
8c85bae931
apprt/gtk-ng: background-opacity doesn't need to be a window property
...
We only need properties for things that are bound via the blueprint
files. Otherwise, its kind of just a pain. This fixes a bug where it
wasn't being properly set initially anyways because we didn't trigger
syncAppearance.
2025-08-04 12:41:44 -07:00
Mitchell Hashimoto
55c68d809d
apprt/gtk-ng: action accelerators, clean up explicit error sets
2025-08-04 12:35:37 -07:00
Mitchell Hashimoto
ee6d9b3116
apprt/gtk-ng: surface context menu
2025-08-04 11:28:48 -07:00
Mitchell Hashimoto
1d62f37cbb
apprt/gtk-ng: global shortcuts ( #8142 )
...
Ports global shortcuts.
This is mostly a direct logic copy. The primary difference is I
converted `GlobalShortcuts` to a `GObject` which has a config and dbus
property and emits a trigger signal. Importantly, it's no longer tied or
dependent on the `gio.Application` in any way. The config and dbus
connection are updated as normal properties.
Verified with Valgrind we're clean. Found one memory leak I ported back
to legacy.
2025-08-04 10:37:57 -07:00
Mitchell Hashimoto
c8fce8850b
apprt/gtk-ng: global shortcuts
2025-08-04 10:25:24 -07:00
Jeffrey C. Ollie
83063e5527
gtk-ng: prevent split button from becoming focused
2025-08-03 13:38:49 -05:00
Mitchell Hashimoto
053e3d307b
apprt/gtk-ng: runtime CSS and custom CSS
2025-08-02 20:28:22 -07:00
Mitchell Hashimoto
5078fc5243
apprt/gtk-ng: toggle_window_decorations
2025-08-02 13:34:14 -07:00
Mitchell Hashimoto
91254bb6cc
apprt/gtk-ng: address feedback
2025-08-02 12:53:27 -07:00
Mitchell Hashimoto
e1e525ba3d
apprt/gtk-ng: winproto callbacks for subprocess env
2025-08-01 21:16:08 -07:00
Mitchell Hashimoto
523799a45f
apprt/gtk-ng: winproto resizeEvent
2025-08-01 21:05:42 -07:00
Mitchell Hashimoto
7aa84cd372
apprt/gtk-ng: quick terminal
2025-08-01 20:51:43 -07:00
Mitchell Hashimoto
084a20c865
apprt/gtk-ng: hook up all the syncAppearance calls for winproto
2025-08-01 14:58:25 -07:00
Mitchell Hashimoto
c7eee9ee7a
apprt/gtk-ng: initialize window protocol
2025-08-01 14:40:19 -07:00
Mitchell Hashimoto
780d4af8bc
apprt/gtk-ng: size_limit apprt action
...
This ports the same behavior from GTK, mostly. This also fixes a bug
where the limits would be enforced on reload. Instead, we should only
enforce them on the first surface ever.
2025-08-01 07:59:19 -07:00
Mitchell Hashimoto
0b9130aba9
apprt/gtk-ng: initial size apprt action (window-width/height)
2025-07-31 13:28:30 -07:00
Leah Amelia Chen
cf9943a3dd
gtk(wayland): bind globals correctly ( #8110 )
2025-07-31 18:28:05 +02:00
Leah Amelia Chen
c2165fc097
gtk(wayland): bind globals correctly
...
Fixes #7988
2025-07-31 15:51:49 +08:00
Mitchell Hashimoto
6c952d4168
apprt/gtk-ng: desktop notification
2025-07-30 09:31:54 -07:00
Mitchell Hashimoto
e7ea084cc3
apprt/gtk-ng: present surface
2025-07-30 09:20:15 -07:00
Mitchell Hashimoto
60b859dbf2
apprt/gtk-ng: open config, open url
2025-07-30 09:04:01 -07:00
Mitchell Hashimoto
7b1092f991
apprt/gtk-ng: surface has correct initial size
...
Ensure the surface has a correct initial size when created. This avoids
a rapid resize event and also the pty reports the correct size for
startup scripts.
This is a departure from macOS and legacy GTK. This has been an issue in
Ghostty for awhile so this is the proper path forward.
This works by deferring Surface initialization until the first resize
event. This MIGHT result in a frame or two not rendering but I haven't
noticed anything visually and having the correct size is far more
important.
2025-07-30 08:48:27 -07:00
Mitchell Hashimoto
fde50e0f1c
apprt/gtk-ng: create-window action
2025-07-29 15:07:04 -07:00
Mitchell Hashimoto
0cc8b6d10f
apprt/gtk-ng: remove all shortcuts on tab view
2025-07-29 14:57:50 -07:00
Mitchell Hashimoto
2847aeb181
apprt/gtk-ng: toggle tab overview
2025-07-29 14:56:16 -07:00
Mitchell Hashimoto
a5188142ba
apprt/gtk-ng: move tab
2025-07-29 14:52:33 -07:00
Mitchell Hashimoto
2d1232878d
apprt/gtk-ng: goto_tab
2025-07-29 14:40:45 -07:00
Mitchell Hashimoto
4fb790ca4c
apprt/gtk-ng: helper for getAncestor
2025-07-29 10:58:31 -07:00
Mitchell Hashimoto
8b14ab1221
apprt/gtk-ng: workaround for tab overview selection
2025-07-29 10:39:45 -07:00
Mitchell Hashimoto
0da6b2049d
apprt/gtk-ng: tab overview new tab
2025-07-29 10:29:28 -07:00
Mitchell Hashimoto
ccc8dac0a5
apprt/gtk-ng: new tab button
2025-07-29 10:24:25 -07:00
Mitchell Hashimoto
b475cd28d5
apprt/gtk-ng: new tab, slightly broken
2025-07-29 10:17:26 -07:00
Mitchell Hashimoto
0682811107
apprt/gtk-ng: window close confirmation
2025-07-29 09:48:17 -07:00
Mitchell Hashimoto
70010ec50a
typos
2025-07-29 09:38:31 -07:00