[iOS] - Fix Custom FlyoutIcon from Being Overridden to Default Color in Shell#27580
Merged
PureWeen merged 10 commits intodotnet:inflight/currentfrom Dec 22, 2025
Merged
[iOS] - Fix Custom FlyoutIcon from Being Overridden to Default Color in Shell#27580PureWeen merged 10 commits intodotnet:inflight/currentfrom
PureWeen merged 10 commits intodotnet:inflight/currentfrom
Conversation
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
|
Azure Pipelines successfully started running 3 pipeline(s). |
jsuarezruiz
suggested changes
Feb 12, 2025
src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/IssueShell6738.cs
Show resolved
Hide resolved
This comment was marked as off-topic.
This comment was marked as off-topic.
821492b to
2057da3
Compare
jfversluis
reviewed
Feb 19, 2025
| icon = result?.Value; | ||
|
|
||
| var foregroundColor = _context.Shell.GetValue(Shell.ForegroundColorProperty); | ||
| if (foregroundColor is null) |
Member
There was a problem hiding this comment.
What if I change the foreground color? Will it change back? Should there be an else statement that sets the UIImageRenderingMode the other way? Can we have that in a (additional) test that we can toggle between the colors here?
Contributor
Author
There was a problem hiding this comment.
The Flyout icon updates its color correctly when the foreground color changes dynamically. It does not remain in UIImageRenderingMode.AlwaysOriginal since the image is always loaded with its default rendering mode, allowing it to adapt to the assigned ForegroundColor.
I have added a test to validate this behavior. Let me know if any further refinements are needed.
Member
|
/rebase |
8884344 to
dfb21fd
Compare
243b7c7 to
a3a0a3b
Compare
Contributor
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
StephaneDelcroix
approved these changes
Dec 8, 2025
changes made
This was referenced Dec 22, 2025
Open
PureWeen
pushed a commit
that referenced
this pull request
Dec 22, 2025
…in Shell (#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes #6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
PureWeen
pushed a commit
that referenced
this pull request
Dec 26, 2025
…in Shell (#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes #6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
PureWeen
pushed a commit
that referenced
this pull request
Dec 30, 2025
…in Shell (#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes #6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
github-actions bot
pushed a commit
that referenced
this pull request
Dec 30, 2025
…in Shell (#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes #6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
PureWeen
pushed a commit
that referenced
this pull request
Jan 5, 2026
…in Shell (#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes #6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
PureWeen
pushed a commit
that referenced
this pull request
Jan 9, 2026
…in Shell (#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes #6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
PureWeen
pushed a commit
that referenced
this pull request
Jan 9, 2026
…in Shell (#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes #6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
PureWeen
pushed a commit
that referenced
this pull request
Jan 9, 2026
…in Shell (#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes #6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
PureWeen
pushed a commit
that referenced
this pull request
Jan 13, 2026
…in Shell (#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes #6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
PureWeen
pushed a commit
that referenced
this pull request
Jan 13, 2026
…in Shell (#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes #6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
PureWeen
added a commit
that referenced
this pull request
Jan 13, 2026
## What's Coming .NET MAUI inflight/candidate introduces significant improvements across all platforms with focus on quality, performance, and developer experience. This release includes 27 commits with various improvements, bug fixes, and enhancements. ## CollectionView - [iOS][CV2] Fix page can be dragged down, and it would cause an extra space between Header and EmptyView text by @devanathan-vaithiyanathan in #31840 <details> <summary>🔧 Fixes</summary> - [I8_Header_and_Footer_Null - The page can be dragged down, and it would cause an extra space between Header and EmptyView text.](#31465) </details> - [iOS] Fixed the Items not displayed properly in CarouselView2 by @Ahamed-Ali in #31336 <details> <summary>🔧 Fixes</summary> - [[iOS] Items are not updated properly in CarouselView2.](#31148) </details> ## Docs - Improve Controls Core API docs by @jfversluis in #33240 ## Editor - [iOS] Fixed an issue where an Editor with a small height inside a ScrollView would cause the entire page to scroll by @Tamilarasan-Paranthaman in #27948 <details> <summary>🔧 Fixes</summary> - [[iOS][Editor] An Editor that has not enough height and resides inside a ScrollView/CollectionView will scroll the entire page](#27750) </details> ## Image - [Android] Image control crashes on Android when image width exceeds height by @KarthikRajaKalaimani in #33045 <details> <summary>🔧 Fixes</summary> - [Image control crashes on Android when image width exceeds height](#32869) </details> ## Mediapicker - [Android 🤖] Add a log telling why the request is cancelled by @pictos in #33295 <details> <summary>🔧 Fixes</summary> - [MediaPicker.PickPhotosAsync throwing TaskCancelledException in net10-android](#33283) </details> ## Navigation - [Android] Fix for App Hang When PopModalAsync Is Called Immediately After PushModalAsync with Task.Yield() by @BagavathiPerumal in #32479 <details> <summary>🔧 Fixes</summary> - [App hangs if PopModalAsync is called after PushModalAsync with single await Task.Yield()](#32310) </details> - [iOS 26] Navigation hangs after rapidly open and closing new page using Navigation.PushAsync - fix by @kubaflo in #32456 <details> <summary>🔧 Fixes</summary> - [[iOS 26] Navigation hangs after rapidly open and closing new page using Navigation.PushAsync](#32425) </details> ## Pages - [iOS] Fix ContentPage BackgroundImageSource not working by @Shalini-Ashokan in #33297 <details> <summary>🔧 Fixes</summary> - [.Net MAUI- Page.BackgroundImageSource not working for iOS](#21594) </details> ## RadioButton - [Issue-Resolver] Fix #33264 - RadioButtonGroup not working with Collection View by @kubaflo in #33343 <details> <summary>🔧 Fixes</summary> - [RadioButtonGroup not working with CollectionView](#33264) </details> ## SafeArea - [Android] Fixed Label Overlapped by Android Status Bar When Using SafeAreaEdges="Container" in .NET MAUI by @NirmalKumarYuvaraj in #33285 <details> <summary>🔧 Fixes</summary> - [SafeAreaEdges works correctly only on the first tab in Shell. Other tabs have content colliding with the display cutout in the landscape mode.](#33034) - [Label Overlapped by Android Status Bar When Using SafeAreaEdges="Container" in .NET MAUI](#32941) - [[MAUI 10] Layout breaks on first navigation (Shell // route) until soft keyboard appears/disappears (Android + iOS)](#33038) </details> ## ScrollView - [Windows, Android] Fix ScrollView Content Not Removed When Set to Null by @devanathan-vaithiyanathan in #33069 <details> <summary>🔧 Fixes</summary> - [[Windows, Android] ScrollView Content Not Removed When Set to Null](#33067) </details> ## Searchbar - Fix Android crash when changing shared Drawable tint on Searchbar by @tritter in #33071 <details> <summary>🔧 Fixes</summary> - [[Android] Crash on changing Tint of Searchbar](#33070) </details> ## Shell - [iOS] - Fix Custom FlyoutIcon from Being Overridden to Default Color in Shell by @prakashKannanSf3972 in #27580 <details> <summary>🔧 Fixes</summary> - [Change the flyout icon color](#6738) </details> - [iOS] Fix Shell NavBarIsVisible updates when switching ShellContent by @Vignesh-SF3580 in #33195 <details> <summary>🔧 Fixes</summary> - [[iOS] Shell NavBarIsVisible is not updated when changing ShellContent](#33191) </details> ## Slider - [C] Fix Slider and Stepper property order independence by @StephaneDelcroix in #32939 <details> <summary>🔧 Fixes</summary> - [Slider Binding Initialization Order Causes Incorrect Value Assignment in XAML](#32903) - [Slider is very broken, Value is a mess when setting Minimum](#14472) - [Slider is buggy depending on order of properties](#18910) - [Stepper Value is incorrectly clamped to default min/max when using bindableproperties in MVVM pattern](#12243) - [[Issue-Resolver] Fix #32903 - Sliderbinding initialization order issue](#32907) </details> ## Stepper - [Windows] Maui Stepper: Clamp minimum and maximum value by @OomJan in #33275 <details> <summary>🔧 Fixes</summary> - [[Windows] Maui Stepper is not clamped to minimum or maximum internally](#33274) </details> - [iOS] Fixed the UIStepper Value from being clamped based on old higher MinimumValue - Candidate PR test failure fix- 33363 by @Ahamed-Ali in #33392 ## TabbedPage - [windows] Fixed Rapid change of selected tab results in crash. by @praveenkumarkarunanithi in #33113 <details> <summary>🔧 Fixes</summary> - [Rapid change of selected tab results in crash on Windows.](#32824) </details> ## Titlebar - [Mac] Fix TitleBar Content Overlapping with Traffic Light Buttons on Latest macOS Version by @devanathan-vaithiyanathan in #33157 <details> <summary>🔧 Fixes</summary> - [TitleBar Content Overlapping with Traffic Light Buttons on Latest macOS Version](#33136) </details> ## Xaml - Fix for Control does not update from binding anymore after MultiBinding.ConvertBack is called by @BagavathiPerumal in #33128 <details> <summary>🔧 Fixes</summary> - [Control does not update from binding anymore after MultiBinding.ConvertBack is called](#24969) - [The issue with the MultiBinding converter with two way binding mode does not work properly when changing the values.](#20382) </details> <details> <summary>🔧 Infrastructure (1)</summary> - Avoid KVO on CALayer by introducing an Apple PlatformInterop by @albyrock87 in #30861 </details> <details> <summary>🧪 Testing (2)</summary> - [Testing] Enable UITest Issue18193 on MacCatalyst by @NafeelaNazhir in #31653 <details> <summary>🔧 Fixes</summary> - [Test Issue18193 was disabled on Mac Catalyst](#27206) </details> - Set the CV2 handlers as the default by @Ahamed-Ali in #33177 </details> <details> <summary>📦 Other (3)</summary> - Update WindowsAppSDK to 1.8 by @mattleibow in #32174 <details> <summary>🔧 Fixes</summary> - [Update to WindowsAppSDK](#30858) </details> - Fix command dependency reentrancy by @simonrozsival in #33129 - Fix SafeArea AdjustPan handling and add AdjustNothing mode tests by @PureWeen via @Copilot in #33354 </details> **Full Changelog**: main...inflight/candidate
kubaflo
pushed a commit
to kubaflo/maui
that referenced
this pull request
Jan 16, 2026
…in Shell (dotnet#27580) ## Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color. ### RootCause By default, `UIImageRenderingMode` is set to `Automatic`, allowing the rendering behavior to be determined based on the UI context. When a custom `FlyoutIcon` is applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes. ### Description of Change The image rendering mode is now set to `UIImageRenderingMode.AlwaysOriginal`, ensuring that custom icons maintain their original colors without being altered by default rendering behavior. - When no custom `FlyoutIcon` is set, its color can still be modified using `Shell.ForegroundColor`. - When a custom `FlyoutIcon` is applied, it now preserves its original image color without automatic tinting. - If color customization for the custom icon is needed, `Shell.ForegroundColor` should be set accordingly to allow the color modification to be applied. ### Issues Fixed Fixes dotnet#6738 **Tested the behaviour in the following platforms** - [ ] Android - [x] Windows - [x] iOS - [x] Mac ### Output |Before|After| |--|--| |<img src="https://github.com/user-attachments/assets/cf86c574-6c7a-4426-a40d-39032395fe2e">|<img src="https://github.com/user-attachments/assets/c647c915-8db5-4c41-918f-223bde1d8dfd">| --------- Co-authored-by: SyedAbdulAzeem <syedabdulazeem.a@syncfusion.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue: The color of the custom FlyoutIcon in Shell resets to the default blue instead of retaining its original color.
RootCause
By default,
UIImageRenderingModeis set toAutomatic, allowing the rendering behavior to be determined based on the UI context. When a customFlyoutIconis applied, it does not retain its original color but instead adapts to the predefined tinting behavior, leading to unintended color changes.Description of Change
The image rendering mode is now set to
UIImageRenderingMode.AlwaysOriginal, ensuring that custom icons maintain their original colors without being altered by default rendering behavior.FlyoutIconis set, its color can still be modified usingShell.ForegroundColor.FlyoutIconis applied, it now preserves its original image color without automatic tinting.Shell.ForegroundColorshould be set accordingly to allow the color modification to be applied.Issues Fixed
Fixes #6738
Tested the behaviour in the following platforms
Output