-
Notifications
You must be signed in to change notification settings - Fork 28.9k
Add option for flexible space on material SearchDelegate #128132
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
Conversation
…egate class introduce the option for add a flexibleSpace Widget to AppBar in a _SearchPage
…hDelegate and SearchPage classes
/// See also: | ||
/// | ||
/// * [AppBar.flexibleSpace], the intended use for the return value of this method. | ||
/// |
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.
nit: remove blank line.
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.
done ✅
@@ -211,6 +211,16 @@ abstract class SearchDelegate<T> { | |||
/// | |||
PreferredSizeWidget? buildBottom(BuildContext context) => null; | |||
|
|||
/// Widget to display in the [AppBar] flexible space. |
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.
Maybe just:
/// Widget to display in the [AppBar] flexible space. | |
/// Widget to display in the [AppBar.flexibleSpace]. |
and then remove the "see also" section?
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.
I did this way to keep the pattern of others documentation for build methods in the class.
You can see it in PreferredSizeWidget? buildBottom(BuildContext)
and List<Widget>? buildActions(BuildContext)
.
my changes sounds better ?
/// Widget to display a flexible space in the [AppBar].
///
/// Returns null by default, i.e. a flexible space widget is not included.
///
/// See also:
///
/// * [AppBar.flexibleSpace], the intended use for the return value of this method.
Widget? buildFlexibleSpace(BuildContext context) => null;
// @override | ||
// Widget? buildFlexibleSpace(BuildContext context) => null; |
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.
remove commented out code?
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.
done ✅
@@ -980,6 +1006,7 @@ class _TestSearchDelegate extends SearchDelegate<String> { | |||
this.suggestions = 'Suggestions', | |||
this.result = 'Result', | |||
this.actions = const <Widget>[], | |||
this.flexibleSpace = const Text('FlexibleSpace'), |
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.
make this null by default so this change doesn't invalidate all the other tests and make sure everything still works without this set? Then, add specific tests that set this to non-null and check that everything works.
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.
done ✅
set flexibleSpace parameter default value as null (_TestSearchDelegate material search test)
Hey @goderbauer, I think I did everything that was needed here. |
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
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
auto label is removed for flutter/flutter, pr: 128132, due to - The status or check suite Windows build_tests_3_4 has failed. Please fix the issues identified (or deflake) before re-applying this label.
|
flutter/flutter@bc49cd1...d55a7d8 2023-07-07 [email protected] Revert "fix a bug when android uses CupertinoPageTransitionsBuilder..." (flutter/flutter#130144) 2023-07-07 [email protected] Roll Packages from 771ec9b to 9bcf4bf (12 revisions) (flutter/flutter#130143) 2023-07-07 [email protected] Roll Flutter Engine from 650ff096488a to 8aa2e6516af1 (1 revision) (flutter/flutter#130116) 2023-07-07 [email protected] Roll Flutter Engine from 1fa222fae283 to 650ff096488a (3 revisions) (flutter/flutter#130114) 2023-07-07 [email protected] Roll Flutter Engine from 491f317978f4 to 1fa222fae283 (1 revision) (flutter/flutter#130110) 2023-07-07 [email protected] Roll Flutter Engine from 48bf7ac59254 to 491f317978f4 (2 revisions) (flutter/flutter#130107) 2023-07-06 [email protected] Roll Flutter Engine from 42df55a9e63e to 48bf7ac59254 (1 revision) (flutter/flutter#130106) 2023-07-06 [email protected] Super tiny code optimization: No need to redundantly check whether value has changed (flutter/flutter#130050) 2023-07-06 [email protected] Roll Flutter Engine from 06c936205d96 to 42df55a9e63e (3 revisions) (flutter/flutter#130100) 2023-07-06 [email protected] Manual roll Flutter Engine from bd2e42b203e1 to 06c936205d96 (27 revisions) (flutter/flutter#130097) 2023-07-06 [email protected] Marks Linux firebase_oriol33_abstract_method_smoke_test to be unflaky (flutter/flutter#128398) 2023-07-06 [email protected] Next attempt to make inspector weakly referencing the inspected objects. (flutter/flutter#129962) 2023-07-06 [email protected] [a11y] CupertinoSwitch On/Off labels (flutter/flutter#127776) 2023-07-06 [email protected] Add option for flexible space on material SearchDelegate (flutter/flutter#128132) 2023-07-06 [email protected] Roll Packages from 7042079 to 771ec9b (12 revisions) (flutter/flutter#130077) 2023-07-06 [email protected] [framework] Add textField OCR support for framework side (flutter/flutter#96637) 2023-07-06 [email protected] [flutter_tools] modify Skeleton template to use ListenableBuilder instead of AnimatedBuilder (flutter/flutter#128810) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
This pull request introduces the
buildFlexibleSpace
method to theSearchDelegate
class in the material library.It allows users to add a flexible space widget to the
AppBar
in a_SearchPage
, providing more customization options.This PR does not fix any specific issue as there are no open issues related to this feature.
Pre-launch Checklist
///
).If you need help, consider asking for advice on the #hackers-new channel on Discord.