Repository navigation
fix(share_plus): preserve the subject when sharing a URI on iOS - #3997
kaluli123123 wants to merge 2 commits into
Conversation
Forward the existing share title or legacy subject into the URI share controller. Keep raw NSURL items, completion behavior, and iPad presentation unchanged. Cover subject, title precedence, and no subject through the native registered channel. Closes fluttercommunity#3994 Co-authored-by: Codex <noreply@openai.com>
|
The repository-wide analyzer failure is also present on the unchanged base commit
This PR remains a draft pending maintainer review; it does not change the unrelated analyzer diagnostics. |
|
Merged upstream main 907994b in c909695. Upstream #4000 replaces the deprecated platform APIs in The PR diff against main still contains only the original two Local validation with Flutter 3.47.0 / Dart 3.13.0:
The first analyzer attempt encountered a local analytics TLS failure in an unrelated example package. Re-running with the documented process-only |
Description
Preserve the existing share title/legacy subject when sharing a URI on iOS. The URI branch previously passed
nilto the activity controller while the text and file branches forwarded the value. The NSURL share item and existing completion, excluded-activity and popover behavior are unchanged.Added native XCTest coverage through plugin registration and a binary MethodChannel message. The tests inspect a real
UIActivityViewControllerfor the supplied subject, title precedence, and omitted subject. On unchanged production code they report 1 pass and 2 failures; with the fix all 3 pass on an iPhone 17 Pro simulator, iOS 26.5, arm64. The package's Dart tests pass 14 with 1 existing skip, analysis reports no issues, Swift strict formatting and formatting of the modified Objective-C regions pass. Independent read-only review found no blocking issues.The Xcode 27 verification command uses
ARCHS=arm64, deployment target 15 and an isolated test bundle id; these command-line overrides address the unchanged example's baseline build limitations. The published iOS 13 minimum is unchanged. Mail compose UI, physical devices, iPad rendering, iOS 13 runtime and the full cross-platform CI matrix remain unverified. The tests prove controller configuration, not email delivery.Codex assisted implementation, tests and independent review. The GitHub-verified signed delivery tree matches the locally tested tree; this draft remains pending contributor and platform-maintainer review.
Related Issues
Checklist
Breaking Change