Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support multiple versions of raw-window-handle concurrently? #11

Closed
MarijnS95 opened this issue Oct 31, 2023 · 2 comments · Fixed by #19
Closed

Support multiple versions of raw-window-handle concurrently? #11

MarijnS95 opened this issue Oct 31, 2023 · 2 comments · Fixed by #19

Comments

@MarijnS95
Copy link
Member

Supporting multiple version would be nice of course but currently I can't estimate the overhead for this as I haven't been following the rwh api changes lately tbh

Supporting multiple versions on the producer end is really easy via just implementing the traits for each version of the crate (feature-gated so that you don't have to have duplicate raw-window-handle dependencies). However, doing this for the consumer end (here and in ash-window for example) is more problematic as we should essentially have multiple versioned functions of metal_layer_from_handle() for each version of raw-window-handle, Alternatively we could implement a conversion trait for every version of raw-window-handle.

@notgull suggestions (preferably in a separate issue/PR/discussion)?

Originally posted by @MarijnS95 in #10 (comment)

@notgull
Copy link
Member

notgull commented Nov 1, 2023

From this crate's API, it looks like "multiple versioned functions of metal_layer_from_handle() for each version of raw-window-handle" is probably the only good option.

@MarijnS95
Copy link
Member Author

So we'd end up with metal_layer_from_raw_window_handle_05() etc. Probably the same for ash-window even though unfortunately that match block is much bigger?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging a pull request may close this issue.

2 participants