fix(connectivity_plus): use Windows list manager events#3829
Open
edde746 wants to merge 2 commits into
Open
Conversation
Collaborator
|
Any plans to adjust this PR according to requirements? |
… is input-synchronous INetworkListManagerEvents Advise fails with RPC_E_CANTCALLOUT_ININPUTSYNCCALL when OnListen runs while the platform thread is inside an input-synchronous call (e.g. a SendMessage-driven window callback). Failing OnListen surfaces in Dart as an uncatchable FlutterError, so instead retry the subscription via a message-loop timer and report only persistent failures through the event sink, where stream onError handlers can observe them.
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.
Summary
IID_INetworkListManagerEventson Windows and implementConnectivityChanged.Why
INetworkListManagerEventsis the documented sink for machine-level connectivity changes. The previousIID_INetworkEventssubscription can fail duringEventChannelactivation and surface asPlatformException(NetworkManager::StartListen).Fixes #3713.
Checklist
CHANGELOG.mdnor the plugin version inpubspec.yamlfiles.flutter analyze) does not report any problems on my PR.Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?
!in the title as explained in Conventional Commits).