-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Added CupertinoDatepicker monthYear mode (flutter#93508) #125603
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
MitchellGoodwin
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.
I agree with not adding a new property to the constructor or enum to dateOrder just to reorder the picker when in monthYear mode. It adds bloat to the API when the functionality can be handled by what currently exists. In exchange, could you add something explaining how it would work in the documentation for dateOrder? I think that's the most natural approach.
Besides that, this LGTM to me. Thank you for taking the time to do this.
|
Thank you Mitchell! I updated the dateOrder documentation, noting that there are multiple DatePickerDateOrder options that result in the same column order. |
MitchellGoodwin
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. Thank you for taking the time to do this!
justinmc
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 👍. Thanks for the solid PR and all of the tests!
The Google testing failure seems like it might be unrelated... Could you push a merge commit @lindsaypj?
|
@lindsaypj it looks like the google testing is stuck. Would you mind rebasing in order to restart it? That's normally the most reliable method. |
|
I'm not sure how, but I added commits from master. I created another branch from commit 4f8a45d. Should I just create another PR, or is there a way to easily remove all the additional commits I created in my failed rebase attempt? Edit: Actually I managed to revert back to before the rebase. If the google test still doesn't resolve, I will try the rebase again. I was shown the correct way to do it. |
b308c76 to
4f8a45d
Compare
Manual roll Flutter from 0b65723 to 43ac23b (30 revisions) Manual roll requested by [email protected] flutter/flutter@0b65723...43ac23b 2023-05-05 [email protected] targets/web.dart - fix typo (flutter/flutter#126114) 2023-05-05 [email protected] Roll Flutter Engine from 6b467df16e11 to 758cbadfac1f (2 revisions) (flutter/flutter#126175) 2023-05-05 [email protected] add tests for dominant bottom sheet in scaffold (flutter/flutter#124472) 2023-05-05 [email protected] Added CupertinoDatepicker monthYear mode (flutter#93508) (flutter/flutter#125603) 2023-05-05 [email protected] Add `Switch.trackOutlineWidth` property (flutter/flutter#125848) 2023-05-05 [email protected] Rename iosdeeplinksettings to iosuniversallinksettings (flutter/flutter#126173) 2023-05-05 [email protected] Roll Flutter Engine from f3efe11f4449 to 6b467df16e11 (3 revisions) (flutter/flutter#126174) 2023-05-05 [email protected] improvement : removed required kotlin dependency (flutter/flutter#125002) 2023-05-05 [email protected] Fix incorrect assert hint in flutter.groovy (flutter/flutter#125283) 2023-05-05 [email protected] Update .cirrus.yml (flutter/flutter#126166) 2023-05-05 [email protected] tool: replace top-level functions with enum properties (flutter/flutter#126167) 2023-05-05 [email protected] Use direct dart API from `dart:ui_web` rather than JS shim. (flutter/flutter#123443) 2023-05-05 [email protected] Add sample code for SliverAppBar (flutter/flutter#125785) 2023-05-05 [email protected] Roll Flutter Engine from cef0e9d1a94f to f3efe11f4449 (3 revisions) (flutter/flutter#126163) 2023-05-05 [email protected] Add a ReorderableListView example with cards + cleanup existing tests (flutter/flutter#126155) 2023-05-05 [email protected] Roll Packages from 6bd59cd to a0f8fd8 (4 revisions) (flutter/flutter#126161) 2023-05-05 [email protected] Bring back the failing build_test's (flutter/flutter#126014) 2023-05-05 [email protected] [web] Use plain platform views in benchmarks (flutter/flutter#126080) 2023-05-05 [email protected] Fix Material 3 tab indicator weight and position (flutter/flutter#125883) 2023-05-05 [email protected] Roll Flutter Engine from b0f53e7751ad to cef0e9d1a94f (1 revision) (flutter/flutter#126150) 2023-05-05 [email protected] Roll Flutter Engine from 6f26066144fb to b0f53e7751ad (2 revisions) (flutter/flutter#126148) 2023-05-05 [email protected] Roll Flutter Engine from 764991e046c6 to 6f26066144fb (1 revision) (flutter/flutter#126141) 2023-05-05 [email protected] Roll Flutter Engine from e7cd29153aa9 to 764991e046c6 (1 revision) (flutter/flutter#126137) 2023-05-05 [email protected] Roll Flutter Engine from a885ed472eea to e7cd29153aa9 (1 revision) (flutter/flutter#126135) 2023-05-05 [email protected] Roll Flutter Engine from c97a0deccbc1 to a885ed472eea (1 revision) (flutter/flutter#126129) 2023-05-05 [email protected] [NavigationDrawer] adds padding property in NavigationDrawer Widget (flutter/flutter#123961) 2023-05-05 [email protected] Roll Flutter Engine from 269ce2deebeb to c97a0deccbc1 (1 revision) (flutter/flutter#126124) 2023-05-05 [email protected] Roll Flutter Engine from 4d5070672859 to 269ce2deebeb (16 revisions) (flutter/flutter#126115) 2023-05-05 [email protected] Minor fixes found while working on blankcanvas (flutter/flutter#125751) 2023-05-05 [email protected] tool-web: use ProcessUtil.run to invoke child processes (flutter/flutter#126109) 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 ...
) Manual roll Flutter from 0b65723 to 43ac23b (30 revisions) Manual roll requested by [email protected] flutter/flutter@0b65723...43ac23b 2023-05-05 [email protected] targets/web.dart - fix typo (flutter/flutter#126114) 2023-05-05 [email protected] Roll Flutter Engine from 6b467df16e11 to 758cbadfac1f (2 revisions) (flutter/flutter#126175) 2023-05-05 [email protected] add tests for dominant bottom sheet in scaffold (flutter/flutter#124472) 2023-05-05 [email protected] Added CupertinoDatepicker monthYear mode (flutter#93508) (flutter/flutter#125603) 2023-05-05 [email protected] Add `Switch.trackOutlineWidth` property (flutter/flutter#125848) 2023-05-05 [email protected] Rename iosdeeplinksettings to iosuniversallinksettings (flutter/flutter#126173) 2023-05-05 [email protected] Roll Flutter Engine from f3efe11f4449 to 6b467df16e11 (3 revisions) (flutter/flutter#126174) 2023-05-05 [email protected] improvement : removed required kotlin dependency (flutter/flutter#125002) 2023-05-05 [email protected] Fix incorrect assert hint in flutter.groovy (flutter/flutter#125283) 2023-05-05 [email protected] Update .cirrus.yml (flutter/flutter#126166) 2023-05-05 [email protected] tool: replace top-level functions with enum properties (flutter/flutter#126167) 2023-05-05 [email protected] Use direct dart API from `dart:ui_web` rather than JS shim. (flutter/flutter#123443) 2023-05-05 [email protected] Add sample code for SliverAppBar (flutter/flutter#125785) 2023-05-05 [email protected] Roll Flutter Engine from cef0e9d1a94f to f3efe11f4449 (3 revisions) (flutter/flutter#126163) 2023-05-05 [email protected] Add a ReorderableListView example with cards + cleanup existing tests (flutter/flutter#126155) 2023-05-05 [email protected] Roll Packages from 6bd59cd to a0f8fd8 (4 revisions) (flutter/flutter#126161) 2023-05-05 [email protected] Bring back the failing build_test's (flutter/flutter#126014) 2023-05-05 [email protected] [web] Use plain platform views in benchmarks (flutter/flutter#126080) 2023-05-05 [email protected] Fix Material 3 tab indicator weight and position (flutter/flutter#125883) 2023-05-05 [email protected] Roll Flutter Engine from b0f53e7751ad to cef0e9d1a94f (1 revision) (flutter/flutter#126150) 2023-05-05 [email protected] Roll Flutter Engine from 6f26066144fb to b0f53e7751ad (2 revisions) (flutter/flutter#126148) 2023-05-05 [email protected] Roll Flutter Engine from 764991e046c6 to 6f26066144fb (1 revision) (flutter/flutter#126141) 2023-05-05 [email protected] Roll Flutter Engine from e7cd29153aa9 to 764991e046c6 (1 revision) (flutter/flutter#126137) 2023-05-05 [email protected] Roll Flutter Engine from a885ed472eea to e7cd29153aa9 (1 revision) (flutter/flutter#126135) 2023-05-05 [email protected] Roll Flutter Engine from c97a0deccbc1 to a885ed472eea (1 revision) (flutter/flutter#126129) 2023-05-05 [email protected] [NavigationDrawer] adds padding property in NavigationDrawer Widget (flutter/flutter#123961) 2023-05-05 [email protected] Roll Flutter Engine from 269ce2deebeb to c97a0deccbc1 (1 revision) (flutter/flutter#126124) 2023-05-05 [email protected] Roll Flutter Engine from 4d5070672859 to 269ce2deebeb (16 revisions) (flutter/flutter#126115) 2023-05-05 [email protected] Minor fixes found while working on blankcanvas (flutter/flutter#125751) 2023-05-05 [email protected] tool-web: use ProcessUtil.run to invoke child processes (flutter/flutter#126109) 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 PR adds a month and year mode to the CupertinoDatePicker. The monthYear mode is the date mode without the day of the month.

This feature was added at the request of:
[Proposal] CupertinoDatePicker with month and year. #93508
One thing that I was unsure of was the use of the DatePickerDateOrder to determine the monthYear order. It could be considered a workaround since the DatePickerDateOrder is intended to order day, month, and year. This means that a developer could use the DatePickerDateOrder.dmy (day, month, year) or DatePickerDateOrder.mdy (month, day, year) to get the same result.
At first I intended to add a DatePickerMonthYearOrder enum to the localizations, in addition to a new parameter for the CupertinoDatePicker for monthYearOrder, but I ended up reverting these changes (1c61f10) because I had not considered the effects of adding values to the localizations.
I decided it may be better to not add an additional parameter (monthYearOrder) that would go mostly unused. I am very open to feedback or ideas on this matter.
Pre-launch Checklist
///).