Skip to content

Commit 976246d

Browse files
committed
Update OTP input control and tests for simplification
- Added `.vshistory/` to `.gitignore`. - Cleaned up using directives in `SfOtpInput.cs`. - Removed `_lineLength` variable and related comments. - Modified line drawing calculations to use `_entryHeight`. - Updated unit tests in `SfOtpInputUnitTests.cs` to reflect changes in parameters and assertions.
1 parent 1f0858b commit 976246d

File tree

3 files changed

+12
-18
lines changed

3 files changed

+12
-18
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@
22
bin
33
obj
44
.vs/
5+
.vshistory/

maui/src/OtpInput/SfOtpInput.cs

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
using Syncfusion.Maui.Toolkit.Graphics.Internals;
1+
using System.Globalization;
2+
using Syncfusion.Maui.Toolkit.Graphics.Internals;
23
using Syncfusion.Maui.Toolkit.Helper;
34
using Syncfusion.Maui.Toolkit.Internals;
45
using Syncfusion.Maui.Toolkit.Themes;
56
using Rect = Microsoft.Maui.Graphics.Rect;
67
using ResourceDictionary = Microsoft.Maui.Controls.ResourceDictionary;
78
using TextAlignment = Microsoft.Maui.TextAlignment;
8-
using System.Globalization;
99
#if WINDOWS
1010
using Microsoft.UI.Xaml;
1111
using Microsoft.UI.Xaml.Input;
@@ -86,11 +86,6 @@ public class SfOtpInput : SfView, IKeyboardListener, IParentThemeElement
8686
/// </summary>
8787
float _spacing;
8888

89-
/// <summary>
90-
/// Length of a decorative line element within the OTP control.
91-
/// </summary>
92-
float _lineLength = 40;
93-
9489
#if WINDOWS
9590
/// <summary>
9691
/// Determines whether the input should be displayed in uppercase letters.
@@ -1682,9 +1677,8 @@ void UpdateDrawingParameters(int index)
16821677
? (float)(this.Width - _entryWidth - baseXPos)
16831678
: baseXPos;
16841679

1685-
// Update base line points
1686-
_startPoint = new PointF(xPos, _lineLength + _extraSpacing + yPadding);
1687-
_endPoint = new PointF(xPos + _entryWidth, _lineLength + _extraSpacing + yPadding);
1680+
_startPoint = new PointF(xPos, _entryHeight + _extraSpacing + yPadding);
1681+
_endPoint = new PointF(xPos + _entryWidth, _entryHeight + _extraSpacing + yPadding);
16881682

16891683
// Update outline rectangle
16901684
_outlineRectF = new RectF(xPos, _extraSpacing + yPadding, _entryWidth, _entryHeight);

maui/tests/Syncfusion.Maui.Toolkit.UnitTest/Editors/SfOtpInputUnitTests.cs

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@ public void InputBackground(Color input, Color expected)
292292
Assert.Equal(expected, actual);
293293
}
294294

295-
295+
296296

297297
[Theory]
298298
[InlineData(40)]
@@ -313,7 +313,7 @@ public void BoxWidth_UpdatesEntryDimensions(double newWidth)
313313
}
314314
}
315315

316-
316+
317317

318318
[Theory]
319319
[InlineData(40)]
@@ -657,16 +657,15 @@ public void GetStrokeThickness(int index, float expectedStrokeThickness)
657657

658658

659659
[Theory]
660-
[InlineData(0, 30f, 40f, 5f, 3f, 50f, false, 300f)]
661-
[InlineData(1, 35f, 45f, 10f, 5f, 60f, false, 300f)]
662-
public void UpdateDrawingParameters(int index, float entryWidth, float entryHeight, float spacing, float extraSpacing, float lineLength, bool isRTL, float controlWidth)
660+
[InlineData(0, 30f, 40f, 5f, 3f, false, 300f)]
661+
[InlineData(1, 35f, 45f, 10f, 5f, false, 300f)]
662+
public void UpdateDrawingParameters(int index, float entryWidth, float entryHeight, float spacing, float extraSpacing, bool isRTL, float controlWidth)
663663
{
664664
var otpInput = new SfOtpInput();
665665
SetPrivateField(otpInput, "_entryWidth", entryWidth);
666666
SetPrivateField(otpInput, "_entryHeight", entryHeight);
667667
SetPrivateField(otpInput, "_spacing", spacing);
668668
SetPrivateField(otpInput, "_extraSpacing", extraSpacing);
669-
SetPrivateField(otpInput, "_lineLength", lineLength);
670669
otpInput.WidthRequest = controlWidth;
671670

672671
var flowDirection = isRTL ? EffectiveFlowDirection.RightToLeft : 0;
@@ -689,11 +688,11 @@ public void UpdateDrawingParameters(int index, float entryWidth, float entryHeig
689688

690689
// Assert start point
691690
Assert.Equal(xPos, startPoint.X);
692-
Assert.Equal(lineLength + extraSpacing + yPadding, startPoint.Y);
691+
Assert.Equal(entryHeight + extraSpacing + yPadding, startPoint.Y);
693692

694693
// Assert end point
695694
Assert.Equal(xPos + entryWidth, endPoint.X);
696-
Assert.Equal(lineLength + extraSpacing + yPadding, endPoint.Y);
695+
Assert.Equal(entryHeight + extraSpacing + yPadding, endPoint.Y);
697696

698697
// Assert outline rectangle
699698
Assert.Equal(xPos, outlineRectF.X);

0 commit comments

Comments
 (0)