60 Commits

Author SHA1 Message Date
Mitchell Hashimoto
d25568ffdb apprt/gtk: honor background opacity 2023-07-03 20:21:16 -07:00
Thorsten Ball
567ba5a25e gtk: handle ctrl+return to toggle fullscreen
This is a follow-up to #172 and adds fullscreen handling to the GTK
apprt.

Works reliably for the current window and mimics exactly what happens
when F11 is pressed, which seems to be the standard keybinding for GTK
apps to toggle fullscreen.
2023-07-03 06:38:14 +02:00
Mitchell Hashimoto
314f9287b1 Update Zig (#164)
* update zig

* pkg/fontconfig: clean up @as

* pkg/freetype,harfbuzz: clean up @as

* pkg/imgui: clean up @as

* pkg/macos: clean up @as

* pkg/pixman,utf8proc: clean up @as

* clean up @as

* lots more @as cleanup

* undo flatpak changes

* clean up @as
2023-06-30 12:15:31 -07:00
Mitchell Hashimoto
68631a1ccd apprt: plumb through scroll mods to core, don't handle them yet 2023-06-29 10:41:42 -07:00
Mitchell Hashimoto
f31d6fb8fe apprt: clean up how apprt initializes surfaces 2023-05-31 21:08:50 -07:00
Mitchell Hashimoto
77dcc10f80 linux: fit gtk/flatpak builds 2023-05-27 10:01:20 -07:00
Mitchell Hashimoto
69aaab50eb apprt/gtk: quit confirmation window 2023-03-27 10:45:27 -07:00
Mitchell Hashimoto
59f42f50a4 apprt/gtk: window close confirmation 2023-03-27 10:41:30 -07:00
Mitchell Hashimoto
4d29f028c6 apprt/gtk: close tab button will show confirmation properly 2023-03-27 10:35:49 -07:00
Mitchell Hashimoto
16244d0dab apprt/gtk: close keybind doesn't leak memory 2023-03-27 10:24:01 -07:00
Mitchell Hashimoto
4d41b3ff54 Merge pull request #134 from mitchellh/gtk-confirm
gtk, macos: show confirmation dialog on surface close with active child process
2023-03-26 10:59:09 -07:00
Mitchell Hashimoto
bc9973d37f apprt/gtk: set proper defaults to confirmation dialog 2023-03-25 16:45:17 -07:00
Mitchell Hashimoto
3689f1fe39 apprt/gtk: only show exit confirmation if process is alive 2023-03-25 16:36:12 -07:00
Mitchell Hashimoto
2c0dbab7ba apprt/gtk: always confirm when surface is closed 2023-03-25 16:26:30 -07:00
Mitchell Hashimoto
1c587759a0 apprt/gtk: fix key callback 2023-03-25 15:45:15 -07:00
Mitchell Hashimoto
a9928cfb90 implement reload_config app message 2023-03-19 09:50:18 -07:00
Mitchell Hashimoto
3e1f975551 move config loading into apprt to prep for reloading 2023-03-19 09:50:17 -07:00
Mitchell Hashimoto
f03d765020 Merge pull request #114 from mitchellh/process-exit
Detect command exit and close surface
2023-03-18 19:59:55 -07:00
Mitchell Hashimoto
a950adbf17 apprt/gtk: do not use unique app mode (do not set ID for GApplication)
Fixes #101. This prevents single-instance GTK mode from being enabled.
For now, this makes the most sense in my opinion but we can revisit
later.
2023-03-18 19:37:00 -07:00
Mitchell Hashimoto
00c837e0d2 apprt: all implement close surface 2023-03-18 19:25:54 -07:00
Mitchell Hashimoto
f5e49e2989 apprt/gtk: copy the app id because we need to own it according to docs 2023-03-17 12:03:58 -07:00
Mitchell Hashimoto
afc1ac5321 apprt/gtk: add more debug logs about scale factors 2023-03-17 11:25:23 -07:00
Mitchell Hashimoto
53d82d71a4 apprt/gtk: make compatible with GTK < 2.74 2023-03-16 16:38:00 -07:00
Mitchell Hashimoto
ce86c64b42 update zig, src for loops 2023-02-27 21:46:42 -08:00
Mitchell Hashimoto
227f6eb4f1 gtk: handle <tab> so it doesn't move focus 2023-02-25 14:57:34 -08:00
Mitchell Hashimoto
35af0ef362 gtk: previous/next tab wraps 2023-02-25 10:53:15 -08:00
Mitchell Hashimoto
6c6a3d6a5d "goto_tab" key binding to jump to a specific tab, defaults to Super+N
The apprt surface must implement `gotoTab` to make this work. This is
only implemented in GTK for now.
2023-02-25 10:48:38 -08:00
Mitchell Hashimoto
7a0411d65a apprt: move newTab to a surface callback rather than app 2023-02-25 10:38:19 -08:00
Mitchell Hashimoto
aa2d3720b6 gtk: previous/next tab bindings 2023-02-25 10:29:58 -08:00
Mitchell Hashimoto
65b3c7ca86 gtk: convert keyvals back into unmodified keyvals for shifted ops 2023-02-25 10:11:57 -08:00
Mitchell Hashimoto
cbebbd78b3 gtk: re-enable closing on no windows 2023-02-24 17:51:10 -08:00
Mitchell Hashimoto
c80270ff50 gtk: close surface works 2023-02-24 17:50:20 -08:00
Mitchell Hashimoto
a1a754530f gtk: tab reordering, hide tab bar with one tab, etc. 2023-02-24 16:13:15 -08:00
Mitchell Hashimoto
ad11ec145c gtk: new tab keyboard shortcut works 2023-02-24 16:08:02 -08:00
Mitchell Hashimoto
ac1c961c4e gtk: close tab button 2023-02-24 15:54:36 -08:00
Mitchell Hashimoto
fface4a6b3 gtk: add tab works 2023-02-24 15:19:57 -08:00
Mitchell Hashimoto
7e3ad24d89 gtk: put gl area in notebook 2023-02-24 14:04:07 -08:00
Mitchell Hashimoto
f9457e76ab gtk: set title stub 2023-02-24 12:17:02 -08:00
Mitchell Hashimoto
382a32be6c gtk: clipboard 2023-02-24 12:13:31 -08:00
Mitchell Hashimoto
c4393ece4c gtk: make clear opengl requirements 2023-02-24 07:58:31 -08:00
Mitchell Hashimoto
da64fff110 gtk: receive key press for all keys 2023-02-24 07:58:31 -08:00
Mitchell Hashimoto
e4b76b5974 gtk: set cursor to ibeam over terminal surface 2023-02-24 07:58:30 -08:00
Mitchell Hashimoto
916f07d9d3 gtk: mouse cursor pos and scroll 2023-02-24 07:58:30 -08:00
Mitchell Hashimoto
adae05cf04 gtk: mouse input 2023-02-24 07:58:30 -08:00
Mitchell Hashimoto
3ab51f5643 gtk: key press/release 2023-02-24 07:58:30 -08:00
Mitchell Hashimoto
4fe7b9b3f2 gtk: char input 2023-02-24 07:58:30 -08:00
Mitchell Hashimoto
358ce5a24e gtk: start hooking up event callbacks 2023-02-24 07:58:30 -08:00
Mitchell Hashimoto
8fbafda3d3 gtk: listen to should quit from app 2023-02-24 07:58:30 -08:00
Mitchell Hashimoto
793c19e187 gtk: proper surface cleanup 2023-02-24 07:58:30 -08:00
Mitchell Hashimoto
90bea1b742 gtk: get proper content scaling 2023-02-24 07:58:30 -08:00