-
Notifications
You must be signed in to change notification settings - Fork 1.9k
[release/10.0.1xx-sr1] Fix iOS 26 TitleView covering content in Shell and NavigationPage #32798
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
Merged
PureWeen
merged 12 commits into
release/10.0.1xx-sr1
from
backport/pr-32341-to-release/10.0.1xx-sr1
Nov 21, 2025
Merged
[release/10.0.1xx-sr1] Fix iOS 26 TitleView covering content in Shell and NavigationPage #32798
PureWeen
merged 12 commits into
release/10.0.1xx-sr1
from
backport/pr-32341-to-release/10.0.1xx-sr1
Nov 21, 2025
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
- Added CreateTitleViewContainer helper method to reduce code duplication - Improved iOS 26+ detection with proper fallback when navigation bar frame unavailable - Set frame origin to (0,0) instead of preserving potentially uninitialized X/Y values - Added comprehensive XML documentation explaining iOS 26 workaround - Added test case and UI test for Issue32287 This implementation addresses the critical issues identified in PR #32337 review: - Eliminates silent failure by providing fallback to standard constructor - Clarifies frame positioning logic with explicit (0,0) origin - Reduces code duplication through helper method - Adds proper documentation for maintainability Co-authored-by: PureWeen <[email protected]>
Extended the iOS 26+ TitleView fix to NavigationPage in addition to Shell: 1. Added CreateTitleViewContainer helper method to centralize container creation 2. Added Container constructor overload accepting navigation bar frame for iOS 26+ 3. Refactored Container initialization to use InitializeContainer method 4. Updated ToolbarHeight to use actual navigation bar height when available 5. Eliminated hardcoded 44pt height assumption for iOS 26+ This ensures both Shell and NavigationPage TitleView implementations handle iOS 26 layout changes consistently, preventing TitleView from covering page content. Co-authored-by: PureWeen <[email protected]>
Extended the Issue32287 test based on review feedback: 1. Added rotation test to verify TitleView behavior in landscape mode 2. Added dynamic font size change tests to verify container tracks nav bar changes 3. Added buttons to increase/decrease TitleView font size 4. Added x:Name to TitleLabel for programmatic access 5. Created placeholder snapshot image for test validation 6. Wrapped rotation tests with TEST_FAILS_ON_WINDOWS && TEST_FAILS_ON_CATALYST Tests now comprehensively verify that TitleView container correctly tracks navigation bar frame changes without covering content in all scenarios. Co-authored-by: PureWeen <[email protected]>
Created comprehensive NavigationPage tests mirroring the Shell tests: 1. Issue32287NavigationPage.xaml - NavigationPage with custom TitleView 2. Issue32287NavigationPage.xaml.cs - Code-behind with font size controls 3. Issue32287NavigationPage.cs - UI tests matching Shell test scenarios: - Basic test verifying TitleView doesn't cover content - Dynamic content size change test - Landscape rotation test (iOS/Android only) 4. Created placeholder snapshot image for visual validation Tests verify that the NavigationPage Container fix handles iOS 26+ layout changes consistently with Shell, preventing TitleView from covering content. Co-authored-by: PureWeen <[email protected]>
Fixed XAML parsing error and addressed PR review feedback: 1. Changed Issue32287NavigationPage from NavigationPage to ContentPage - NavigationPage cannot have content directly set in XAML - NavigationPage.TitleView is an attached property set on ContentPage - Updated base class from NavigationPage to ContentPage 2. Added explanatory comments for platform-specific conditionals - Documented that rotation tests only work on iOS/Android - Explained SetOrientationLandscape/Portrait not supported on Windows/Catalyst - Applied to both Issue32287 and Issue32287NavigationPage test files Fixes XAML error: "Cannot set the content of NavigationPage as it doesn't have a ContentPropertyAttribute" Co-authored-by: PureWeen <[email protected]>
…leViewDoesNotCoverContent.png
…7NavigationPageCustomTitleViewDoesNotCoverContent.png
Deleted all Issue32287 test files as requested: - Issue32287.xaml and Issue32287.xaml.cs (Shell tests) - Issue32287NavigationPage.xaml and Issue32287NavigationPage.xaml.cs (NavigationPage tests) - Issue32287.cs and Issue32287NavigationPage.cs (UI test implementations) The PR now contains only the iOS 26 TitleView fix implementation without test coverage. Co-authored-by: PureWeen <[email protected]>
Member
|
/azp run |
|
Azure Pipelines could not run because the pipeline triggers exclude this branch/path. |
PureWeen
approved these changes
Nov 21, 2025
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.
Backport of #32341 to release/10.0.1xx-sr1
/cc @PureWeen @copilot