npub1uz…c06u5 on Nostr: embedding custom wayland UI stuff on top of gtk3 and gtk4 based applications works! ...
embedding custom wayland UI stuff on top of gtk3 and gtk4 based applications works! 🎉
the gtk APIs to get down to the wayland surface are a bit awkward, but at least its accessible.
I tried the same with Qt6 and couldn't find a way to have it return the underlying wl_surface pointer. 🤷
I got an LV2 plugin UI with this setup working, but no hosts to try it out against.
Modifying jalv.gtk3 is likely the easiest path... 🤔
WIP test code dump at
https://github.com/falkTX/wayland-audio-plugin-test
Published at
2025-07-04 21:45:00 UTCEvent JSON
{
"id": "2523f0560d146d427dd526bffd655e32f7b73258334267e02d3150bba6e92cf6",
"pubkey": "e08ca29c7b1366058315c15296abb1b596d0e8084ba94ffc96c6a366e0af04b8",
"created_at": 1751665500,
"kind": 1,
"tags": [
[
"imeta",
"url https://mastodon.falktx.com/system/media_attachments/files/000/082/994/original/b936114d35870d3b.png",
"m image/png"
],
[
"proxy",
"https://mastodon.falktx.com/@falktx/114797150227316484",
"web"
],
[
"proxy",
"https://mastodon.falktx.com/users/falktx/statuses/114797150227316484",
"activitypub"
],
[
"L",
"pink.momostr"
],
[
"l",
"pink.momostr.activitypub:https://mastodon.falktx.com/users/falktx/statuses/114797150227316484",
"pink.momostr"
],
[
"-"
]
],
"content": "embedding custom wayland UI stuff on top of gtk3 and gtk4 based applications works! 🎉 \n\nthe gtk APIs to get down to the wayland surface are a bit awkward, but at least its accessible.\nI tried the same with Qt6 and couldn't find a way to have it return the underlying wl_surface pointer. 🤷 \n\nI got an LV2 plugin UI with this setup working, but no hosts to try it out against.\nModifying jalv.gtk3 is likely the easiest path... 🤔 \n\nWIP test code dump at https://github.com/falkTX/wayland-audio-plugin-test\nhttps://mastodon.falktx.com/system/media_attachments/files/000/082/994/original/b936114d35870d3b.png\n",
"sig": "d749e318e78dd2a9d70d7a5742bfac18f6639ff9ac3590c70e452c3c8fd3d4f1434cc109b7ebb0d95a53b807fbd780ed9e56f9fed8b9f9b82b271074e1695031"
}