-
Notifications
You must be signed in to change notification settings - Fork 29.8k
Adds onHover and onLongPress to IconButton widget #160032
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adds onHover and onLongPress to IconButton widget #160032
Conversation
TahaTesser
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@M97Chahboun
Looks like your last update made the tests overly complicated. I only suggested to add Column with all icon button variants. We don't need pump each variant like you did in your new update. Please revert to previous version and wrap a Column and add other variants.
TahaTesser
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Previous tests were simple and cleaner.
This was the suggestion.
child: Directionality(
textDirection: TextDirection.ltr,
child: Column(
children: [
IconButton(
icon: const Icon(Icons.favorite),
onPressed: enabled ? () {} : null,
onHover: (bool hover) {
onHovered = hover;
},
onLongPress: () {
onLongPressed = true;
},
),
/// Add other variants of the IconButton here.
],
),
),
),
|
@TahaTesser Thank you for your suggestion, I will implement it ASAP |
This reverts commit e73a3e1.
|
cc: @bleroux |
|
I tried using a I will push the results. Please let me know if this is good practice. If there are any issues, I will revert the commit. |
|
I understand what you're encountering. You can still use column and put those variants, instead of using just You can find similar find.ancestor examples in the source code. Also please revert the workaround if you decide to find.ancestor which is much simpler and it is perfect to find such objects. |
|
I'll be on vacation from now until Jan 2nd, @bleroux can help review this next week. |
One simple way to mitigate this, is to set a different icon for each button and use a finder such as:
testWidgets variant (subclasses of |
TahaTesser
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Roll Flutter from 4b23b81 to 864d4f5 (50 revisions) flutter/flutter@4b23b81...864d4f5 2025-01-10 magder@google.com Mark complex_layout_scroll_perf_macos__timeline_summary unflaky (flutter/flutter#160997) 2025-01-10 magder@google.com Mark hello_world_macos__compile unflaky (flutter/flutter#160998) 2025-01-10 magder@google.com Mark animated_complex_opacity_perf_macos__e2e_summary unflaky (flutter/flutter#160996) 2025-01-10 magder@google.com Mark integration_ui_test_test_macos unflaky (flutter/flutter#160999) 2025-01-10 magder@google.com Mark hot_mode_dev_cycle_macos_target__benchmark unflaky (flutter/flutter#161000) 2025-01-10 matanlurey@users.noreply.github.com Add a virtual-display (VD) platform view test, and refactor tests a bit. (flutter/flutter#161349) 2025-01-10 matanlurey@users.noreply.github.com Remove `CIRRUS_TASK_NAME` from what I can tell, is always omitted on `LUCI` (flutter/flutter#161391) 2025-01-10 matanlurey@users.noreply.github.com Replace the always omitted `CPU` environment variable with `numberOfProcessors`. (flutter/flutter#161392) 2025-01-10 matanlurey@users.noreply.github.com We no longer have a separate engine repo. (flutter/flutter#161400) 2025-01-10 goderbauer@google.com Update Style-guide-for-Flutter-repo.md (flutter/flutter#161344) 2025-01-09 chris@bracken.jp integration_test: Add gitignore of golden image (flutter/flutter#161404) 2025-01-09 goderbauer@google.com Fix link to engine docs in CONTRIBUTING.md (flutter/flutter#161401) 2025-01-09 engine-flutter-autoroll@skia.org Roll Packages from 3fc6b7a to 6554751 (11 revisions) (flutter/flutter#161379) 2025-01-09 32538273+ValentinVignal@users.noreply.github.com Add `mouseCursor` parameter to `ReorderableListView` (flutter/flutter#160246) 2025-01-09 matanlurey@users.noreply.github.com Remove Cirrus CI from Flutter goldens. (flutter/flutter#161396) 2025-01-09 lsaudon@gmail.com remove`useMaterial3: true,` in from the template (flutter/flutter#160525) 2025-01-09 matanlurey@users.noreply.github.com Remove `accept_android_sdk_licenses.sh`, which appears unused. (flutter/flutter#161388) 2025-01-09 a-siva@users.noreply.github.com Roll Dart to Version 3.7.0-312.0.dev (flutter/flutter#161394) 2025-01-09 fluttergithubbot@gmail.com Marks Linux analyzer_benchmark to be flaky (flutter/flutter#161307) 2025-01-09 jonahwilliams@google.com [Impeller] fix scaling of trampoline import of GLES textures into Vulkan. (flutter/flutter#161331) 2025-01-09 58529443+srujzs@users.noreply.github.com Support DDC library bundle format and remove support for DDC module format (flutter/flutter#161276) 2025-01-09 matanlurey@users.noreply.github.com Remove seemingly stale web Cirrus and "Web Installer" instructions (flutter/flutter#161389) 2025-01-09 matanlurey@users.noreply.github.com Proposal to deprecate `webGoldenComparator`. (flutter/flutter#161196) 2025-01-09 nate.w5687@gmail.com `ImplicitlyAnimatedWidgetState` code cleanup (flutter/flutter#160567) 2025-01-09 matanlurey@users.noreply.github.com Exclude `*texture*` as matching for `a: text input` (flutter/flutter#161354) 2025-01-09 jonahwilliams@google.com [Impeller] add opt in flag for SurfaceControl testing. (flutter/flutter#161353) 2025-01-09 a-siva@users.noreply.github.com Roll Dart to Version 3.7.0-307.0.dev (flutter/flutter#161278) 2025-01-09 goderbauer@google.com remove formatter from snippet tool (flutter/flutter#161347) 2025-01-09 robert.ancell@canonical.com Refactor keyboard manager tests (flutter/flutter#160637) 2025-01-09 jonahwilliams@google.com [flutter_tools] ignore viewpost ime and samsung spam messages. (flutter/flutter#161199) 2025-01-09 737941+loic-sharma@users.noreply.github.com Revert "[SwiftPM] Add separate feature flag for the app migration (#158897)" (flutter/flutter#161342) 2025-01-09 flar@google.com git ignore .ccls-cache (flutter/flutter#161340) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[SwiftPM] Turn on by default (#161275)" (flutter/flutter#161339) 2025-01-08 jmccandless@google.com Update engine instructions for monorepo (flutter/flutter#161184) 2025-01-08 jonahwilliams@google.com [Impeller] re-enable Adreno 630 (flutter/flutter#161287) 2025-01-08 737941+loic-sharma@users.noreply.github.com [SwiftPM] Turn on by default (flutter/flutter#161275) 2025-01-08 matanlurey@users.noreply.github.com Make the encoding of a `YamlNode` to a `String` more explicit. (flutter/flutter#161270) 2025-01-08 jacksongardner@google.com Normalize the translation column of the color matrix. (flutter/flutter#161109) 2025-01-08 matanlurey@users.noreply.github.com Rename `native_driver` to `android_{driver_extensions|engine_test}` (flutter/flutter#161263) 2025-01-08 jonahwilliams@google.com [Impeller] reland: fix porterduff shader and handle optimized out texture binding in GLES backend. (flutter/flutter#161326) 2025-01-08 jessiewong401@gmail.com Updating AVD Dependency for Android 28 Emulator (flutter/flutter#160978) 2025-01-08 69054810+M97Chahboun@users.noreply.github.com Adds onHover and onLongPress to IconButton widget (flutter/flutter#160032) 2025-01-08 fluttergithubbot@gmail.com Marks Linux linux_desktop_impeller to be unflaky (flutter/flutter#161302) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[Impeller] porter duff workarounds for Adreno GPU. (#161273)" (flutter/flutter#161318) 2025-01-08 victorsanniay@gmail.com Revert "fixed keyboardDismissBehavior on scroll without a drag" (flutter/flutter#161277) 2025-01-08 jiahaog@users.noreply.github.com Revert "use uuid from package:uuid instead of from package:usage" (flutter/flutter#161292) ...
Adds `onHover` and `onLongPress` to `IconButton` widget fix flutter#159972 ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [x] I added new tests to check the change I am making, or this PR is [test-exempt]. - [ ] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [x] All existing and new tests are passing.
Roll Flutter from 4b23b81 to 864d4f5 (50 revisions) flutter/flutter@4b23b81...864d4f5 2025-01-10 magder@google.com Mark complex_layout_scroll_perf_macos__timeline_summary unflaky (flutter/flutter#160997) 2025-01-10 magder@google.com Mark hello_world_macos__compile unflaky (flutter/flutter#160998) 2025-01-10 magder@google.com Mark animated_complex_opacity_perf_macos__e2e_summary unflaky (flutter/flutter#160996) 2025-01-10 magder@google.com Mark integration_ui_test_test_macos unflaky (flutter/flutter#160999) 2025-01-10 magder@google.com Mark hot_mode_dev_cycle_macos_target__benchmark unflaky (flutter/flutter#161000) 2025-01-10 matanlurey@users.noreply.github.com Add a virtual-display (VD) platform view test, and refactor tests a bit. (flutter/flutter#161349) 2025-01-10 matanlurey@users.noreply.github.com Remove `CIRRUS_TASK_NAME` from what I can tell, is always omitted on `LUCI` (flutter/flutter#161391) 2025-01-10 matanlurey@users.noreply.github.com Replace the always omitted `CPU` environment variable with `numberOfProcessors`. (flutter/flutter#161392) 2025-01-10 matanlurey@users.noreply.github.com We no longer have a separate engine repo. (flutter/flutter#161400) 2025-01-10 goderbauer@google.com Update Style-guide-for-Flutter-repo.md (flutter/flutter#161344) 2025-01-09 chris@bracken.jp integration_test: Add gitignore of golden image (flutter/flutter#161404) 2025-01-09 goderbauer@google.com Fix link to engine docs in CONTRIBUTING.md (flutter/flutter#161401) 2025-01-09 engine-flutter-autoroll@skia.org Roll Packages from 3fc6b7a to 6554751 (11 revisions) (flutter/flutter#161379) 2025-01-09 32538273+ValentinVignal@users.noreply.github.com Add `mouseCursor` parameter to `ReorderableListView` (flutter/flutter#160246) 2025-01-09 matanlurey@users.noreply.github.com Remove Cirrus CI from Flutter goldens. (flutter/flutter#161396) 2025-01-09 lsaudon@gmail.com remove`useMaterial3: true,` in from the template (flutter/flutter#160525) 2025-01-09 matanlurey@users.noreply.github.com Remove `accept_android_sdk_licenses.sh`, which appears unused. (flutter/flutter#161388) 2025-01-09 a-siva@users.noreply.github.com Roll Dart to Version 3.7.0-312.0.dev (flutter/flutter#161394) 2025-01-09 fluttergithubbot@gmail.com Marks Linux analyzer_benchmark to be flaky (flutter/flutter#161307) 2025-01-09 jonahwilliams@google.com [Impeller] fix scaling of trampoline import of GLES textures into Vulkan. (flutter/flutter#161331) 2025-01-09 58529443+srujzs@users.noreply.github.com Support DDC library bundle format and remove support for DDC module format (flutter/flutter#161276) 2025-01-09 matanlurey@users.noreply.github.com Remove seemingly stale web Cirrus and "Web Installer" instructions (flutter/flutter#161389) 2025-01-09 matanlurey@users.noreply.github.com Proposal to deprecate `webGoldenComparator`. (flutter/flutter#161196) 2025-01-09 nate.w5687@gmail.com `ImplicitlyAnimatedWidgetState` code cleanup (flutter/flutter#160567) 2025-01-09 matanlurey@users.noreply.github.com Exclude `*texture*` as matching for `a: text input` (flutter/flutter#161354) 2025-01-09 jonahwilliams@google.com [Impeller] add opt in flag for SurfaceControl testing. (flutter/flutter#161353) 2025-01-09 a-siva@users.noreply.github.com Roll Dart to Version 3.7.0-307.0.dev (flutter/flutter#161278) 2025-01-09 goderbauer@google.com remove formatter from snippet tool (flutter/flutter#161347) 2025-01-09 robert.ancell@canonical.com Refactor keyboard manager tests (flutter/flutter#160637) 2025-01-09 jonahwilliams@google.com [flutter_tools] ignore viewpost ime and samsung spam messages. (flutter/flutter#161199) 2025-01-09 737941+loic-sharma@users.noreply.github.com Revert "[SwiftPM] Add separate feature flag for the app migration (#158897)" (flutter/flutter#161342) 2025-01-09 flar@google.com git ignore .ccls-cache (flutter/flutter#161340) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[SwiftPM] Turn on by default (#161275)" (flutter/flutter#161339) 2025-01-08 jmccandless@google.com Update engine instructions for monorepo (flutter/flutter#161184) 2025-01-08 jonahwilliams@google.com [Impeller] re-enable Adreno 630 (flutter/flutter#161287) 2025-01-08 737941+loic-sharma@users.noreply.github.com [SwiftPM] Turn on by default (flutter/flutter#161275) 2025-01-08 matanlurey@users.noreply.github.com Make the encoding of a `YamlNode` to a `String` more explicit. (flutter/flutter#161270) 2025-01-08 jacksongardner@google.com Normalize the translation column of the color matrix. (flutter/flutter#161109) 2025-01-08 matanlurey@users.noreply.github.com Rename `native_driver` to `android_{driver_extensions|engine_test}` (flutter/flutter#161263) 2025-01-08 jonahwilliams@google.com [Impeller] reland: fix porterduff shader and handle optimized out texture binding in GLES backend. (flutter/flutter#161326) 2025-01-08 jessiewong401@gmail.com Updating AVD Dependency for Android 28 Emulator (flutter/flutter#160978) 2025-01-08 69054810+M97Chahboun@users.noreply.github.com Adds onHover and onLongPress to IconButton widget (flutter/flutter#160032) 2025-01-08 fluttergithubbot@gmail.com Marks Linux linux_desktop_impeller to be unflaky (flutter/flutter#161302) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[Impeller] porter duff workarounds for Adreno GPU. (#161273)" (flutter/flutter#161318) 2025-01-08 victorsanniay@gmail.com Revert "fixed keyboardDismissBehavior on scroll without a drag" (flutter/flutter#161277) 2025-01-08 jiahaog@users.noreply.github.com Revert "use uuid from package:uuid instead of from package:usage" (flutter/flutter#161292) ...
Roll Flutter from 4b23b81 to 864d4f5 (50 revisions) flutter/flutter@4b23b81...864d4f5 2025-01-10 magder@google.com Mark complex_layout_scroll_perf_macos__timeline_summary unflaky (flutter/flutter#160997) 2025-01-10 magder@google.com Mark hello_world_macos__compile unflaky (flutter/flutter#160998) 2025-01-10 magder@google.com Mark animated_complex_opacity_perf_macos__e2e_summary unflaky (flutter/flutter#160996) 2025-01-10 magder@google.com Mark integration_ui_test_test_macos unflaky (flutter/flutter#160999) 2025-01-10 magder@google.com Mark hot_mode_dev_cycle_macos_target__benchmark unflaky (flutter/flutter#161000) 2025-01-10 matanlurey@users.noreply.github.com Add a virtual-display (VD) platform view test, and refactor tests a bit. (flutter/flutter#161349) 2025-01-10 matanlurey@users.noreply.github.com Remove `CIRRUS_TASK_NAME` from what I can tell, is always omitted on `LUCI` (flutter/flutter#161391) 2025-01-10 matanlurey@users.noreply.github.com Replace the always omitted `CPU` environment variable with `numberOfProcessors`. (flutter/flutter#161392) 2025-01-10 matanlurey@users.noreply.github.com We no longer have a separate engine repo. (flutter/flutter#161400) 2025-01-10 goderbauer@google.com Update Style-guide-for-Flutter-repo.md (flutter/flutter#161344) 2025-01-09 chris@bracken.jp integration_test: Add gitignore of golden image (flutter/flutter#161404) 2025-01-09 goderbauer@google.com Fix link to engine docs in CONTRIBUTING.md (flutter/flutter#161401) 2025-01-09 engine-flutter-autoroll@skia.org Roll Packages from 3fc6b7a to 6554751 (11 revisions) (flutter/flutter#161379) 2025-01-09 32538273+ValentinVignal@users.noreply.github.com Add `mouseCursor` parameter to `ReorderableListView` (flutter/flutter#160246) 2025-01-09 matanlurey@users.noreply.github.com Remove Cirrus CI from Flutter goldens. (flutter/flutter#161396) 2025-01-09 lsaudon@gmail.com remove`useMaterial3: true,` in from the template (flutter/flutter#160525) 2025-01-09 matanlurey@users.noreply.github.com Remove `accept_android_sdk_licenses.sh`, which appears unused. (flutter/flutter#161388) 2025-01-09 a-siva@users.noreply.github.com Roll Dart to Version 3.7.0-312.0.dev (flutter/flutter#161394) 2025-01-09 fluttergithubbot@gmail.com Marks Linux analyzer_benchmark to be flaky (flutter/flutter#161307) 2025-01-09 jonahwilliams@google.com [Impeller] fix scaling of trampoline import of GLES textures into Vulkan. (flutter/flutter#161331) 2025-01-09 58529443+srujzs@users.noreply.github.com Support DDC library bundle format and remove support for DDC module format (flutter/flutter#161276) 2025-01-09 matanlurey@users.noreply.github.com Remove seemingly stale web Cirrus and "Web Installer" instructions (flutter/flutter#161389) 2025-01-09 matanlurey@users.noreply.github.com Proposal to deprecate `webGoldenComparator`. (flutter/flutter#161196) 2025-01-09 nate.w5687@gmail.com `ImplicitlyAnimatedWidgetState` code cleanup (flutter/flutter#160567) 2025-01-09 matanlurey@users.noreply.github.com Exclude `*texture*` as matching for `a: text input` (flutter/flutter#161354) 2025-01-09 jonahwilliams@google.com [Impeller] add opt in flag for SurfaceControl testing. (flutter/flutter#161353) 2025-01-09 a-siva@users.noreply.github.com Roll Dart to Version 3.7.0-307.0.dev (flutter/flutter#161278) 2025-01-09 goderbauer@google.com remove formatter from snippet tool (flutter/flutter#161347) 2025-01-09 robert.ancell@canonical.com Refactor keyboard manager tests (flutter/flutter#160637) 2025-01-09 jonahwilliams@google.com [flutter_tools] ignore viewpost ime and samsung spam messages. (flutter/flutter#161199) 2025-01-09 737941+loic-sharma@users.noreply.github.com Revert "[SwiftPM] Add separate feature flag for the app migration (#158897)" (flutter/flutter#161342) 2025-01-09 flar@google.com git ignore .ccls-cache (flutter/flutter#161340) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[SwiftPM] Turn on by default (#161275)" (flutter/flutter#161339) 2025-01-08 jmccandless@google.com Update engine instructions for monorepo (flutter/flutter#161184) 2025-01-08 jonahwilliams@google.com [Impeller] re-enable Adreno 630 (flutter/flutter#161287) 2025-01-08 737941+loic-sharma@users.noreply.github.com [SwiftPM] Turn on by default (flutter/flutter#161275) 2025-01-08 matanlurey@users.noreply.github.com Make the encoding of a `YamlNode` to a `String` more explicit. (flutter/flutter#161270) 2025-01-08 jacksongardner@google.com Normalize the translation column of the color matrix. (flutter/flutter#161109) 2025-01-08 matanlurey@users.noreply.github.com Rename `native_driver` to `android_{driver_extensions|engine_test}` (flutter/flutter#161263) 2025-01-08 jonahwilliams@google.com [Impeller] reland: fix porterduff shader and handle optimized out texture binding in GLES backend. (flutter/flutter#161326) 2025-01-08 jessiewong401@gmail.com Updating AVD Dependency for Android 28 Emulator (flutter/flutter#160978) 2025-01-08 69054810+M97Chahboun@users.noreply.github.com Adds onHover and onLongPress to IconButton widget (flutter/flutter#160032) 2025-01-08 fluttergithubbot@gmail.com Marks Linux linux_desktop_impeller to be unflaky (flutter/flutter#161302) 2025-01-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[Impeller] porter duff workarounds for Adreno GPU. (#161273)" (flutter/flutter#161318) 2025-01-08 victorsanniay@gmail.com Revert "fixed keyboardDismissBehavior on scroll without a drag" (flutter/flutter#161277) 2025-01-08 jiahaog@users.noreply.github.com Revert "use uuid from package:uuid instead of from package:usage" (flutter/flutter#161292) ...
Adds
onHoverandonLongPresstoIconButtonwidgetfix #159972
Pre-launch Checklist
///).