Skip to content

Commit dc81db8

Browse files
committed
Flyout Items Not Displayed in RightToLeft FlowDirection on iOS in Landscape - fix
1 parent a1d2571 commit dc81db8

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

src/Controls/src/Core/Compatibility/Handlers/FlyoutPage/iOS/PhoneFlyoutPageRenderer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -390,7 +390,7 @@ void LayoutChildren(bool animated)
390390

391391
if (IsRTL && !FlyoutOverlapsDetailsInPopoverMode)
392392
{
393-
flyoutFrame.X = (int)(flyoutFrame.Width * .25);
393+
flyoutFrame.X = (int)(frame.Width - flyoutFrame.Width);
394394
}
395395

396396
var detailsFrame = frame;

src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/XFIssue/Issue2818.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
#if TEST_FAILS_ON_WINDOWS && TEST_FAILS_ON_CATALYST && TEST_FAILS_ON_IOS
1+
#if TEST_FAILS_ON_WINDOWS && TEST_FAILS_ON_CATALYST
22
// Orientation not supported in Catalyst and Windows
3-
// On iOS FlyoutPage RTL is not working as expected, Issue: https://github.com/dotnet/maui/issues/26726
43
using NUnit.Framework;
54
using UITest.Appium;
65
using UITest.Core;
@@ -35,8 +34,8 @@ public void RootViewMovesAndContentIsVisible()
3534
Assert.That(positionStart, Is.Not.EqualTo(secondPosition));
3635
}
3736

38-
[Test]
39-
public void RootViewSizeDoesntChangeAfterBackground()
37+
[Test]
38+
public async Task RootViewSizeDoesntChangeAfterBackground()
4039
{
4140
var idiom = App.WaitForElement("Idiom");
4241
App.SetOrientationLandscape();
@@ -52,6 +51,7 @@ public void RootViewSizeDoesntChangeAfterBackground()
5251
App.WaitForNoElement("RootLayout");
5352
App.ForegroundApp();
5453
var newWindowSize = App.WaitForElement("RootLayout");
54+
await Task.Delay(2000); // Wait for the app to settle after foregrounding
5555
Assert.That(newWindowSize.GetRect().Width, Is.EqualTo(windowSize.GetRect().Width));
5656
Assert.That(newWindowSize.GetRect().Height, Is.EqualTo(windowSize.GetRect().Height));
5757
}

0 commit comments

Comments
 (0)