59 Commits

Author SHA1 Message Date
Jeffrey C. Ollie
f943a4cf87 GTK: Add compiled-in GTK resources and use them for icons.
Use glib-compile-resources to compile CSS style sheets and icons into
the Ghostty GTK binary. Makes for simpler access to icons and sets
things up for customizing the look of Ghostty with CSS in the future.
The CSS style sheets are blank for now so there will be no visual
changes.
2024-03-27 16:47:26 -05:00
Jack N
fab3490d6e add gtk-tabs-location 2024-02-25 22:56:33 -08:00
Mitchell Hashimoto
e40b79906e apprt/gtk: do not deinit tab in closeTab 2023-12-01 09:07:09 -08:00
Mitchell Hashimoto
dd39b29f30 apprt/gtk: we don't need to keep track of Tabs 2023-12-01 08:52:08 -08:00
Mitchell Hashimoto
c7eeda1f00 apprt/gtk: code aesthetic changes 2023-12-01 08:08:06 -08:00
Thorsten Ball
ba65b61fa9 gtk: restore detachable-tabs feature after adding splits 2023-11-30 21:44:52 -08:00
Thorsten Ball
a18fb4a661 gtk: fix closing of windows that contains splits 2023-11-30 21:44:52 -08:00
Thorsten Ball
8cf9d97ac3 gtk: fix replacing of splits, remove dead code 2023-11-30 21:44:52 -08:00
Mitchell Hashimoto
4c1300ab69 apprt/gkt: a lot of things are broken 2023-11-30 21:44:51 -08:00
Mitchell Hashimoto
00c02e88d2 apprt/gtk: remove Window from Surface, use container only 2023-11-30 21:44:16 -08:00
Mitchell Hashimoto
d65a804edd apprt/gtk: working on some reorg 2023-11-30 21:44:16 -08:00
Thorsten Ball
09bbaa82b4 gtk: comment out detach-tab feature after breaking it 2023-11-30 21:44:16 -08:00
Thorsten Ball
7cad9a253e gtk: use destructuring syntax 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
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
d88c29377b gtk: use deinit method on Paned consistently 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
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
be836bc777 gtk: allow closing split panes that have been 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
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
5c0b668517 Begin working on a skeleton for splits in Linux/Gtk 2023-11-30 21:41:34 -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
67119e6433 apprt/gtk: disable GTK capturing F10
Fixes #894
2023-11-20 14:16:13 -08: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
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
Raiden1411
094f8effa3 fix: begin implementation of suggested changes 2023-11-06 10:19:09 +00:00
Mitchell Hashimoto
ebd57f6bbc apprt/gtk: correct new tab button click function signature
Fixes #674

We were incorrectly reusing the action activate signal callback for the
button click. These have different function signatures.
2023-11-04 16:57:01 -07:00
Mitchell Hashimoto
59a53251cf apprt/gtk: create new tab after current tab
This behaves the same as macOS, and personally I prefer this behavior
because when I create a new tab, it is often contextual to what I'm
currently working on and keeping the tab nearby feels right.
2023-10-31 09:49:39 -07:00
Mitchell Hashimoto
e188aba7f4 apprt/gtk: if no parent is set on new window, do not inherit wd 2023-10-30 08:50:58 -07:00
Mitchell Hashimoto
cf6ee6ed14 apprt/gtk: only create window header bar with window decorations
Fixes #737
2023-10-27 10:08:59 -07:00
Mitchell Hashimoto
6a50a938d6 apprt/gtk: button to toggle inspector 2023-10-24 15:27:15 -07:00
Mitchell Hashimoto
a60f9eb9e6 apprt/gtk: empty inspector window 2023-10-24 15:27:13 -07:00
Nathan Fisher
614a9775c6 Set the mouse pointer to "text" (an I-beam) when it is over the gl_area
which the terminal embeds into for the Gtk interface. Addresses https://github.com/mitchellh/ghostty/issues/596
2023-09-30 18:26:40 -04:00
Mitchell Hashimoto
56b0cb51d5 apprt/gtk: previous_tab/next_tab action do not consume if there are no tabs 2023-09-29 22:12:38 -07:00
Mitchell Hashimoto
685495c896 apprt/gtk: make wide-style gtk tabs configurable 2023-09-28 08:54:15 -07:00
Nathan Fisher
dca0ddb7e1 (Gtk) Set tab labels to fill the available space, so that they will
divide up the avialable horizontal area instead of leaving a large
empty space in the tab bar.
2023-09-28 00:10:07 -04:00
Mitchell Hashimoto
ed0a2ecfc4 apprt/gtk: window actions should use currently active surface 2023-09-18 15:33:11 -07:00
Mitchell Hashimoto
f3662354e5 apprt/gtk: about window 2023-09-18 15:16:35 -07:00
Mitchell Hashimoto
844945e7f9 apprt/gtk: add reload config 2023-09-18 15:00:54 -07:00
Mitchell Hashimoto
c3a72b9188 apprt/gtk: add new tab button in header 2023-09-18 14:55:37 -07:00
Mitchell Hashimoto
7996be25a8 apprt/gtk: new window, tab 2023-09-18 14:51:19 -07:00