Mitchell Hashimoto
7fbc73ad37
macos: implement ctrl+command+d for quicklook under cursor
2024-07-01 10:08:38 -07:00
Mitchell Hashimoto
57d71450ab
ctrl+click is handled as right-click (with various details)
...
If mouse capturing is enabled, we encode ctrl+click as ctrl+left-click
and DO NOT handle it as right click.
2024-06-30 19:44:51 -07:00
Mitchell Hashimoto
27fd05d112
apprt/gtk: conform to new mouse button API
2024-06-30 10:26:27 -07:00
Mitchell Hashimoto
03f37087a5
mouse button callbacks returns bool for consumption
2024-06-30 09:42:15 -07:00
Mitchell Hashimoto
db29c10bce
apprt: scale coretext font size for quicklook properly
2024-06-29 11:43:13 -05:00
Mitchell Hashimoto
9a78563428
add TODO for branch
2024-06-29 11:29:02 -05:00
Mitchell Hashimoto
26735f0e05
apprt: convert selection info to a single struct and C API
2024-06-29 11:23:14 -05:00
Mitchell Hashimoto
80700d524d
macos: add API to get selection top-left for quicklook
2024-06-29 10:42:45 -05:00
Mitchell Hashimoto
4c3fbffa4b
macos: return valid selection range
2024-06-29 10:42:45 -05:00
Mitchell Hashimoto
d5f27245d4
macos: hacky API to get a CTFont for QuickLook
2024-06-29 10:42:45 -05:00
Mitchell Hashimoto
6faeb9ba40
core: mouse pressure state and callbacks
2024-06-29 10:42:45 -05:00
Severus
49d10fb661
Fix issue 1667
...
When GTK 4.14 released, it used ngl by default with GSK_RENDERER. It
leads to destroy VAO state when we closed tab or detach tab. It handles
it incorrectly with opengl's engine.
This is a fix for that issue.
2024-06-28 23:35:55 +07:00
Mitchell Hashimoto
cb76fe6634
fix linux builds
2024-06-24 15:16:24 -07:00
Cameron Dart
406d494e1d
feat(gtk): focus follows mouse
2024-06-13 00:59:38 +00:00
Mitchell Hashimoto
25484d2ccc
macos: set background opacity/blur on window controller not surface
2024-06-07 12:31:45 -07:00
Mitchell Hashimoto
dda6a22ea9
apprt/gtk: cgroup hierarchy only affects surfaces
2024-06-05 10:42:43 -07:00
Mitchell Hashimoto
99d567274b
config: add cgroup memory limit config
2024-06-05 10:27:53 -07:00
Mitchell Hashimoto
3b41b89c23
apprt/gtk: config to hard fail on cgroup init
2024-06-05 09:47:48 -07:00
Mitchell Hashimoto
ad5d44af10
config: control cgroup isolation
2024-06-05 09:43:57 -07:00
Mitchell Hashimoto
a63c8d0913
termio: plumb a lot more to get ready to move into cgroup
2024-06-05 09:25:36 -07:00
Mitchell Hashimoto
dc51b8269c
plumb the linux cgroup through to termio
2024-06-04 21:37:34 -07:00
Mitchell Hashimoto
1285b4f243
apprt/gtk: store transient cgroup
2024-06-04 21:10:42 -07:00
Mitchell Hashimoto
01bfce0981
os: cgroup can set memory limits
2024-06-04 21:02:25 -07:00
Mitchell Hashimoto
d351e80158
os: cgroup create/move
2024-06-04 20:22:17 -07:00
Mitchell Hashimoto
bbe525c964
os: API to configure cgroup controllers
2024-06-04 19:36:48 -07:00
Mitchell Hashimoto
b5c4d2f60d
os: rename linux => cgroup
2024-06-04 19:28:12 -07:00
Mitchell Hashimoto
c0b061edd9
os: API for listing cgroup controllers
2024-06-04 19:23:18 -07:00
Mitchell Hashimoto
409c958b7e
apprt/gtk: cgroup initialization
2024-06-04 18:59:44 -07:00
Paul Berg
2d9aad9806
gtk: update tab's window upon switching notebook
2024-06-04 09:19:15 +02:00
Mitchell Hashimoto
29b3f9d528
gtk: set tab group so that tabs can be dropped onto other windows
...
Related to #1122
2024-06-03 16:21:50 -07:00
Mitchell Hashimoto
a72a02488f
gtk: goto_split:previous/next wrap
...
Fixes #1258
This matches macOS.
2024-06-03 16:06:24 -07:00
Mitchell Hashimoto
d6f79ce96b
gtk: note setting title unhides the cursor
2024-06-03 15:36:10 -07:00
Mitchell Hashimoto
67c17cba1a
apprt/gtk: only set cursor on shape change if its visible
2024-06-03 15:07:33 -07:00
Mitchell Hashimoto
0abb6b9efa
apprt/gtk: when dragging tab out, grab focus
2024-06-03 14:40:19 -07:00
Mitchell Hashimoto
14417d2592
Allow keybinding arbitrary unicode codepoints ( #1814 )
...
Fixes #1802
This allows `keybind` configurations to map to any Unicode codepoint. This enables keybindings for which we don't have a registered keycode or for custom keyboard firmwares that may produce arbitrary text (but the Ghostty support is limited to a single codepoint).
The `keybind` syntax is unchanged. If a bound character doesn't map to a known logical key that Ghostty knows about, we map it to a Unicode codepoint. The unicode codepoint is compared against the _unshifted codepoint_ from the apprt key event.
Note that this binding is to a single _codepoint_. We don't support arbitrary sequences of characters or multi-code point graphemes for keybindings due to the complexity in memory management that would introduce.
This also provides a good fallback for scenarios where it might make sense to educate Ghostty about a key code or fix a bug in our keyboard input system, but the unicode data is correct. In that scenario, unicode key binds should allow key binds to still work while we investigate the input issues.
Example:
```
shift+ö=text:hello
```
This now works as expected on a US hardware keyboard with the Hungarian keyboard layout.
2024-06-02 10:53:36 -07:00
Jon Parise
2a66d37e48
Update functional URLs for ghostty-org
2024-06-01 16:44:09 -04:00
Jeffrey C. Ollie
aa9813bc79
Add split right & split down menu entries for the GTK apprt.
...
Inspired by #1752
2024-05-11 11:48:11 -05:00
Mitchell Hashimoto
a11c7ac785
update Dear Imgui to 1.90.6
2024-05-10 10:17:33 -07:00
Mitchell Hashimoto
ae0464cf70
Merge pull request #1741 from qwerasd205/non-integer-point-size
...
feat(font): Non-integer point sizes
2024-05-08 21:36:48 -07:00
Mitchell Hashimoto
e81f525101
apprt/gtk: set GDK_DEBUG
2024-05-08 21:04:50 -07:00
Qwerasd
5df0935f82
update font_size to f32 in libghostty
2024-05-09 00:03:40 -04:00
Mitchell Hashimoto
ca9689be46
renderer/metal: API to handle macOS display ID changing
2024-05-04 19:40:58 -07:00
Mitchell Hashimoto
e31e25f54d
apprt/embedded: add draw now API
2024-05-04 14:49:49 -07:00
Mitchell Hashimoto
57bf0b08ff
Revert "Merge pull request #1690 from TheOnlyMrCat/gtk_opacity"
...
This reverts commit cbd787c92d296fc4b990a2d1cbf5c901af5b08bc, reversing
changes made to 74e8275e8ba38116a2f6a585902e7f8897c9b085.
See: https://github.com/mitchellh/ghostty/issues/1704
2024-04-21 10:17:38 -07:00
Mitchell Hashimoto
915e09367a
Merge pull request #1696 from mitchellh/update-zig
...
Update to Latest Zig
2024-04-18 16:40:37 -07:00
Mitchell Hashimoto
cbd787c92d
Merge pull request #1690 from TheOnlyMrCat/gtk_opacity
...
Fix background-opacity for the GTK backend
2024-04-18 15:04:56 -07:00
Mitchell Hashimoto
bd7d71440e
update zig, fix linux build
2024-04-18 13:27:15 -07:00
Max Guppy
2c8a1ada17
apprt/gtk: Fix background-opacity
2024-04-18 15:42:17 +10:00
Mitchell Hashimoto
595f24585e
working on more zig breaking changes
2024-04-17 20:50:50 -07:00
Jon Parise
1087b9b0fd
apprt/embedded: store userdata directly on Surface
...
We were previously retaining Options on the Surface struct, but other
than userdata, we only use those values for initialization. Instead,
store just the opaque userdata value on the Surface and clarify that
Surface.Options are only used for initialization.
2024-04-17 12:57:19 -07:00