Skip to content

Commit 5a6230b

Browse files
rajamattXiaoy312
andauthored
fix: minimizing with responsive extensions (#1406)
* fix: minimizing with responsive extensions * fix: check if responsive size is default Co-authored-by: Xiaotian Gu <[email protected]> * chore: add test --------- Co-authored-by: Xiaotian Gu <[email protected]>
1 parent 5c11fc1 commit 5a6230b

File tree

2 files changed

+22
-0
lines changed

2 files changed

+22
-0
lines changed

src/Uno.Toolkit.RuntimeTests/Tests/ResponsiveExtensionsTests.cs

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,27 @@ public async Task ProvideValue_Orientation_SizeChange()
160160
ext.ForceResponsiveSize(WideSize);
161161
Assert.AreEqual(Orientation.Horizontal, sut.Orientation);
162162
}
163+
164+
[TestMethod]
165+
public async Task ProvideValue_ZeroSize_NoSizeChange()
166+
{
167+
var sut = XamlHelper.LoadXaml<TextBlock>("""
168+
<TextBlock Text="{utu:Responsive Narrow=asd, Wide=qwe}" />
169+
""");
170+
var ext = ResponsiveExtension.GetInstanceFor(sut, nameof(sut.Text)) ?? throw new InvalidOperationException("Failed to resolve the markup extension.");
171+
await UnitTestUIContentHelperEx.SetContentAndWait(sut);
172+
173+
ext.ForceResponsiveSize(WideSize);
174+
Assert.AreEqual("qwe", sut.Text);
175+
176+
var previousResult = ext.LastResolved?.Result;
177+
var previousSize = ext.LastResolved?.Size;
178+
179+
ext.ForceResponsiveSize(new Size(0, 0));
180+
181+
Assert.AreEqual(previousResult, sut.Text);
182+
Assert.AreEqual(previousSize, ext.LastResolved?.Size);
183+
}
163184
}
164185

165186
[TestClass]

src/Uno.Toolkit.UI/Markup/ResponsiveExtension.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,7 @@ internal void Disconnect()
196196

197197
private void OnWindowSizeChanged(object sender, Size size)
198198
{
199+
if (size == default) return; // when the app is minimized
199200
if (size == LastResolved?.Size) return;
200201
if (CleanupIfHostDisposed())
201202
{

0 commit comments

Comments
 (0)