Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
## [2.0.0-beta.7]
✨ New ✨
* You can now call `MacosTypography.of(context)` as a shorthand for retrieving the typography used in your `MacosTheme`.

🔄 Updated 🔄
* `MacosAlertDialog` now defines `primaryButton` and `secondaryButton` to be of type `PushButton`.
* `MacosAlertDialog` now requires that `primaryButton` and `secondaryButton` to have `controlSize`s of `ControlSize.large`.
* `MacosAlertDialog` docs now suggest that `appIcon` should be of size 64x64.

## [2.0.0-beta.6]
🔄 Updated 🔄
* `MacosCheckbox` appearance more closely matches its native counterpart.
Expand Down
8 changes: 3 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -703,20 +703,18 @@ Usage:
showMacosAlertDialog(
context: context,
builder: (_) => MacosAlertDialog(
appIcon: FlutterLogo(
size: 56,
),
appIcon: FlutterLogo(size: 64),
title: Text(
'Alert Dialog with Primary Action',
style: MacosTheme.of(context).typography.headline,
),
message: Text(
'This is an alert dialog with a primary action and no secondary action',
textAlign: TextAlign.center,
style: MacosTheme.of(context).typography.headline,
style: MacosTypography.of(context).headline,
),
primaryButton: PushButton(
buttonSize: ButtonSize.large,
controlSize: ControlSize.large,
child: Text('Primary'),
onPressed: () {},
),
Expand Down
96 changes: 36 additions & 60 deletions example/lib/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import 'package:example/pages/colors_page.dart';
import 'package:example/pages/dialogs_page.dart';
import 'package:example/pages/fields_page.dart';
import 'package:example/pages/indicators_page.dart';
import 'package:example/pages/resizable_pane_page.dart';
import 'package:example/pages/selectors_page.dart';
import 'package:example/pages/sliver_toolbar_page.dart';
import 'package:example/pages/tabview_page.dart';
Expand Down Expand Up @@ -55,33 +56,21 @@ class WidgetGallery extends StatefulWidget {
}

class _WidgetGalleryState extends State<WidgetGallery> {
double ratingValue = 0;
double sliderValue = 0;
bool value = false;

int pageIndex = 0;

late final searchFieldController = TextEditingController();

final List<Widget Function(bool)> pageBuilders = [
(bool isVisible) => CupertinoTabView(
builder: (_) => const ButtonsPage(),
),
(bool isVisible) => const IndicatorsPage(),
(bool isVisible) => const FieldsPage(),
(bool isVisible) => const ColorsPage(),
(bool isVisible) => const Center(
child: MacosIcon(
CupertinoIcons.add,
),
),
(bool isVisible) => const DialogsPage(),
(bool isVisible) => const ToolbarPage(),
(bool isVisible) => SliverToolbarPage(
isVisible: isVisible,
),
(bool isVisible) => const TabViewPage(),
(bool isVisible) => const SelectorsPage(),
(_) => CupertinoTabView(builder: (_) => const ButtonsPage()),
(_) => const IndicatorsPage(),
(_) => const FieldsPage(),
(_) => const ColorsPage(),
(_) => const DialogsPage(),
(_) => const ToolbarPage(),
(isVisible) => SliverToolbarPage(isVisible: isVisible),
(_) => const TabViewPage(),
(_) => const ResizablePanePage(),
(_) => const SelectorsPage(),
];

@override
Expand Down Expand Up @@ -152,7 +141,7 @@ class _WidgetGalleryState extends State<WidgetGallery> {
break;
case 'Dialogs and Sheets':
setState(() {
pageIndex = 5;
pageIndex = 4;
searchFieldController.clear();
});
break;
Expand All @@ -162,12 +151,18 @@ class _WidgetGalleryState extends State<WidgetGallery> {
searchFieldController.clear();
});
break;
case 'Selectors':
case 'ResizablePane':
setState(() {
pageIndex = 7;
searchFieldController.clear();
});
break;
case 'Selectors':
setState(() {
pageIndex = 8;
searchFieldController.clear();
});
break;
default:
searchFieldController.clear();
}
Expand All @@ -179,6 +174,7 @@ class _WidgetGalleryState extends State<WidgetGallery> {
SearchResultItem('Colors'),
SearchResultItem('Dialogs and Sheets'),
SearchResultItem('Toolbar'),
SearchResultItem('ResizablePane'),
SearchResultItem('Selectors'),
],
),
Expand All @@ -189,25 +185,22 @@ class _WidgetGalleryState extends State<WidgetGallery> {
onChanged: (i) => setState(() => pageIndex = i),
scrollController: scrollController,
itemSize: SidebarItemSize.large,
items: [
const SidebarItem(
// leading: MacosIcon(CupertinoIcons.square_on_circle),
items: const [
SidebarItem(
leading: MacosImageIcon(
AssetImage(
'assets/sf_symbols/button_programmable_2x.png',
),
AssetImage('assets/sf_symbols/button_programmable_2x.png'),
),
label: Text('Buttons'),
),
const SidebarItem(
SidebarItem(
leading: MacosImageIcon(
AssetImage(
'assets/sf_symbols/lines_measurement_horizontal_2x.png',
),
),
label: Text('Indicators'),
),
const SidebarItem(
SidebarItem(
leading: MacosImageIcon(
AssetImage(
'assets/sf_symbols/character_cursor_ibeam_2x.png',
Expand All @@ -216,36 +209,16 @@ class _WidgetGalleryState extends State<WidgetGallery> {
label: Text('Fields'),
),
SidebarItem(
leading: const MacosIcon(CupertinoIcons.folder),
label: const Text('Disclosure'),
trailing: Text(
'2',
style: TextStyle(
color: MacosTheme.brightnessOf(context) == Brightness.dark
? MacosColors.tertiaryLabelColor.darkColor
: MacosColors.tertiaryLabelColor,
),
leading: MacosImageIcon(
AssetImage('assets/sf_symbols/rectangle_3_group_2x.png'),
),
disclosureItems: [
const SidebarItem(
leading: MacosImageIcon(
AssetImage(
'assets/sf_symbols/rectangle_3_group_2x.png',
),
),
label: Text('Colors'),
),
const SidebarItem(
leading: MacosIcon(CupertinoIcons.infinite),
label: Text('Item 3'),
),
],
label: Text('Colors'),
),
const SidebarItem(
SidebarItem(
leading: MacosIcon(CupertinoIcons.square_on_square),
label: Text('Dialogs & Sheets'),
),
const SidebarItem(
SidebarItem(
leading: MacosImageIcon(
AssetImage(
'assets/sf_symbols/macwindow.on.rectangle_2x.png',
Expand All @@ -269,13 +242,16 @@ class _WidgetGalleryState extends State<WidgetGallery> {
leading: MacosIcon(CupertinoIcons.uiwindow_split_2x1),
label: Text('TabView'),
),
SidebarItem(
leading: MacosIcon(CupertinoIcons.rectangle_split_3x1),
label: Text('ResizablePane'),
),
],
),
const SidebarItem(
SidebarItem(
leading: MacosImageIcon(
AssetImage(
'assets/sf_symbols/filemenu_and_selection_2x.png',
),
'assets/sf_symbols/filemenu_and_selection_2x.png'),
),
label: Text('Selectors'),
),
Expand Down
Loading