Skip to content

Comments

[iOS] - Fix Custom FlyoutIcon from Being Overridden to Default Color in Shell#27580

Merged
PureWeen merged 10 commits intodotnet:inflight/currentfrom
prakashKannanSf3972:fix-6738
Dec 22, 2025
Merged

[iOS] - Fix Custom FlyoutIcon from Being Overridden to Default Color in Shell#27580
PureWeen merged 10 commits intodotnet:inflight/currentfrom
prakashKannanSf3972:fix-6738

Conversation

@prakashKannanSf3972
Copy link
Contributor

@prakashKannanSf3972 prakashKannanSf3972 commented Feb 5, 2025

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
  • Windows
  • iOS
  • Mac

Output

Before After

@dotnet-policy-service dotnet-policy-service bot added the community ✨ Community Contribution label Feb 5, 2025
@jsuarezruiz jsuarezruiz added the area-controls-shell Shell Navigation, Routes, Tabs, Flyout label Feb 6, 2025
@sheiksyedm sheiksyedm added the partner/syncfusion Issues / PR's with Syncfusion collaboration label Feb 7, 2025
@azure-pipelines

This comment was marked as off-topic.

@prakashKannanSf3972 prakashKannanSf3972 marked this pull request as ready for review February 11, 2025 14:59
Copilot AI review requested due to automatic review settings February 11, 2025 14:59
@prakashKannanSf3972 prakashKannanSf3972 requested a review from a team as a code owner February 11, 2025 14:59
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

@jsuarezruiz

This comment was marked as off-topic.

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@azure-pipelines

This comment was marked as off-topic.

icon = result?.Value;

var foregroundColor = _context.Shell.GetValue(Shell.ForegroundColorProperty);
if (foregroundColor is null)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jfversluis,

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.

Copy link
Member

@jfversluis jfversluis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See comment above

@PureWeen PureWeen modified the milestones: .NET 9 SR5, .NET 9 SR6 Mar 7, 2025
@PureWeen PureWeen moved this from Todo to Ready To Review in MAUI SDK Ongoing Mar 18, 2025
@rmarinho rmarinho changed the base branch from main to inflight/current March 20, 2025 11:28
@rmarinho
Copy link
Member

/rebase

@dotnet dotnet deleted a comment from azure-pipelines bot Mar 20, 2025
@dotnet dotnet deleted a comment from jfversluis Mar 20, 2025
@dotnet dotnet deleted a comment from jsuarezruiz Mar 20, 2025
@dotnet dotnet deleted a comment from jsuarezruiz Mar 20, 2025
@sheiksyedm
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@PureWeen PureWeen dismissed stale reviews from rmarinho, jsuarezruiz, jfversluis, and themself December 22, 2025 17:36

changes made

@PureWeen PureWeen changed the base branch from main to inflight/current December 22, 2025 17:37
@PureWeen PureWeen merged commit 9669134 into dotnet:inflight/current Dec 22, 2025
161 of 164 checks passed
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 PureWeen mentioned this pull request Jan 7, 2026
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>
@github-actions github-actions bot locked and limited conversation to collaborators Jan 22, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-controls-shell Shell Navigation, Routes, Tabs, Flyout community ✨ Community Contribution partner/syncfusion Issues / PR's with Syncfusion collaboration platform/ios shell-flyout

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Change the flyout icon color

9 participants