Thorsten Ball
290b79ad62
gtk: restore "inherit working directory" behavior
2023-11-30 21:44:16 -08:00
Thorsten Ball
b60133fd34
gtk: keep buffer of surface title, update if focused
2023-11-30 21:44:15 -08:00
Thorsten Ball
b1e3685664
gtk: find first surface to focus on if sibling is Paned
2023-11-30 21:44:04 -08:00
Thorsten Ball
f1e81563d9
gtk: always remember focused surface before grabbing focus
2023-11-30 21:44:04 -08:00
Thorsten Ball
a1fb74d8aa
gtk: rework naming conflict after rebase
2023-11-30 21:44:03 -08:00
Thorsten Ball
ab93579bf6
gtk: port new-tab behavior over after rebase and refactor
...
This is the new behavior from #776 .
2023-11-30 21:43:39 -08:00
Thorsten Ball
8c58bf222d
gtk: move logic of splitting surface in a tab to Tab
2023-11-30 21:43:39 -08:00
Thorsten Ball
633a3e2e85
gtk: remove duplication of new surface creation
2023-11-30 21:43:39 -08:00
Thorsten Ball
eed2bb3078
gtk: refactor code and add comments to Paned
2023-11-30 21:43:39 -08:00
Thorsten Ball
fde6289880
gtk: rename and refactor Tab.deinit
2023-11-30 21:43:39 -08:00
Thorsten Ball
34e4261210
gtk: refactor the Paned deinit method
2023-11-30 21:43:39 -08:00
Thorsten Ball
adba77c3f9
gtk: fix warning when replacing children of Paned
2023-11-30 21:43:39 -08:00
Thorsten Ball
d88c29377b
gtk: use deinit method on Paned consistently
2023-11-30 21:43:39 -08:00
Thorsten Ball
77b8e3c956
gtk: move helper function around
2023-11-30 21:43:39 -08:00
Thorsten Ball
aaa6ff8884
gtk: introduce helper method on Paned
2023-11-30 21:43:39 -08:00
Thorsten Ball
dc0f6e3a5b
WIP: gtk: handle split surfaces when closing tab/window
2023-11-30 21:43:38 -08:00
Thorsten Ball
a7717289eb
gtk: fix tab settings after introducing *Tab
2023-11-30 21:43:38 -08:00
Thorsten Ball
790cd84203
gtk: refator Parent/Tab/Paned and how they interact
2023-11-30 21:43:38 -08:00
Thorsten Ball
9ddf097a03
gtk: Refactor how a new split is created
2023-11-30 21:43:38 -08:00
Thorsten Ball
de7cbb602f
gtk: refactor replacing child of Paned
2023-11-30 21:43:38 -08:00
Thorsten Ball
0add9de0eb
gtk: handle closing of surfaces with sibling being a Paned
2023-11-30 21:43:38 -08:00
Thorsten Ball
142a2f4cb0
gtk: refactor how Paned is created
2023-11-30 21:43:38 -08:00
Thorsten Ball
19f7b37bb3
gtk: move Child/Parent/Position into same file
2023-11-30 21:43:38 -08:00
Thorsten Ball
be836bc777
gtk: allow closing split panes that have been split
2023-11-30 21:43:38 -08:00
Thorsten Ball
5e789bf152
gtk: allow splitting when already split
2023-11-30 21:43:38 -08:00
Thorsten Ball
2ed841145b
gtk: take direction into account when creating a new split
2023-11-30 21:43:38 -08:00
Thorsten Ball
a50fc7bc50
gtk: use unreachable
in switch statements
2023-11-30 21:43:38 -08:00
Thorsten Ball
8afcce666a
gtk: wire up close-tab button
2023-11-30 21:43:38 -08:00
Thorsten Ball
98a5016598
gtk: simplify code when creating new split
2023-11-30 21:43:38 -08:00
Thorsten Ball
601eed24c4
gtk: remove code comments and dead code
2023-11-30 21:43:38 -08:00
Thorsten Ball
2d7a81c0db
gtk: cleanup code in *Paned
2023-11-30 21:43:38 -08:00
Thorsten Ball
d88898fc61
gtk: get 1st version of GTK splits working
2023-11-30 21:43:37 -08:00
Nathan Fisher
aba1b85503
Add Parent
and Child
types for tracking splits; Add methods for
...
adding start and end children in `Paned` widget;
2023-11-30 21:41:34 -08:00
Nathan Fisher
5b5c2c9ab2
Fill out the rest of Tab.init()
2023-11-30 21:41:34 -08:00
Nathan Fisher
1b16c2dd23
Add to Tab.init and fix compilation errors
2023-11-30 21:41:34 -08:00
Nathan Fisher
5c0b668517
Begin working on a skeleton for splits in Linux/Gtk
2023-11-30 21:41:34 -08:00
Chris Marchesi
1832401e0e
gtk: make sure WM_CLASS is being set on X11
...
This ensures that WM_CLASS is being set on X11, looks like this was
missed in #816 (not 100% sure if it always needs to be set in GDK or if
it's a side effect of us not using g_application_run).
This also adds the "x11-instance-name" config attribute to control the
instance name, which defaults to "ghostty" (or "ghostty-debug" on debug
builds).
2023-11-30 20:26:12 -08:00
Mitchell Hashimoto
eac1731d9d
apprt/gtk: translate modifier-only presses to proper modifier state
2023-11-29 20:37:56 -08:00
Mitchell Hashimoto
5acaf3279d
apprt/gtk: use new resources dir
2023-11-22 22:10:16 -08:00
Mitchell Hashimoto
2ce3db7dc2
apprt/gtk: set default cursor to be "text" (ibeam)
...
Fixes #933
On startup, we'd set the cursor to "text" but we wouldn't store that as
our cursor so when the mouse was unhidden, we'd go back to "default".
This PR changes it so that on surface startup we set and store the
"text" cursor so as the cursor hides/shows it reverts to the proper
value.
2023-11-21 17:10:44 -08:00
Mitchell Hashimoto
0430758b60
Merge pull request #923 from vancluever/vancluever-config-gtk-titlebar
...
apprt/gtk: let GTK titlebar be toggleable
2023-11-20 20:29:47 -08:00
Chris Marchesi
39e3fca210
apprt/gtk: let GTK titlebar be toggleable
...
This adds the gtk-titlebar option, which allows you to toggle the GTK
titlebar on (default) and off.
Under some circumstances (e.g. tiling WMs with titlebars enabled), one
may wish to disable the GTK titlebar/CSD for aesthetic reasons. This
allows you to do that.
Fixes #920 .
2023-11-20 20:07:11 -08:00
Mitchell Hashimoto
f2c1e18647
apprt/gtk: support IME popups such as Asian language input
...
Fixes #882
This hooks up all the GTK.IMContext things properly so that we support
switching input methods, popups, etc. This should improve our support
for asian languages, emoji input, etc.
2023-11-20 18:08:23 -08:00
Mitchell Hashimoto
67119e6433
apprt/gtk: disable GTK capturing F10
...
Fixes #894
2023-11-20 14:16:13 -08:00
Mitchell Hashimoto
080789957a
Merge pull request #903 from mitchellh/macos-update
...
Custom Shaders (Metal and OpenGL)
2023-11-17 22:06:38 -08:00
Mitchell Hashimoto
f2513e0825
Merge pull request #876 from gpanders/notifications
...
Add support for desktop notifications
2023-11-17 21:57:09 -08:00
Mitchell Hashimoto
fb0929a11b
renderer/opengl: extract cell program state to dedicated struct
2023-11-17 21:51:05 -08:00
Mitchell Hashimoto
389712a698
renderer/opengl: switch to new update vs draw
2023-11-17 21:50:34 -08:00
Mitchell Hashimoto
67dce5ce0e
update zig-objc
2023-11-17 21:50:34 -08:00
Tim Culverhouse
caf2252144
gtk: implement desktop notifications
2023-11-17 12:59:23 -06:00