CLAP support for X11#2
Draft
chairbender wants to merge 6 commits into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds support for CLAP for X11, building on coupler-rs#9
This was based on an older approach in the project's git history but slightly tweaked to fit the new structure of coupler.
Note that unlike the previous approach, we only retain the timer_id in the view_host. We do not retain the fd - instead, any time we need an fd, we just directly call the file_descriptor callback on the View.
Additionally, I found that the plugin UI was smearing due to the get size hook being called by the host before the window parent was set. This makes having size live in the view not viable, because we can't create View until we have the window parent.
I've refactored the size to live on the plugin itself as a possible alternative. Of course, this means the size has to be set statically. I'm not sure what factors a user might want as far as influencing the size calculation or if having it be static is fine. If there are certain variables they might want when calculating their desired size, it would help decide a better alternative.