Added useOriginalColors flag which allows ImageIcon to bypass IconTheme colorization and use the original colors#180491
Conversation
|
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). View this failed invocation of the CLA check for more information. For the most up to date status, view the checks section at the bottom of the pull request. |
There was a problem hiding this comment.
Code Review
This pull request introduces a renderOriginalImage flag to the ImageIcon widget, allowing it to display its image with original colors by bypassing IconTheme colorization. The implementation is straightforward and includes a new test case. My feedback focuses on improving the documentation for clarity and enhancing the test coverage to handle an important edge case.
justinmc
left a comment
There was a problem hiding this comment.
I wonder what you think of this comment on the issue by @satyabratanayak: #180463 (comment)
… being null at the same time.
…will be used if color property is not null and color blend filters are disabled when useOriginalColors is true and color is null.
I think I've set the flag to 'useOriginalColors'. That makes more sense because when a dev sees their multi-colored icon turned into a solid color, their immediate reaction would be to render the original colors, not necessarily to disable the icon theme colors. |
…or is provided and useOriginalColors is true.
Changed the PR description as suggested. |
|
Hey @zawhtetnaing10 can you rebase with tip of tree so we can get this landed? Thanks! |
|
autosubmit label was removed for flutter/flutter/180491, because - The status or check suite Windows framework_tests_libraries has failed. Please fix the issues identified (or deflake) before re-applying this label.
|
Piinks
left a comment
There was a problem hiding this comment.
It looks like there is a failing test here, can you take a look?
Hi, @Piinks I looked into the failing tests from before (the text_input_test.dart failures), and it appears they were unrelated tree breakages. I've synced the branch with the tip of tree a few times since then to clear it and all checks are passing now. Only the "Merge Queue Guard" remains. Let me know if there's anything else I need to resolve on my end. Thanks! |
…11595) Manual roll Flutter from 31001886cbe8 to 61fca76dd523 (53 revisions) Manual roll requested by [email protected] flutter/flutter@3100188...61fca76 2026-04-27 [email protected] Adds integration test for the FLTEnableSDFs flag for iOS (flutter/flutter#185637) 2026-04-27 [email protected] Fix sdfs being enabled for MacOS regardless of FLTEnableSDFs value (flutter/flutter#185565) 2026-04-27 [email protected] Don't use UberSDF for paint with incompatible blend modes (flutter/flutter#184889) 2026-04-27 [email protected] Roll Dart SDK from de495e3de9a0 to 941ca325cfc9 (2 revisions) (flutter/flutter#185653) 2026-04-27 [email protected] [a11y] Add CONTENT_CHANGE_TYPE_EXPANDED support on android. (flutter/flutter#185305) 2026-04-27 [email protected] Roll pub packages (flutter/flutter#185641) 2026-04-27 [email protected] Modify analyze.dart to have flags to run only or exclude each verification step. (flutter/flutter#185618) 2026-04-27 [email protected] Fix debugNeedsPaint/Layout/CompositedLayerUpdate crashing in release mode (flutter/flutter#184627) 2026-04-27 [email protected] Enable `var_with_no_type_annotation` lint. (flutter/flutter#185215) 2026-04-27 [email protected] Fix SelectionArea handles overlapping context menu on Android (flutter/flutter#182663) 2026-04-27 [email protected] Adds debugging information to compiled metal shaders (flutter/flutter#185629) 2026-04-27 [email protected] Roll pub packages (flutter/flutter#185638) 2026-04-27 [email protected] Use null-aware elements in dev/devicelab/lib/framework/browser.dart (flutter/flutter#184778) 2026-04-27 [email protected] Sync CHANGELOG.md from stable (flutter/flutter#185633) 2026-04-27 [email protected] Added useOriginalColors flag which allows ImageIcon to bypass IconTheme colorization and use the original colors (flutter/flutter#180491) 2026-04-27 [email protected] Roll Packages from 8400f71 to 23280da (2 revisions) (flutter/flutter#185619) 2026-04-27 [email protected] Roll Skia from f1238e0f1022 to ce82d32b3e03 (1 revision) (flutter/flutter#185616) 2026-04-27 [email protected] [SwiftPM] Enable package resolution on xcodebuild commands (flutter/flutter#185208) 2026-04-27 [email protected] [iOS] Refactor keyboard inset logic into FlutterKeyboardInsetManager (flutter/flutter#185535) 2026-04-27 [email protected] [Win32] FlutterDesktopEngineGetGraphicsAdapter should use out parameter (flutter/flutter#185590) 2026-04-27 [email protected] Roll Skia from d77e3356d526 to f1238e0f1022 (4 revisions) (flutter/flutter#185604) 2026-04-27 [email protected] Roll Fuchsia Linux SDK from flsn8jC4LkTn6WECf... to i6d0NoDueUiXpePfX... (flutter/flutter#185601) 2026-04-26 [email protected] Roll Dart SDK from a108dfe2d227 to de495e3de9a0 (1 revision) (flutter/flutter#185599) 2026-04-26 [email protected] Roll Skia from ce9aa2231292 to d77e3356d526 (1 revision) (flutter/flutter#185596) 2026-04-26 [email protected] Roll Skia from 622fff4c24d2 to ce9aa2231292 (1 revision) (flutter/flutter#185588) 2026-04-25 [email protected] Roll Fuchsia Linux SDK from 9fPnyEo9PaNdXtasl... to flsn8jC4LkTn6WECf... (flutter/flutter#185585) 2026-04-25 [email protected] Roll Dart SDK from 605a8faf0dda to a108dfe2d227 (1 revision) (flutter/flutter#185584) 2026-04-25 [email protected] Roll Dart SDK from 6b8c39765f17 to 605a8faf0dda (1 revision) (flutter/flutter#185578) 2026-04-25 [email protected] Roll Skia from 185f6b57d64f to 622fff4c24d2 (1 revision) (flutter/flutter#185573) 2026-04-25 [email protected] Implement square-like round superellipses with circular corners in the SDF uber shader (flutter/flutter#185370) 2026-04-25 [email protected] Add @awaitNotRequired annotation to flutter sdk (flutter/flutter#181513) 2026-04-25 [email protected] Roll Dart SDK from 01228cb7af42 to 6b8c39765f17 (2 revisions) (flutter/flutter#185569) 2026-04-25 [email protected] Adapt the DisplayList benchmarks into a primitive rendering benchmark suite (flutter/flutter#185270) 2026-04-25 [email protected] Enable SPM for GoogleMobileAds (flutter/flutter#185548) 2026-04-25 [email protected] Roll Skia from 3f467a581942 to 185f6b57d64f (1 revision) (flutter/flutter#185564) 2026-04-25 [email protected] Fix Table crash when a cell child paints below the row bottom (flutter/flutter#185323) 2026-04-24 [email protected] Make sure that an Image doesn't crash in 0x0 environment (flutter/flutter#181154) 2026-04-24 [email protected] Roll Skia from 300d432048b0 to 3f467a581942 (3 revisions) (flutter/flutter#185558) 2026-04-24 [email protected] Roll Dart SDK from c26627715892 to 01228cb7af42 (4 revisions) (flutter/flutter#185559) 2026-04-24 [email protected] Reland "[web] Fix LateInitializationError in CkSurface and SkwasmSurface (#185116)" (flutter/flutter#185553) 2026-04-24 [email protected] [github]fix git ls-file glob pattern in labeler.yml instruction (flutter/flutter#185495) 2026-04-24 [email protected] [ios]update ios-reviewers tags to include more files (flutter/flutter#185490) 2026-04-24 [email protected] Add initial support for Cross-Origin Storage (flutter/flutter#184149) 2026-04-24 [email protected] tool: Skip cached engine artifacts with local engine (flutter/flutter#185546) ...
…lutter#11595) Manual roll Flutter from 31001886cbe8 to 61fca76dd523 (53 revisions) Manual roll requested by [email protected] flutter/flutter@3100188...61fca76 2026-04-27 [email protected] Adds integration test for the FLTEnableSDFs flag for iOS (flutter/flutter#185637) 2026-04-27 [email protected] Fix sdfs being enabled for MacOS regardless of FLTEnableSDFs value (flutter/flutter#185565) 2026-04-27 [email protected] Don't use UberSDF for paint with incompatible blend modes (flutter/flutter#184889) 2026-04-27 [email protected] Roll Dart SDK from de495e3de9a0 to 941ca325cfc9 (2 revisions) (flutter/flutter#185653) 2026-04-27 [email protected] [a11y] Add CONTENT_CHANGE_TYPE_EXPANDED support on android. (flutter/flutter#185305) 2026-04-27 [email protected] Roll pub packages (flutter/flutter#185641) 2026-04-27 [email protected] Modify analyze.dart to have flags to run only or exclude each verification step. (flutter/flutter#185618) 2026-04-27 [email protected] Fix debugNeedsPaint/Layout/CompositedLayerUpdate crashing in release mode (flutter/flutter#184627) 2026-04-27 [email protected] Enable `var_with_no_type_annotation` lint. (flutter/flutter#185215) 2026-04-27 [email protected] Fix SelectionArea handles overlapping context menu on Android (flutter/flutter#182663) 2026-04-27 [email protected] Adds debugging information to compiled metal shaders (flutter/flutter#185629) 2026-04-27 [email protected] Roll pub packages (flutter/flutter#185638) 2026-04-27 [email protected] Use null-aware elements in dev/devicelab/lib/framework/browser.dart (flutter/flutter#184778) 2026-04-27 [email protected] Sync CHANGELOG.md from stable (flutter/flutter#185633) 2026-04-27 [email protected] Added useOriginalColors flag which allows ImageIcon to bypass IconTheme colorization and use the original colors (flutter/flutter#180491) 2026-04-27 [email protected] Roll Packages from 8400f71 to 23280da (2 revisions) (flutter/flutter#185619) 2026-04-27 [email protected] Roll Skia from f1238e0f1022 to ce82d32b3e03 (1 revision) (flutter/flutter#185616) 2026-04-27 [email protected] [SwiftPM] Enable package resolution on xcodebuild commands (flutter/flutter#185208) 2026-04-27 [email protected] [iOS] Refactor keyboard inset logic into FlutterKeyboardInsetManager (flutter/flutter#185535) 2026-04-27 [email protected] [Win32] FlutterDesktopEngineGetGraphicsAdapter should use out parameter (flutter/flutter#185590) 2026-04-27 [email protected] Roll Skia from d77e3356d526 to f1238e0f1022 (4 revisions) (flutter/flutter#185604) 2026-04-27 [email protected] Roll Fuchsia Linux SDK from flsn8jC4LkTn6WECf... to i6d0NoDueUiXpePfX... (flutter/flutter#185601) 2026-04-26 [email protected] Roll Dart SDK from a108dfe2d227 to de495e3de9a0 (1 revision) (flutter/flutter#185599) 2026-04-26 [email protected] Roll Skia from ce9aa2231292 to d77e3356d526 (1 revision) (flutter/flutter#185596) 2026-04-26 [email protected] Roll Skia from 622fff4c24d2 to ce9aa2231292 (1 revision) (flutter/flutter#185588) 2026-04-25 [email protected] Roll Fuchsia Linux SDK from 9fPnyEo9PaNdXtasl... to flsn8jC4LkTn6WECf... (flutter/flutter#185585) 2026-04-25 [email protected] Roll Dart SDK from 605a8faf0dda to a108dfe2d227 (1 revision) (flutter/flutter#185584) 2026-04-25 [email protected] Roll Dart SDK from 6b8c39765f17 to 605a8faf0dda (1 revision) (flutter/flutter#185578) 2026-04-25 [email protected] Roll Skia from 185f6b57d64f to 622fff4c24d2 (1 revision) (flutter/flutter#185573) 2026-04-25 [email protected] Implement square-like round superellipses with circular corners in the SDF uber shader (flutter/flutter#185370) 2026-04-25 [email protected] Add @awaitNotRequired annotation to flutter sdk (flutter/flutter#181513) 2026-04-25 [email protected] Roll Dart SDK from 01228cb7af42 to 6b8c39765f17 (2 revisions) (flutter/flutter#185569) 2026-04-25 [email protected] Adapt the DisplayList benchmarks into a primitive rendering benchmark suite (flutter/flutter#185270) 2026-04-25 [email protected] Enable SPM for GoogleMobileAds (flutter/flutter#185548) 2026-04-25 [email protected] Roll Skia from 3f467a581942 to 185f6b57d64f (1 revision) (flutter/flutter#185564) 2026-04-25 [email protected] Fix Table crash when a cell child paints below the row bottom (flutter/flutter#185323) 2026-04-24 [email protected] Make sure that an Image doesn't crash in 0x0 environment (flutter/flutter#181154) 2026-04-24 [email protected] Roll Skia from 300d432048b0 to 3f467a581942 (3 revisions) (flutter/flutter#185558) 2026-04-24 [email protected] Roll Dart SDK from c26627715892 to 01228cb7af42 (4 revisions) (flutter/flutter#185559) 2026-04-24 [email protected] Reland "[web] Fix LateInitializationError in CkSurface and SkwasmSurface (#185116)" (flutter/flutter#185553) 2026-04-24 [email protected] [github]fix git ls-file glob pattern in labeler.yml instruction (flutter/flutter#185495) 2026-04-24 [email protected] [ios]update ios-reviewers tags to include more files (flutter/flutter#185490) 2026-04-24 [email protected] Add initial support for Cross-Origin Storage (flutter/flutter#184149) 2026-04-24 [email protected] tool: Skip cached engine artifacts with local engine (flutter/flutter#185546) ...
Added useOriginalColors flag which allows ImageIcon to bypass IconTheme colorization and use the original colors. Issue #180463
Pre-launch Checklist
///).