You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Add a Sidebar widget to Cupertino for a native look on iPadOS #60762
Build iPadOS apps which look native and up-to-date regarding the new UI concept of sidebars on iPad apps
Proposal
iPadOS 14 introduces the UI concept a toggle sidebar which is prominently used in a variety of Apple‘s own apps and surely in lots of updated 3rd party apps to make them feel native. In SwiftUI, there is already an implementation for it:
SwiftUI will automatically take care of showing a button to slide in your bar from the side of the screen, and also collapse it with your primary view if you’re in a compact size class. If you’re presenting a list inside your sidebar, it’s a good idea to use the .listStyle() to give it the system-standard theme for sidebars, like this: .... (Source: Hacking with Swift - How to add a sidebar for iPadOS
It would be fantastic to have the sidebar as a „native“ flutter widget in Cupertino.
changed the title [-]Add a Sidebar widget to Cupertino for a native look on iPadSO[/-][+]Add a Sidebar widget to Cupertino for a native look on iPadOS[/+]on Jul 4, 2020
I managed to implement the sidebar over the last couple days! 🥳
Screen.Recording.2024-07-31.at.02.01.27.mov
Next I'm going to clean up the code a bit and submit a PR. It might require time and some advice from the Flutter team, as I want to make sure I respect the navigation behavior in a way similar to CupertinoTabScaffold.
I'm also thinking of separating the "collapsible group" into its own widget for reusability (it's quite common in iOS interfaces). Could I ask a Flutter team member for advice on how to best proceed?
Reacted by NAOE Kenichi, JJins, Till Johanndeiter, Victor and Birju Vachhani
Reacted by Aksana Buster
Reacted by Aksana Buster
Reacted by Huy, Loïc Sharma, Victor Sanni, Victor and Aksana Buster
I managed to implement the sidebar over the last couple days! 🥳
Next I'm going to clean up the code a bit and submit a PR. It might require time and some advice from the Flutter team, as I want to make sure I respect the navigation behavior in a way similar to CupertinoTabScaffold.
I'd be very interested in seeing how it looks! I'd recommend opening a draft PR sooner rather than later. Maybe after some clean up but probably before getting too feature rich. To be straightforward, we haven't done much specifically for iPadOS, so the recommendation may be to make this a package, but personally I'd love it if we had our own sidebar. For both iPad and MacOS.
I'm also thinking of separating the "collapsible group" into its own widget for reusability (it's quite common in iOS interfaces). Could I ask a Flutter team member for advice on how to best proceed?
Could you open an issue if one doesn't exist, with examples of a native collapsible group? That sounds like it maybe should be it's own PR.
I'd recommend opening a draft PR sooner rather than later. Maybe after some clean up but probably before getting too feature rich
The current implementation is quite minimal, so no worries about scope! Originally I made the sidebar as a part of a different project, I just need to decouple it from that and it'll be good to go for a PR
personally I'd love it if we had our own sidebar
Yeah, I decided to work on it because I was concerned about the lack of feature parity from Material, where it has its own NavigationDrawer (as well as the NavigationRail), while Cupertino is limited to a (quite outdated) bottom tab bar.
Could you open an issue if one doesn't exist, with examples of a native collapsible group? That sounds like it maybe should be it's own PR.
To be straightforward, we haven't done much specifically for iPadOS, so the recommendation may be to make this a package, but personally I'd love it if we had our own sidebar.
I've asked around in person, and there is less hesitation than I thought to add this widget. Fire away. 🚀
Activity
[-]Add a Sidebar widget to Cupertino for a native look on iPadSO[/-][+]Add a Sidebar widget to Cupertino for a native look on iPadOS[/+]kerberjg commentedon Jul 17, 2024
I'd be happy to volunteer my efforts to this! Is there interest in having this developed?
kerberjg commentedon Jul 31, 2024
I managed to implement the sidebar over the last couple days! 🥳
Screen.Recording.2024-07-31.at.02.01.27.mov
Next I'm going to clean up the code a bit and submit a PR. It might require time and some advice from the Flutter team, as I want to make sure I respect the navigation behavior in a way similar to
CupertinoTabScaffold.I'm also thinking of separating the "collapsible group" into its own widget for reusability (it's quite common in iOS interfaces). Could I ask a Flutter team member for advice on how to best proceed?
flutter-triage-bot commentedon Jul 31, 2024
This issue is missing a priority label. Please set a priority label when adding the
triaged-designlabel.MitchellGoodwin commentedon Aug 5, 2024
I'd be very interested in seeing how it looks! I'd recommend opening a draft PR sooner rather than later. Maybe after some clean up but probably before getting too feature rich. To be straightforward, we haven't done much specifically for iPadOS, so the recommendation may be to make this a package, but personally I'd love it if we had our own sidebar. For both iPad and MacOS.
Could you open an issue if one doesn't exist, with examples of a native collapsible group? That sounds like it maybe should be it's own PR.
kerberjg commentedon Aug 7, 2024
The current implementation is quite minimal, so no worries about scope! Originally I made the sidebar as a part of a different project, I just need to decouple it from that and it'll be good to go for a PR
Yeah, I decided to work on it because I was concerned about the lack of feature parity from Material, where it has its own
NavigationDrawer(as well as theNavigationRail), while Cupertino is limited to a (quite outdated) bottom tab bar.Absolutely
MitchellGoodwin commentedon Aug 7, 2024
I've asked around in person, and there is less hesitation than I thought to add this widget. Fire away. 🚀
BirjuVachhani commentedon Mar 21, 2025
Would love to have this widget! 🙌🏻