Mitchell Hashimoto
aff64d9951
Merge pull request #247 from mitchellh/gtk-single-instance
...
GTK single instance, fix UB in termio read thread termination
2023-08-07 21:43:08 -07:00
Mitchell Hashimoto
6d32d74996
apprt/gtk: remove useless calls
2023-08-07 21:15:42 -07:00
Mitchell Hashimoto
2e98d43a58
apprt/glfw: launch window on startup
2023-08-07 19:28:48 -07:00
Mitchell Hashimoto
60a36ca5cc
apprt/gtk: enable single instance mode
2023-08-07 19:26:57 -07:00
Mitchell Hashimoto
22296b377a
Revert "Merge pull request #244 from mitchellh/alt-as-esc"
...
This reverts commit c139279d479682c17f63d9b57c2d56608d09d16a, reversing
changes made to 4ed21047a734d7c586debe0026e3b6ea90ed1622.
We do want to do this but this broke bindings.
2023-08-07 17:06:40 -07:00
Mitchell Hashimoto
eca5955e65
apprt/gtk: new input mods format
2023-08-07 14:35:52 -07:00
Mitchell Hashimoto
67cbabd605
make keyboard modifiers left/right-aware throughout core
2023-08-07 14:33:56 -07:00
Mitchell Hashimoto
0bb286eeb2
C API for invoking bindings
2023-08-05 14:46:47 -07:00
Mitchell Hashimoto
8ff81de30f
apprt/gtk: fix build for macos non-native fullscreen changes
2023-08-04 18:19:48 -07:00
Thorsten Ball
b56ffa6285
Add config setting to turn non-native fullscreen on or off
2023-08-04 14:12:33 -07:00
Thorsten Ball
3ab96f266b
gtk: add missing space in close dialog and add newline
...
See before/after screenshots. Before, without the space, it's wrong. I
fixed that and added a newline, since a big paragraph like that looks a
bit wrong in a dialog popup.
2023-08-01 07:03:57 +02:00
Thorsten Ball
a01a3fdcde
gtk: remove thin, white border
...
The GTK app has a really thin, white border around the terminal
contents. It's really distracting when in fullscreen.
At first I thought it's the window that has a border, but turns out
that's not it. It's the GTK Notebook widget. Luckily for us, GTK4 has a
single API call that allows us to turn off the border.
2023-07-23 13:05:02 +02:00
Thorsten Ball
de5780a771
gtk: change default window size to 1000x600
...
The previous 200x200 looks ... weird :) But it was also quite unhandy
because I constantly have to resize new builds when I want to check
something.
2023-07-17 06:54:47 +02:00
Mitchell Hashimoto
9a079bb5b9
background-blur-radius for macOS
2023-07-03 20:43:53 -07:00
Mitchell Hashimoto
d25568ffdb
apprt/gtk: honor background opacity
2023-07-03 20:21:16 -07:00
Mitchell Hashimoto
338f89679d
apprt: add C API for detecting background transparency per surface
2023-07-03 19:44:06 -07:00
Mitchell Hashimoto
017da411f8
metal: start setting up background transparency
2023-07-03 17:59:50 -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
Thorsten Ball
8e464db049
Toggle fullscreen on super/ctrl+return, only macOS for now
...
This fixes or at least is the first step towards #171 :
- it adds `cmd/super + return` as the default keybinding to toggle
fullscreen for currently focused window.
- it adds a keybinding handler to the embedded apprt and then changes
the macOS app to handle the keybinding by toggling currently focused
window.
2023-07-02 20:23:49 +02:00
Thorsten Ball
6ff3f62e3a
macOS: implement cmd+[0-9] to goto tab
...
This is my attempt at fixing #63 . It works! But:
1. The `NotificationCenter` subscription is triggered once for every
open tab. That's obviously wrong. But I'm not sure and could use some
pointers where else to put the subscription. That leads me to...
2. I'm _not_ knowledgable in Swift/AppKit/SwiftUI, so I might have put
the wrong/right things in the wrong/right places. For example: wasn't
sure what's to be handled in Swift and what's to be handled by the
core in Zig.
Would love some pointers :)
2023-07-01 09:08:02 -07: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
20f46d5c08
define precision scrolling and momentum structs, C API
2023-06-29 10:38:15 -07:00
Mitchell Hashimoto
56f8e39e5b
Update zig, mach, fmt
2023-06-25 11:08:20 -07:00
Mitchell Hashimoto
f31d6fb8fe
apprt: clean up how apprt initializes surfaces
2023-05-31 21:08:50 -07:00
Mitchell Hashimoto
0fca74c089
apprt/glfw: inherit working dir
2023-05-31 19:18:55 -07:00
Mitchell Hashimoto
553e09eff9
apprt/embedded: new surfaces inherit last focused
2023-05-31 19:12:01 -07:00
Mitchell Hashimoto
5acf7eb8fd
apprt/embedded: clipboard value can be null
2023-05-28 10:20:59 -07:00
Mitchell Hashimoto
77dcc10f80
linux: fit gtk/flatpak builds
2023-05-27 10:01:20 -07:00
Mitchell Hashimoto
f5269df68f
apprt/glfw: quit cleans up resources properly
2023-03-27 10:47:54 -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
f36a35ecc9
core: quit flag is reset after tick
2023-03-27 10:10:06 -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
86c4a8ed7d
apprt/embedded: support new process alive callback on close
2023-03-25 16:41:18 -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
decaee61b2
apprt/embedded: support unmapped keys
2023-03-25 15:44:17 -07:00
Mitchell Hashimoto
67d3507f9a
apprt/glfw: new keycallback for unmapped
2023-03-25 15:40:49 -07:00
Mitchell Hashimoto
8d3f40fa41
apprt/embedded: reload config support
2023-03-19 09:50:54 -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
ddbc0dc586
apprt/embedded: incorrect function call for new close surface
2023-03-18 19:40:42 -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