Replies: 4 comments 14 replies
-
I'm not sure why this matter is being turned into a vote. We'll likely need to disable embedding by default for technical reasons that are out of our control:
@sakertooth mentioned a desire to remove it completely claiming:
@Rossmaxx there are many mistakes in your post.
From what I recall, suil won't embed at all. If this is true, this doesn't explain that properly.
macOS has QT Embed like the others, I just don't think we utilize it yet due to lack of plugin support.
From my understanding VST scaling issues exist there too just like in #7683 but may be hidden by our DPI awareness flags.
Is this statement even true?
That feature is about detaching Qt widgets -- which Qt Embed would benefit from if it we kept it. These tasks may have adjacencies to each other, but I don't see how they're related.
You have my permission to copy/paste what I write, I just asked for investigation into better Task Manager icons so we can distinguish them when switching between windows.
|
Beta Was this translation helpful? Give feedback.
-
Embedding is broken on Linux and this leads to new users regularly asking why their VSTs aren't displaying correctly. So I think we definitely need to change the default on Linux to no embedding, at least until it gets fixed (if it gets fixed). If embedding works fine on Windows, I think we should keep it the default there. If we could get Linux embedding to work, I think it would be nice for users if all windows were embedded by default, because with the detachable windows feature from #3532 they then could easily be detached if desired. The embedding option in the settings probably wouldn't be needed if we could get it to work that way. CLAP plugins with a GUI can support floating windows, embedded windows, or both. I've heard that Wayland doesn't have proper support for embedded windows yet, which is unfortunate. But for platforms where we can have embedded windows, I think that would provide the most functionality if we could default to using it - assuming we could get it to work. Though as a disclaimer, I know very little about GUIs, so I'm not a great person to ask about GUI-related questions. |
Beta Was this translation helpful? Give feedback.
-
So here's my stance on this. Qt embedding is supposed to be simple and straightforward. As far as I'm aware it takes up about 4 LoC, and does its job rather decently. Ideally most of the bugs we encounter should be dealt with by Qt team, at least as far as I'm concerned. Scaling is one of those issues. As far as other embed methods go, AFAIK it's pretty much what Qt does, but without abstractions -- I don't really know why are they present in the first place. My suggestion would be disable embeds by default and leave at least Qt embedding in case it gets better. |
Beta Was this translation helpful? Give feedback.
-
Can anyone please clarify what is meant? Is this about embedding other types of GUI than Qt into Qt? |
Beta Was this translation helpful? Give feedback.
-
Overview
Embedding creates more problems than it solves. Also, we are introducing newer methods for lv2 and clap.
If it works properly, embedding is a nice to have feature, especially in the MDI setup that we have currently.
Dom often says we should fix stuff instead of removing, we can debate over here for this context to decide if it's worth fixing.
Qt6 support
The x11 embedding uses the qt5-x11embed submodule, which if we intend to use with qt6, needs to be patched up.
Cross platform support
We have a cross platform "qt embedding" method which is full of bugs, and the other platform specific methods ain't much better either. Win32 method for windows is somewhat bug free. And mac, we don't even have embedding support to begin with, and for linux vsts, embedding is disabled by default
LV2 and clap
For lv2, @JohannesLorenz plans to use a completely different method using suil package. @messmerd what's things like on clap?
detach windows (#7586)
Since the detach windows PR is nearing completion, once that's done, having no embedding wouldn't look much out of place.
There's some other points which @tresf discussed on discord, which I couldn't catch up on even after reading the convos. Can you post a summary here?
Is it really worth it to keep it?
5 votes ·
Beta Was this translation helpful? Give feedback.
All reactions