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
Tim Culverhouse
caf2252144
gtk: implement desktop notifications
2023-11-17 12:59:23 -06:00
Gregory Anders
5290070be9
clipboard: add Clipboard variant for primary clipboard
...
In practice, the primary and selection clipboards are treated exactly
the same, but this allows OSC 52 sequences to use either 's' or 'p' as
the clipboard target.
2023-11-16 16:35:48 -06:00
Mitchell Hashimoto
ad24e5e687
renderer/opengl: use new preedit format
2023-11-15 09:59:08 -08:00
Mitchell Hashimoto
36c3b1b3d1
apprt/gtk: gtk-adwaita runtime config to configure libadwaita
...
Fixes #874
2023-11-14 08:33:55 -08:00
Mitchell Hashimoto
2489ef4c13
stylistic tweaks
2023-11-11 15:15:52 -08:00
Gregory Anders
98b43007a0
core: use ClipboardRequestType instead of ClipboardPromptReason
...
Instead of making a separate enum that must be translated from the
ClipboardRequest type, simply re-use ClipboardRequest to determine the
clipboard confirmation reason.
2023-11-10 23:12:39 -05:00
Gregory Anders
9d3385703d
gtk: fix memory leak in GTK clipboard confirmation window
2023-11-10 23:12:39 -05:00
Gregory Anders
960a1bb091
gtk: implement OSC 52 prompts
2023-11-10 23:12:39 -05:00
Gregory Anders
86245ff0cf
macos: add option to prompt user for confirmation on OSC 52 commands
2023-11-10 23:12:39 -05:00
Mitchell Hashimoto
8c59d1176e
apprt/gtk: ensure equal tab width, truncate with ellipses
...
Fixes #607
2023-11-09 11:12:55 -08:00
Mitchell Hashimoto
0c695f3510
apprt/gtk: add comment about key aliases
2023-11-08 09:37:53 -08:00
Severus
3497fec7df
Add keymap for KP_*
...
We miss some kp_* like: kp_home, kp_end, kp_up, kp_down, kp_page_up, kp_page_down, kp_left, kp_right.
Then we map those keys in gtk runtime.
2023-11-08 14:43:00 +07:00
Tim Culverhouse
49fb5c8688
gtk(mouse): use "text" enum as default value
...
Use the .text field of the enum as the default value of the mouse shape
instead of renaming .default. Store the default value as the current
value for use in subsequent commits
2023-11-06 14:36:57 -08:00
Mitchell Hashimoto
f338c09506
apprt/gtk: move default id into scope
2023-11-06 08:55:13 -08:00
Mitchell Hashimoto
364a14d7a2
apprt/gtk: fix valid id check
2023-11-06 08:54:23 -08:00
Mitchell Hashimoto
3564dd5e7e
stylistic changes
2023-11-06 08:47:09 -08:00
Raiden1411
60717cde14
chore: update fullscreen implementation
2023-11-06 14:03:44 +00:00