diff --git a/src/Controls/src/Core/PublicAPI/net-android/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net-android/PublicAPI.Unshipped.txt index d434dae9bcae..f3654b41c5bd 100644 --- a/src/Controls/src/Core/PublicAPI/net-android/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net-android/PublicAPI.Unshipped.txt @@ -147,3 +147,6 @@ static readonly Microsoft.Maui.Controls.TitleBar.TitleProperty -> Microsoft.Maui static readonly Microsoft.Maui.Controls.TitleBar.TrailingContentProperty -> Microsoft.Maui.Controls.BindableProperty! static readonly Microsoft.Maui.Controls.Window.TitleBarProperty -> Microsoft.Maui.Controls.BindableProperty! virtual Microsoft.Maui.Controls.Application.ActivateWindow(Microsoft.Maui.Controls.Window! window) -> void +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.set -> void +~static readonly Microsoft.Maui.Controls.SearchBar.SearchIconColorProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/net-ios/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net-ios/PublicAPI.Unshipped.txt index c8f888817e4b..4e950256b92b 100644 --- a/src/Controls/src/Core/PublicAPI/net-ios/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net-ios/PublicAPI.Unshipped.txt @@ -340,4 +340,7 @@ virtual Microsoft.Maui.Controls.Handlers.Items2.ItemsViewController2 virtual Microsoft.Maui.Controls.Handlers.Items2.ItemsViewDelegator2.GetVisibleItemsIndex() -> (bool VisibleItems, int First, int Center, int Last) virtual Microsoft.Maui.Controls.Handlers.Items2.ItemsViewHandler2.UpdateLayout() -> void override Microsoft.Maui.Controls.Handlers.Compatibility.FrameRenderer.MovedToWindow() -> void +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.set -> void +~static readonly Microsoft.Maui.Controls.SearchBar.SearchIconColorProperty -> Microsoft.Maui.Controls.BindableProperty ~Microsoft.Maui.Controls.Internals.TypedBindingBase.UpdateSourceEventName.set -> void diff --git a/src/Controls/src/Core/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt index b8b408d750b8..791eb1f9e3d5 100644 --- a/src/Controls/src/Core/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt @@ -341,3 +341,6 @@ virtual Microsoft.Maui.Controls.Handlers.Items2.ItemsViewController2 virtual Microsoft.Maui.Controls.Handlers.Items2.ItemsViewDelegator2.GetVisibleItemsIndex() -> (bool VisibleItems, int First, int Center, int Last) virtual Microsoft.Maui.Controls.Handlers.Items2.ItemsViewHandler2.UpdateLayout() -> void override Microsoft.Maui.Controls.Handlers.Compatibility.FrameRenderer.MovedToWindow() -> void +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.set -> void +~static readonly Microsoft.Maui.Controls.SearchBar.SearchIconColorProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/net-tizen/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net-tizen/PublicAPI.Unshipped.txt index bbae06a93d97..7ccd8b908171 100644 --- a/src/Controls/src/Core/PublicAPI/net-tizen/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net-tizen/PublicAPI.Unshipped.txt @@ -142,3 +142,6 @@ static readonly Microsoft.Maui.Controls.TitleBar.TitleProperty -> Microsoft.Maui static readonly Microsoft.Maui.Controls.TitleBar.TrailingContentProperty -> Microsoft.Maui.Controls.BindableProperty! static readonly Microsoft.Maui.Controls.Window.TitleBarProperty -> Microsoft.Maui.Controls.BindableProperty! virtual Microsoft.Maui.Controls.Application.ActivateWindow(Microsoft.Maui.Controls.Window! window) -> void +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.set -> void +~static readonly Microsoft.Maui.Controls.SearchBar.SearchIconColorProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/net-windows/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net-windows/PublicAPI.Unshipped.txt index a6a93fbd9674..1161d10dfe01 100644 --- a/src/Controls/src/Core/PublicAPI/net-windows/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net-windows/PublicAPI.Unshipped.txt @@ -148,3 +148,6 @@ static readonly Microsoft.Maui.Controls.TitleBar.TitleProperty -> Microsoft.Maui static readonly Microsoft.Maui.Controls.TitleBar.TrailingContentProperty -> Microsoft.Maui.Controls.BindableProperty! static readonly Microsoft.Maui.Controls.Window.TitleBarProperty -> Microsoft.Maui.Controls.BindableProperty! virtual Microsoft.Maui.Controls.Application.ActivateWindow(Microsoft.Maui.Controls.Window! window) -> void +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.set -> void +~static readonly Microsoft.Maui.Controls.SearchBar.SearchIconColorProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/net/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/net/PublicAPI.Unshipped.txt index 931253154272..5a9dcf35e453 100644 --- a/src/Controls/src/Core/PublicAPI/net/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/net/PublicAPI.Unshipped.txt @@ -142,3 +142,6 @@ static readonly Microsoft.Maui.Controls.TitleBar.TitleProperty -> Microsoft.Maui static readonly Microsoft.Maui.Controls.TitleBar.TrailingContentProperty -> Microsoft.Maui.Controls.BindableProperty! static readonly Microsoft.Maui.Controls.Window.TitleBarProperty -> Microsoft.Maui.Controls.BindableProperty! virtual Microsoft.Maui.Controls.Application.ActivateWindow(Microsoft.Maui.Controls.Window! window) -> void +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.set -> void +~static readonly Microsoft.Maui.Controls.SearchBar.SearchIconColorProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/PublicAPI/netstandard/PublicAPI.Unshipped.txt b/src/Controls/src/Core/PublicAPI/netstandard/PublicAPI.Unshipped.txt index bbae06a93d97..7ccd8b908171 100644 --- a/src/Controls/src/Core/PublicAPI/netstandard/PublicAPI.Unshipped.txt +++ b/src/Controls/src/Core/PublicAPI/netstandard/PublicAPI.Unshipped.txt @@ -142,3 +142,6 @@ static readonly Microsoft.Maui.Controls.TitleBar.TitleProperty -> Microsoft.Maui static readonly Microsoft.Maui.Controls.TitleBar.TrailingContentProperty -> Microsoft.Maui.Controls.BindableProperty! static readonly Microsoft.Maui.Controls.Window.TitleBarProperty -> Microsoft.Maui.Controls.BindableProperty! virtual Microsoft.Maui.Controls.Application.ActivateWindow(Microsoft.Maui.Controls.Window! window) -> void +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color +~Microsoft.Maui.Controls.SearchBar.SearchIconColor.set -> void +~static readonly Microsoft.Maui.Controls.SearchBar.SearchIconColorProperty -> Microsoft.Maui.Controls.BindableProperty diff --git a/src/Controls/src/Core/SearchBar/SearchBar.cs b/src/Controls/src/Core/SearchBar/SearchBar.cs index 4df7ef0c841d..8bd390aa25de 100644 --- a/src/Controls/src/Core/SearchBar/SearchBar.cs +++ b/src/Controls/src/Core/SearchBar/SearchBar.cs @@ -28,6 +28,9 @@ public partial class SearchBar : InputView, ITextAlignmentElement, ISearchBarCon /// Bindable property for . public static readonly BindableProperty CancelButtonColorProperty = BindableProperty.Create(nameof(CancelButtonColor), typeof(Color), typeof(SearchBar), default(Color)); + /// Bindable property for . + public static readonly BindableProperty SearchIconColorProperty = BindableProperty.Create(nameof(SearchIconColor), typeof(Color), typeof(SearchBar), default(Color)); + /// public new static readonly BindableProperty PlaceholderProperty = InputView.PlaceholderProperty; @@ -77,6 +80,14 @@ public Color CancelButtonColor get { return (Color)GetValue(CancelButtonColorProperty); } set { SetValue(CancelButtonColorProperty, value); } } + /// + /// Gets or sets the color of the search icon in the . + /// + public Color SearchIconColor + { + get { return (Color)GetValue(SearchIconColorProperty); } + set { SetValue(SearchIconColorProperty, value); } + } /// public TextAlignment HorizontalTextAlignment diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/SearchIconColorInitializesCorrectly.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/SearchIconColorInitializesCorrectly.png new file mode 100644 index 000000000000..9ebb53455153 Binary files /dev/null and b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/SearchIconColorInitializesCorrectly.png differ diff --git a/src/Controls/tests/TestCases.HostApp/Issues/Issue22963.cs b/src/Controls/tests/TestCases.HostApp/Issues/Issue22963.cs new file mode 100644 index 000000000000..a10d3530b14f --- /dev/null +++ b/src/Controls/tests/TestCases.HostApp/Issues/Issue22963.cs @@ -0,0 +1,33 @@ +namespace Maui.Controls.Sample.Issues +{ + [XamlCompilation(XamlCompilationOptions.Compile)] + [Issue(IssueTracker.Github, 22963, "Implementation of Customizable Search Icon Color for SearchBar Across Platforms", PlatformAffected.All)] + + public partial class Issue22963 : ContentPage + { + public Issue22963() + { + ConfigureSearchBar(); + } + + private void ConfigureSearchBar() + { + // Create the SearchBar + var searchBar = new SearchBar + { + Placeholder = "Search...", + SearchIconColor = Colors.Magenta, + WidthRequest = 300, + HorizontalOptions = LayoutOptions.Center, + VerticalOptions = LayoutOptions.Start, + AutomationId = "SearchBar" + }; + // Add the SearchBar to the layout + var layout = new Grid(); + layout.Children.Add(searchBar); + + // Set the layout as the Content of the page + Content = layout; + } + } +} \ No newline at end of file diff --git a/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/SearchIconColorInitializesCorrectly.png b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/SearchIconColorInitializesCorrectly.png new file mode 100644 index 000000000000..9c8e9f9f2702 Binary files /dev/null and b/src/Controls/tests/TestCases.Mac.Tests/snapshots/mac/SearchIconColorInitializesCorrectly.png differ diff --git a/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue22963.cs b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue22963.cs new file mode 100644 index 000000000000..92bf022acfe6 --- /dev/null +++ b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue22963.cs @@ -0,0 +1,21 @@ +using NUnit.Framework; +using UITest.Appium; +using UITest.Core; + +namespace Microsoft.Maui.TestCases.Tests.Issues +{ + internal class Issue22963 : _IssuesUITest + { + public Issue22963(TestDevice device) : base(device) { } + + public override string Issue => "Implementation of Customizable Search Icon Color for SearchBar Across Platforms"; + + [Test] + [Category(UITestCategories.SearchBar)] + public void SearchIconColorInitializesCorrectly() + { + App.WaitForElement("SearchBar"); + VerifyScreenshot(); + } + } +} diff --git a/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/SearchIconColorInitializesCorrectly.png b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/SearchIconColorInitializesCorrectly.png new file mode 100644 index 000000000000..49926060a78a Binary files /dev/null and b/src/Controls/tests/TestCases.WinUI.Tests/snapshots/windows/SearchIconColorInitializesCorrectly.png differ diff --git a/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/SearchIconColorInitializesCorrectly.png b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/SearchIconColorInitializesCorrectly.png new file mode 100644 index 000000000000..2f6326564d50 Binary files /dev/null and b/src/Controls/tests/TestCases.iOS.Tests/snapshots/ios/SearchIconColorInitializesCorrectly.png differ diff --git a/src/Core/src/Core/ISearchBar.cs b/src/Core/src/Core/ISearchBar.cs index 54bebf3e558d..9dcc985a55e8 100644 --- a/src/Core/src/Core/ISearchBar.cs +++ b/src/Core/src/Core/ISearchBar.cs @@ -12,6 +12,11 @@ public interface ISearchBar : IView, ITextInput, ITextAlignment /// Color CancelButtonColor { get; } + /// + /// Gets the color of the Search icon. + /// + Color SearchIconColor { get; } + /// /// Notify when the user presses the Search button. /// diff --git a/src/Core/src/Handlers/SearchBar/SearchBarHandler.Android.cs b/src/Core/src/Handlers/SearchBar/SearchBarHandler.Android.cs index 1d21a1dc52fc..794ab208cbbf 100644 --- a/src/Core/src/Handlers/SearchBar/SearchBarHandler.Android.cs +++ b/src/Core/src/Handlers/SearchBar/SearchBarHandler.Android.cs @@ -119,6 +119,11 @@ public static void MapCancelButtonColor(ISearchBarHandler handler, ISearchBar se handler.PlatformView?.UpdateCancelButtonColor(searchBar); } + internal static void MapSearchIconColor(ISearchBarHandler handler, ISearchBar searchBar) + { + handler.PlatformView?.UpdateSearchIconColor(searchBar); + } + public static void MapKeyboard(ISearchBarHandler handler, ISearchBar searchBar) { handler.UpdateValue(nameof(ISearchBar.Text)); diff --git a/src/Core/src/Handlers/SearchBar/SearchBarHandler.Standard.cs b/src/Core/src/Handlers/SearchBar/SearchBarHandler.Standard.cs index 195098888c71..3c13f1768dbe 100644 --- a/src/Core/src/Handlers/SearchBar/SearchBarHandler.Standard.cs +++ b/src/Core/src/Handlers/SearchBar/SearchBarHandler.Standard.cs @@ -19,6 +19,7 @@ public static void MapVerticalTextAlignment(IViewHandler handler, ISearchBar sea public static void MapCharacterSpacing(IViewHandler handler, ISearchBar searchBar) { } public static void MapTextColor(IViewHandler handler, ISearchBar searchBar) { } public static void MapCancelButtonColor(IViewHandler handler, ISearchBar searchBar) { } + internal static void MapSearchIconColor(IViewHandler handler, ISearchBar searchBar) { } /// /// Maps the abstract property to the platform-specific implementations. diff --git a/src/Core/src/Handlers/SearchBar/SearchBarHandler.Tizen.cs b/src/Core/src/Handlers/SearchBar/SearchBarHandler.Tizen.cs index 6a92572e0768..2622b8c28f6b 100644 --- a/src/Core/src/Handlers/SearchBar/SearchBarHandler.Tizen.cs +++ b/src/Core/src/Handlers/SearchBar/SearchBarHandler.Tizen.cs @@ -86,6 +86,9 @@ public static void MapKeyboard(ISearchBarHandler handler, ISearchBar searchBar) [MissingMapper] public static void MapCancelButtonColor(ISearchBarHandler handler, ISearchBar searchBar) { } + [MissingMapper] + internal static void MapSearchIconColor(ISearchBarHandler handler, ISearchBar searchBar) { } + public static void MapCharacterSpacing(ISearchBarHandler handler, ISearchBar searchBar) { handler.PlatformView.Entry.UpdateCharacterSpacing(searchBar); diff --git a/src/Core/src/Handlers/SearchBar/SearchBarHandler.Windows.cs b/src/Core/src/Handlers/SearchBar/SearchBarHandler.Windows.cs index b31d8c58ae26..f295d24a7aa8 100644 --- a/src/Core/src/Handlers/SearchBar/SearchBarHandler.Windows.cs +++ b/src/Core/src/Handlers/SearchBar/SearchBarHandler.Windows.cs @@ -104,6 +104,11 @@ public static void MapCancelButtonColor(ISearchBarHandler handler, ISearchBar se handler.PlatformView?.UpdateCancelButtonColor(searchBar); } + internal static void MapSearchIconColor(ISearchBarHandler handler, ISearchBar searchBar) + { + handler.PlatformView?.UpdateSearchIconColor(searchBar); + } + public static void MapKeyboard(ISearchBarHandler handler, ISearchBar searchBar) { handler.PlatformView?.UpdateKeyboard(searchBar); @@ -121,6 +126,7 @@ void OnLoaded(object sender, UI.Xaml.RoutedEventArgs e) PlatformView?.UpdateIsTextPredictionEnabled(VirtualView); PlatformView?.UpdateIsSpellCheckEnabled(VirtualView); PlatformView?.UpdateCancelButtonColor(VirtualView); + PlatformView?.UpdateSearchIconColor(VirtualView); PlatformView?.UpdateKeyboard(VirtualView); } } diff --git a/src/Core/src/Handlers/SearchBar/SearchBarHandler.cs b/src/Core/src/Handlers/SearchBar/SearchBarHandler.cs index ef6615dbbc30..fe118127f439 100644 --- a/src/Core/src/Handlers/SearchBar/SearchBarHandler.cs +++ b/src/Core/src/Handlers/SearchBar/SearchBarHandler.cs @@ -34,6 +34,7 @@ public partial class SearchBarHandler : ISearchBarHandler [nameof(ISearchBar.Text)] = MapText, [nameof(ISearchBar.TextColor)] = MapTextColor, [nameof(ISearchBar.CancelButtonColor)] = MapCancelButtonColor, + [nameof(ISearchBar.SearchIconColor)] = MapSearchIconColor, [nameof(ISearchBar.Keyboard)] = MapKeyboard }; diff --git a/src/Core/src/Handlers/SearchBar/SearchBarHandler.iOS.cs b/src/Core/src/Handlers/SearchBar/SearchBarHandler.iOS.cs index 9b35ecf7433e..3015674f6404 100644 --- a/src/Core/src/Handlers/SearchBar/SearchBarHandler.iOS.cs +++ b/src/Core/src/Handlers/SearchBar/SearchBarHandler.iOS.cs @@ -141,6 +141,10 @@ public static void MapCancelButtonColor(ISearchBarHandler handler, ISearchBar se handler.PlatformView?.UpdateCancelButton(searchBar); } + internal static void MapSearchIconColor(ISearchBarHandler handler, ISearchBar searchBar) + { + handler.PlatformView?.UpdateSearchIcon(searchBar); + } public static void MapKeyboard(ISearchBarHandler handler, ISearchBar searchBar) { handler.PlatformView?.UpdateKeyboard(searchBar); diff --git a/src/Core/src/Platform/Android/SearchViewExtensions.cs b/src/Core/src/Platform/Android/SearchViewExtensions.cs index cdfe739f80bc..b4f71740f6c6 100644 --- a/src/Core/src/Platform/Android/SearchViewExtensions.cs +++ b/src/Core/src/Platform/Android/SearchViewExtensions.cs @@ -118,6 +118,27 @@ public static void UpdateCancelButtonColor(this SearchView searchView, ISearchBa } } + internal static void UpdateSearchIconColor(this SearchView searchView, ISearchBar searchBar) + { + if (searchView.Resources is null) + return; + + var searchIconIdentifier = Resource.Id.search_mag_icon; + + if (searchIconIdentifier > 0) + { + var image = searchView.FindViewById(searchIconIdentifier); + + if (image?.Drawable is not null) + { + if (searchBar.SearchIconColor is not null) + image.Drawable.SetColorFilter(searchBar.SearchIconColor, FilterMode.SrcIn); + else + image.Drawable.ClearColorFilter(); + } + } + } + public static void UpdateIsTextPredictionEnabled(this SearchView searchView, ISearchBar searchBar, EditText? editText = null) { editText ??= searchView.GetFirstChildOfType(); diff --git a/src/Core/src/Platform/Windows/SearchBarExtensions.cs b/src/Core/src/Platform/Windows/SearchBarExtensions.cs index 04067c2b00dd..6ec782af8e1e 100644 --- a/src/Core/src/Platform/Windows/SearchBarExtensions.cs +++ b/src/Core/src/Platform/Windows/SearchBarExtensions.cs @@ -187,5 +187,24 @@ internal static void UpdateCancelButtonColor(this AutoSuggestBox platformControl cancelButton.UpdateTextColor(searchBar.CancelButtonColor, CancelButtonColorKeys); } + + internal static void UpdateSearchIconColor(this AutoSuggestBox platformControl, ISearchBar searchBar) + { + var brush = searchBar.SearchIconColor?.ToPlatform(); + + if (platformControl.QueryIcon is SymbolIcon queryIcon) + { + if (brush is null) + { + queryIcon.ClearValue(SymbolIcon.ForegroundProperty); + } + else + { + queryIcon.Foreground = brush; + } + } + + platformControl.RefreshThemeResources(); + } } } \ No newline at end of file diff --git a/src/Core/src/Platform/iOS/SearchBarExtensions.cs b/src/Core/src/Platform/iOS/SearchBarExtensions.cs index a7dda89425ac..6bcd30b731db 100644 --- a/src/Core/src/Platform/iOS/SearchBarExtensions.cs +++ b/src/Core/src/Platform/iOS/SearchBarExtensions.cs @@ -146,6 +146,21 @@ public static void UpdateCancelButton(this UISearchBar uiSearchBar, ISearchBar s } } + internal static void UpdateSearchIcon(this UISearchBar uiSearchBar, ISearchBar searchBar) + { + var textField = uiSearchBar.FindDescendantView(); + + if (textField?.LeftView is not UIImageView iconView || iconView.Image is null) + return; + + if (searchBar.SearchIconColor is not null) + { + iconView.Image = iconView.Image.ImageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate); + iconView.TintColor = searchBar.SearchIconColor.ToPlatform(); + } + + } + public static void UpdateIsTextPredictionEnabled(this UISearchBar uiSearchBar, ISearchBar searchBar, UITextField? textField = null) { textField ??= uiSearchBar.GetSearchTextField(); diff --git a/src/Core/src/PublicAPI/net-android/PublicAPI.Unshipped.txt b/src/Core/src/PublicAPI/net-android/PublicAPI.Unshipped.txt index 9f06d38a5b2c..70eca58f9136 100644 --- a/src/Core/src/PublicAPI/net-android/PublicAPI.Unshipped.txt +++ b/src/Core/src/PublicAPI/net-android/PublicAPI.Unshipped.txt @@ -82,3 +82,4 @@ static Microsoft.Maui.Keyboard.Password.get -> Microsoft.Maui.Keyboard! static Microsoft.Maui.Keyboard.Time.get -> Microsoft.Maui.Keyboard! static Microsoft.Maui.ViewExtensions.DisconnectHandlers(this Microsoft.Maui.IView! view) -> void override Microsoft.Maui.Handlers.BorderHandler.PlatformArrange(Microsoft.Maui.Graphics.Rect rect) -> void +Microsoft.Maui.ISearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color! diff --git a/src/Core/src/PublicAPI/net-ios/PublicAPI.Unshipped.txt b/src/Core/src/PublicAPI/net-ios/PublicAPI.Unshipped.txt index 10f7e317afed..1b95915221cd 100644 --- a/src/Core/src/PublicAPI/net-ios/PublicAPI.Unshipped.txt +++ b/src/Core/src/PublicAPI/net-ios/PublicAPI.Unshipped.txt @@ -86,4 +86,5 @@ override Microsoft.Maui.Platform.MauiCALayer.RemoveFromSuperLayer() -> void override Microsoft.Maui.Handlers.BorderHandler.PlatformArrange(Microsoft.Maui.Graphics.Rect rect) -> void override Microsoft.Maui.Handlers.EditorHandler.NeedsContainer.get -> bool override Microsoft.Maui.Handlers.WindowHandler.DisconnectHandler(UIKit.UIWindow! platformView) -> void -*REMOVED*override Microsoft.Maui.Handlers.ScrollViewHandler.NeedsContainer.get -> bool \ No newline at end of file +*REMOVED*override Microsoft.Maui.Handlers.ScrollViewHandler.NeedsContainer.get -> bool +Microsoft.Maui.ISearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color! diff --git a/src/Core/src/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt b/src/Core/src/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt index dadc16648e8c..1c3d9fa4b843 100644 --- a/src/Core/src/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt +++ b/src/Core/src/PublicAPI/net-maccatalyst/PublicAPI.Unshipped.txt @@ -87,4 +87,5 @@ override Microsoft.Maui.Platform.MauiCALayer.RemoveFromSuperLayer() -> void override Microsoft.Maui.Handlers.BorderHandler.PlatformArrange(Microsoft.Maui.Graphics.Rect rect) -> void override Microsoft.Maui.Handlers.EditorHandler.NeedsContainer.get -> bool override Microsoft.Maui.Handlers.WindowHandler.DisconnectHandler(UIKit.UIWindow! platformView) -> void -*REMOVED*override Microsoft.Maui.Handlers.ScrollViewHandler.NeedsContainer.get -> bool \ No newline at end of file +*REMOVED*override Microsoft.Maui.Handlers.ScrollViewHandler.NeedsContainer.get -> bool +Microsoft.Maui.ISearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color! diff --git a/src/Core/src/PublicAPI/net-tizen/PublicAPI.Unshipped.txt b/src/Core/src/PublicAPI/net-tizen/PublicAPI.Unshipped.txt index ede8897432dd..9d80572146a6 100644 --- a/src/Core/src/PublicAPI/net-tizen/PublicAPI.Unshipped.txt +++ b/src/Core/src/PublicAPI/net-tizen/PublicAPI.Unshipped.txt @@ -66,3 +66,4 @@ static Microsoft.Maui.Keyboard.Time.get -> Microsoft.Maui.Keyboard! static Microsoft.Maui.Platform.ElementExtensions.ToContainerView(this Microsoft.Maui.IElement? view, Microsoft.Maui.IMauiContext! context) -> Tizen.NUI.BaseComponents.View! static Microsoft.Maui.ViewExtensions.DisconnectHandlers(this Microsoft.Maui.IView! view) -> void override Microsoft.Maui.Handlers.BorderHandler.PlatformArrange(Microsoft.Maui.Graphics.Rect rect) -> void +Microsoft.Maui.ISearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color! diff --git a/src/Core/src/PublicAPI/net-windows/PublicAPI.Unshipped.txt b/src/Core/src/PublicAPI/net-windows/PublicAPI.Unshipped.txt index ff5ecdbc7010..882c5ece2451 100644 --- a/src/Core/src/PublicAPI/net-windows/PublicAPI.Unshipped.txt +++ b/src/Core/src/PublicAPI/net-windows/PublicAPI.Unshipped.txt @@ -74,3 +74,4 @@ static Microsoft.Maui.ViewExtensions.DisconnectHandlers(this Microsoft.Maui.IVie *REMOVED*virtual Microsoft.Maui.Platform.NavigationRootManager.Connect(Microsoft.UI.Xaml.UIElement! platformView) -> void virtual Microsoft.Maui.Platform.NavigationRootManager.Connect(Microsoft.UI.Xaml.UIElement? platformView) -> void override Microsoft.Maui.Handlers.BorderHandler.PlatformArrange(Microsoft.Maui.Graphics.Rect rect) -> void +Microsoft.Maui.ISearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color! diff --git a/src/Core/src/PublicAPI/net/PublicAPI.Unshipped.txt b/src/Core/src/PublicAPI/net/PublicAPI.Unshipped.txt index e54989d8a78e..0334e5d66770 100644 --- a/src/Core/src/PublicAPI/net/PublicAPI.Unshipped.txt +++ b/src/Core/src/PublicAPI/net/PublicAPI.Unshipped.txt @@ -64,3 +64,4 @@ static Microsoft.Maui.Keyboard.Password.get -> Microsoft.Maui.Keyboard! static Microsoft.Maui.Keyboard.Time.get -> Microsoft.Maui.Keyboard! static Microsoft.Maui.ViewExtensions.DisconnectHandlers(this Microsoft.Maui.IView! view) -> void override Microsoft.Maui.Handlers.BorderHandler.PlatformArrange(Microsoft.Maui.Graphics.Rect rect) -> void +Microsoft.Maui.ISearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color! diff --git a/src/Core/src/PublicAPI/netstandard/PublicAPI.Unshipped.txt b/src/Core/src/PublicAPI/netstandard/PublicAPI.Unshipped.txt index e54989d8a78e..0334e5d66770 100644 --- a/src/Core/src/PublicAPI/netstandard/PublicAPI.Unshipped.txt +++ b/src/Core/src/PublicAPI/netstandard/PublicAPI.Unshipped.txt @@ -64,3 +64,4 @@ static Microsoft.Maui.Keyboard.Password.get -> Microsoft.Maui.Keyboard! static Microsoft.Maui.Keyboard.Time.get -> Microsoft.Maui.Keyboard! static Microsoft.Maui.ViewExtensions.DisconnectHandlers(this Microsoft.Maui.IView! view) -> void override Microsoft.Maui.Handlers.BorderHandler.PlatformArrange(Microsoft.Maui.Graphics.Rect rect) -> void +Microsoft.Maui.ISearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color! diff --git a/src/Core/src/PublicAPI/netstandard2.0/PublicAPI.Unshipped.txt b/src/Core/src/PublicAPI/netstandard2.0/PublicAPI.Unshipped.txt index e54989d8a78e..0334e5d66770 100644 --- a/src/Core/src/PublicAPI/netstandard2.0/PublicAPI.Unshipped.txt +++ b/src/Core/src/PublicAPI/netstandard2.0/PublicAPI.Unshipped.txt @@ -64,3 +64,4 @@ static Microsoft.Maui.Keyboard.Password.get -> Microsoft.Maui.Keyboard! static Microsoft.Maui.Keyboard.Time.get -> Microsoft.Maui.Keyboard! static Microsoft.Maui.ViewExtensions.DisconnectHandlers(this Microsoft.Maui.IView! view) -> void override Microsoft.Maui.Handlers.BorderHandler.PlatformArrange(Microsoft.Maui.Graphics.Rect rect) -> void +Microsoft.Maui.ISearchBar.SearchIconColor.get -> Microsoft.Maui.Graphics.Color! diff --git a/src/Core/tests/DeviceTests/Stubs/SearchBarStub.cs b/src/Core/tests/DeviceTests/Stubs/SearchBarStub.cs index 04e7c2cceaab..4e604735b625 100644 --- a/src/Core/tests/DeviceTests/Stubs/SearchBarStub.cs +++ b/src/Core/tests/DeviceTests/Stubs/SearchBarStub.cs @@ -27,6 +27,8 @@ void OnTextChanged(string oldValue, string newValue) => public Color CancelButtonColor { get; set; } + public Color SearchIconColor { get; set; } + public double CharacterSpacing { get; set; } public Font Font { get; set; }