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

Avalonia.Native TopLevel embedding #15932

Merged
merged 2 commits into from
Jun 19, 2024
Merged

Conversation

Gillibald
Copy link
Contributor

@Gillibald Gillibald commented Jun 6, 2024

What does the pull request do?

This PR introduces a TopLevelImpl for the Avalonia.Native backend. The WindowBaseImpl previously implemented this layer.

This makes it possible to have more embedding solutions that only require an NSView.

Ime interaction with Popups is also fixed. Only the Popup's parent window is the key window so that is responding to key events but Avalonia isn't using the parent's text input method. Hence, we must pretend the Popup's input method is the parent's.

Sample: https://github.com/AvaloniaUI/Xamarin.Mac.Interop

What is the current behavior?

What is the updated/expected behavior with this PR?

How was the solution implemented (if it's not obvious)?

Checklist

Breaking changes

Obsoletions / Deprecations

Fixed issues

@avaloniaui-bot
Copy link

You can test this PR using the following package version. 11.2.999-cibuild0048965-alpha. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

@avaloniaui-bot
Copy link

You can test this PR using the following package version. 11.2.999-cibuild0048984-alpha. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

@Gillibald Gillibald changed the title [WIP] Avalonia.Native TopLevel embedding Avalonia.Native TopLevel embedding Jun 13, 2024
@avaloniaui-bot
Copy link

You can test this PR using the following package version. 11.2.999-cibuild0049041-alpha. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

@avaloniaui-bot
Copy link

You can test this PR using the following package version. 11.2.999-cibuild0049103-alpha. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

@avaloniaui-bot
Copy link

You can test this PR using the following package version. 11.2.999-cibuild0049108-alpha. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

@avaloniaui-bot
Copy link

You can test this PR using the following package version. 11.2.999-cibuild0049150-alpha. (feed url: https://nuget-feed-all.avaloniaui.net/v3/index.json) [PRBUILDID]

@maxkatz6 maxkatz6 merged commit 143399f into AvaloniaUI:master Jun 19, 2024
10 checks passed
Gillibald added a commit to Gillibald/Avalonia that referenced this pull request Jul 29, 2024
* Introduce Avalonia.Native TopLevelImpl

* Update Avalonia.Native.csproj

Revert change
Gillibald added a commit that referenced this pull request Jul 30, 2024
* Introduce Avalonia.Native TopLevelImpl

* Update Avalonia.Native.csproj

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

Successfully merging this pull request may close these issues.

5 participants