Skip to content

Commit 98e46e1

Browse files
jonathanantoinegithub-actions[bot]mattleibowTamilarasan-ParanthamanNafeelaNazhir
authored
Perf : ButtonContentTypeConverter now using InvariantCulture to parse… (#25393)
* [create-pull-request] automated change (#29793) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Convert HybridWebView.js to TypeScript and embed (#27183) * Fix up relevant CA1416 warnings - Set 3 (#26751) * [Testing] Feature Matrix UITest Cases for CollectionView Dynamic changes (#29424) * Added FeatureTests for CollectionView * changes updated * changes updated * [create-pull-request] automated change (#29505) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * CA1416 warning fix * Added snapshots * Reverting files changes * Removed the old approach * Revert unwanted changes * Reverted unwanted changes * Reverted unwanted changes * Revert unwanted changes --------- Co-authored-by: NafeelaNazhir <nafeela.nazhirhussain@syncfusion.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Fix up relevant CA1416 warnings - Set 1 (#26696) * Changed Syncfusion toolkit version from 1.0.4 to 1.0.5 (#29659) * [ci] Update dependencies from 9.0.4 to 9.0.5 (#29667) * [ci] Update dependencies from 9.0.4 to 9.0.5 * Update the net8 version * Add missing version MicrosoftJSInteropPackageVersion * Page.OnBackButtonPressed remove outdated API documentation (#29543) * Fixed KeepLastItemInView Does Not Scroll to Last Item When Adding Items at Top (#29632) * Fixed KeepLastItem not scrolled to last item * Updated Fix * Updated test sample * Added comment line * Updated test sample for iOS and mac * Added Snapshots for android and WinUI * Added UI tests. * Test sample changes. * script changes * script changes * Added snapshots * Resaved Mac images and the gradient image size issue has been fixed * CA1416 warning changes * Reverted unwanted changes --------- Co-authored-by: Paul Anderson <42271912+PaulAndersonS@users.noreply.github.com> Co-authored-by: Rui Marinho <me@ruimarinho.net> Co-authored-by: Gerald Versluis <gerald.versluis@microsoft.com> Co-authored-by: Dhivya-SF4094 <127717131+Dhivya-SF4094@users.noreply.github.com> * [iOS/Mac]Fix StrokeDashArray Property not Rendering (#29670) * fix added * Test added * snap added * [Android/ iOS] Fix Flyout icon is displayed when flyout is disabled (#29637) * fix added * modified the fix * test case added * test case added * summary added * Script name changed * [Android & iOS] Fix for SearchHandler Character Spacing Property (#29497) * [Android & iOS] Fix for character spacing in searchHandler * Updated test sample concerns * Update on naming * Update on formatting * Allowing updating character spacing to zero * Updated Andorid, iOS, Mac images * [create-pull-request] automated change (#29724) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * [Windows] Fix for SearchHandler Visibility Not Updating During In-Section Navigation (#29441) * fix-17521-Updates the SearchHandler when navigating to another page within same ShellSection. * fix-17521-Added testcase and added snapshot for Android and iOS. * fix-17521-Renamed Shell_Navigated to OnShellNavigated. * fix-17521-Modified the Location string value from "Ethopia" to "Ethiopia". * fix-17521-Snapshot updated. * fix-17521-Updated Windows and Mac Snapshot. * [Windows] - Fix view position shift when shadows are added or removed at runtime (#29681) * Fix-view-position-shift-when-toggling-shadows * Added-Pending-SnapShots * Resaved-image * [Testing] Feature Matrix UITest Cases for Shadows (#27701) * Added sample to Matrix UITest Cases for Shadow * Renamed sample page * Renamed sample page * More tests * More tests * More tests * More tests * Added shadow tests * Updated sample * Added Windows snapshots * Updated tests * Added link to issue * More changes * Updated sample reset logic * Updated sample * More changes * More changes * More changes * Updated sample * Added snapshots * Hide cursor * More changes * More snapshots * Updated tests * Updated iOS snapshots * Updated iOS snapshots * Updated snapshots * Updated snapshots * Updated tests * [housekeeping] Automated PR to fix formatting errors on uitest-shadow-feature * Updated tests * Fix build errors * More changes * More changes * More changes * More changes --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * [iOS] Fixed Shell.SearchHandler ClearPlaceholderIcon Color Issue (#28601) * SearchHandler ClearPlaceholderIcon color fix * Added Mac snapshot * Updated SearchBar Icon changes * Test script changes. * Revert unwanted changes * Updated custom icon changes * Fix -[iOS] - CarouselView Throws ArgumentOutOfRangeException Immediately on Application Launch in CV2 (#29316) * Update ItemsSourceFactory2.cs * Update CarouselViewPositionVisibility.xaml * [Windows] Fix for ItemsSource Does Not Dynamically Set to null in CarouselView (#29660) * [Windows] Fix for ItemsSource Does Not Dynamically Set to null in CarouselView * Have added test case * Updated AutomationId for better clarity and readability * Have modified the context of the description label * Have committed the snapshots * [Testing] Feature Matrix UITest Cases for Label (#29690) * Added Label Feature tests * changes updated * changes updated * changes updated * Added Screenshots * Added Snapshots for iOS * Corrected Mistakes * Added snapshots * Added images * Renamed file --------- Co-authored-by: Rui Marinho <me@ruimarinho.net> * updated base images for candidate PR failures (#29766) * [Android] Fix: Modal Animation Repeats When Returning from Background 3 (#29702) * fix * dispose listner once not needed * Revert "dispose listner once not needed" * call invalidate * add device test to check for leaks * null check and remove strong references in callback * Throw if rootview is null before adding animation * fix spelling mistake * [Testing] Include a tolerance parameter in the Verifyscreenshot method (#29776) * Added tolerance parameter to the VerifyScreenshot method * More changes * Update src/Controls/tests/TestCases.Shared.Tests/UITest.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/Controls/tests/TestCases.Shared.Tests/UITest.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * [Testing] Update Appium to v8 (#29774) * Update Appium to the latest version * Removed deprecated logic * Update comment * [create-pull-request] automated change (#29831) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Perf : ButtonContentTypeConverter now using InvariantCulture to parse double --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Matthew Leibowitz <mattleibow@live.com> Co-authored-by: Tamilarasan Paranthaman <93904422+Tamilarasan-Paranthaman@users.noreply.github.com> Co-authored-by: NafeelaNazhir <nafeela.nazhirhussain@syncfusion.com> Co-authored-by: Paul Anderson <42271912+PaulAndersonS@users.noreply.github.com> Co-authored-by: Rui Marinho <me@ruimarinho.net> Co-authored-by: Gerald Versluis <gerald.versluis@microsoft.com> Co-authored-by: Dhivya-SF4094 <127717131+Dhivya-SF4094@users.noreply.github.com> Co-authored-by: devanathan-vaithiyanathan <114395405+devanathan-vaithiyanathan@users.noreply.github.com> Co-authored-by: Subhiksha Chandrasekaran <subhiksha.c@syncfusion.com> Co-authored-by: BagavathiPerumal <93652794+BagavathiPerumal@users.noreply.github.com> Co-authored-by: prakashKannanSf3972 <127308739+prakashKannanSf3972@users.noreply.github.com> Co-authored-by: Javier Suárez <javiersuarezruiz@hotmail.com> Co-authored-by: SuthiYuvaraj <92777079+SuthiYuvaraj@users.noreply.github.com> Co-authored-by: SyedAbdulAzeemSF4852 <syedabdulazeem.a@syncfusion.com> Co-authored-by: Anandhan Rajagopal <97146406+anandhan-rajagopal@users.noreply.github.com> Co-authored-by: Bhavanesh N <bhavanesh001@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Shane Neuville <shneuvil@microsoft.com>
1 parent a601e34 commit 98e46e1

File tree

360 files changed

+4607
-500
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

360 files changed

+4607
-500
lines changed

Directory.Build.targets

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,4 +125,7 @@
125125
</ItemGroup>
126126
</Target>
127127

128+
<!-- Tell typescript to stop deleting everything before building the next TFM -->
129+
<Target Name="TypeScriptDeleteOutputFromOtherConfigs" />
130+
128131
</Project>

eng/Versions.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -216,4 +216,4 @@
216216
<MicrosoftiOSSdkPackageVersion>$(MicrosoftiOSSdknet90_180PackageVersion)</MicrosoftiOSSdkPackageVersion>
217217
<MicrosofttvOSSdkPackageVersion>$(MicrosofttvOSSdknet90_180PackageVersion)</MicrosofttvOSSdkPackageVersion>
218218
</PropertyGroup>
219-
</Project>
219+
</Project>

eng/pipelines/common/ui-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ parameters:
3131
- 'ScrollView,SearchBar,Shape,Slider,SoftInput,Stepper,Switch,SwipeView'
3232
- 'Shell'
3333
- 'TabbedPage,TableView,TimePicker,TitleView,ToolbarItem'
34-
- 'ViewBaseTests,Visual,WebView,Window'
34+
- 'Shadow,ViewBaseTests,Visual,WebView,Window'
3535

3636
projects:
3737
- name: name

src/Controls/samples/Controls.Sample/Maui.Controls.Sample.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@
7878
<ItemGroup>
7979
<EmbeddedResource Include="Resources\Embedded\*" />
8080
<MauiAsset Include="Resources\Raw\**" LogicalName="%(RecursiveDir)%(Filename)%(Extension)" />
81+
<MauiAsset Include="..\..\..\Core\src\Handlers\HybridWebView\HybridWebView.js" LogicalName="HybridSamplePage\scripts\HybridWebView.js" />
8182
<MauiImage Include="Resources\Images\*" />
8283
<MauiImage Update="Resources\Images\*.gif" Resize="false" />
8384
<MauiIcon Include="Resources\AppIcons\appicon.svg" ForegroundFile="Resources\AppIcons\appicon_foreground.svg" />

src/Controls/samples/Controls.Sample/Resources/Raw/HybridSamplePage/scripts/HybridWebView.js

Lines changed: 0 additions & 145 deletions
This file was deleted.

src/Controls/src/Core/Button/Button.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -598,7 +598,7 @@ public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo c
598598
int spacingIndex = spacingFirst ? 0 : (parts.Length == 2 ? 1 : -1);
599599

600600
if (spacingIndex > -1)
601-
spacing = double.Parse(parts[spacingIndex]);
601+
spacing = double.Parse(parts[spacingIndex], CultureInfo.InvariantCulture);
602602

603603
if (positionIndex > -1)
604604
position = (ButtonContentLayout.ImagePosition)Enum.Parse(typeof(ButtonContentLayout.ImagePosition), parts[positionIndex], true);

src/Controls/src/Core/Compatibility/Handlers/ListView/iOS/ContextActionCell.cs

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using System.Collections.Generic;
44
using System.Collections.Specialized;
55
using System.ComponentModel;
6+
using CoreGraphics;
67
using Foundation;
78
using Microsoft.Maui.Controls.Compatibility;
89
using Microsoft.Maui.Controls.Compatibility.iOS.Resources;
@@ -33,19 +34,15 @@ static ContextActionsCell()
3334
{
3435
var rect = new RectangleF(0, 0, 1, 1);
3536
var size = rect.Size;
36-
37-
UIGraphics.BeginImageContext(size);
38-
var context = UIGraphics.GetCurrentContext();
39-
context.SetFillColor(Microsoft.Maui.Platform.ColorExtensions.Red.CGColor);
40-
context.FillRect(rect);
41-
DestructiveBackground = UIGraphics.GetImageFromCurrentImageContext();
42-
43-
context.SetFillColor(Microsoft.Maui.Platform.ColorExtensions.LightGray.CGColor);
44-
context.FillRect(rect);
45-
46-
NormalBackground = UIGraphics.GetImageFromCurrentImageContext();
47-
48-
context.Dispose();
37+
using var renderer = new UIGraphicsImageRenderer(size);
38+
DestructiveBackground = renderer.CreateImage((UIGraphicsImageRendererContext ctx) =>
39+
{
40+
FillRect(ctx, rect, ColorExtensions.Red.CGColor);
41+
});
42+
NormalBackground = renderer.CreateImage((UIGraphicsImageRendererContext ctx) =>
43+
{
44+
FillRect(ctx, rect, ColorExtensions.LightGray.CGColor);
45+
});
4946
}
5047

5148
public ContextActionsCell() : base(UITableViewCellStyle.Default, Key)
@@ -84,6 +81,13 @@ public void Close()
8481
_scroller.ContentOffset = new PointF(0, 0);
8582
}
8683

84+
static void FillRect(UIGraphicsImageRendererContext ctx, RectangleF rect, CGColor color)
85+
{
86+
var context = ctx.CGContext;
87+
context.SetFillColor(color);
88+
context.FillRect(rect);
89+
}
90+
8791
public override void LayoutSubviews()
8892
{
8993
base.LayoutSubviews();

src/Controls/src/Core/Compatibility/Handlers/Shell/Android/SearchHandlerAppearanceTracker.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ public SearchHandlerAppearanceTracker(IShellSearchView searchView, IShellContext
3838
UpdateHorizontalTextAlignment();
3939
UpdateVerticalTextAlignment();
4040
UpdateInputType();
41+
UpdateCharacterSpacing();
4142
}
4243

4344
protected virtual void SearchHandlerPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
@@ -90,6 +91,17 @@ protected virtual void SearchHandlerPropertyChanged(object sender, System.Compon
9091
{
9192
UpdateText();
9293
}
94+
else if (e.Is(SearchHandler.CharacterSpacingProperty))
95+
{
96+
UpdateCharacterSpacing();
97+
}
98+
}
99+
void UpdateCharacterSpacing()
100+
{
101+
if (_editText is not null)
102+
{
103+
_editText.LetterSpacing = _searchHandler.CharacterSpacing.ToEm();
104+
}
93105
}
94106

95107
void UpdateText()

src/Controls/src/Core/Compatibility/Handlers/Shell/Android/ShellToolbarTracker.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -410,7 +410,8 @@ protected virtual async void UpdateLeftBarButtonItem(Context context, AToolbar t
410410
var text = backButtonHandler.GetPropertyIfSet(BackButtonBehavior.TextOverrideProperty, String.Empty);
411411
var command = backButtonHandler.GetPropertyIfSet<ICommand>(BackButtonBehavior.CommandProperty, null);
412412
bool isEnabled = _shell.Toolbar.BackButtonEnabled;
413-
var image = GetFlyoutIcon(backButtonHandler, page);
413+
//Add the FlyoutIcon only if the FlyoutBehavior is Flyout
414+
var image = _flyoutBehavior == FlyoutBehavior.Flyout ? GetFlyoutIcon(backButtonHandler, page) : null;
414415
var backButtonVisible = _toolbar.BackButtonVisible;
415416

416417
DrawerArrowDrawable icon = null;

src/Controls/src/Core/Compatibility/Handlers/Shell/iOS/SearchHandlerAppearanceTracker.cs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,10 @@ void SearchHandlerPropertyChanged(object sender, System.ComponentModel.PropertyC
119119
{
120120
UpdateText(_uiSearchBar.FindDescendantView<UITextField>());
121121
}
122+
else if (e.Is(SearchHandler.CharacterSpacingProperty))
123+
{
124+
UpdateCharacterSpacing(_uiSearchBar.FindDescendantView<UITextField>());
125+
}
122126
}
123127

124128
void UpdateText(UITextField uiTextField)
@@ -128,6 +132,27 @@ void UpdateText(UITextField uiTextField)
128132

129133
uiTextField.Text = _searchHandler.Query;
130134
UpdateTextTransform(uiTextField);
135+
UpdateCharacterSpacing(uiTextField);
136+
}
137+
138+
void UpdateCharacterSpacing(UITextField textField)
139+
{
140+
if (textField is null)
141+
{
142+
return;
143+
}
144+
145+
var attributedText = textField.AttributedText?.WithCharacterSpacing(_searchHandler.CharacterSpacing);
146+
if (attributedText is not null)
147+
{
148+
textField.AttributedText = attributedText;
149+
}
150+
151+
var placeholderAttributedText = textField.AttributedPlaceholder?.WithCharacterSpacing(_searchHandler.CharacterSpacing);
152+
if (placeholderAttributedText is not null)
153+
{
154+
textField.AttributedPlaceholder = placeholderAttributedText;
155+
}
131156
}
132157

133158
void GetDefaultSearchBarColors(UISearchBar searchBar)

0 commit comments

Comments
 (0)