Skip to content

Commit c5006b4

Browse files
committed
Updates for Fluter 3.13.0 stable
1 parent 717bd8e commit c5006b4

File tree

10 files changed

+40
-41
lines changed

10 files changed

+40
-41
lines changed

.github/workflows/deploy.yml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -68,14 +68,14 @@ jobs:
6868
- name: "EXAMPLE-1 START BUILD - Flutter clean before build"
6969
run: flutter clean && cd example && flutter clean
7070
- name: "EXAMPLE-1 WEB release build"
71-
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/basictheme-v7-2/" --release -t lib/example1_basic_theme_usage/main.dart
71+
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/basictheme-latest/" --release -t lib/example1_basic_theme_usage/main.dart
7272
- name: "EXAMPLE-1 DEPLOY to GitHub Pages repository, published on commit."
7373
uses: dmnemec/[email protected]
7474
env:
7575
API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
7676
with:
7777
source_file: 'example/build/web/.'
78-
destination_folder: 'flexcolorscheme/basictheme-v7-2'
78+
destination_folder: 'flexcolorscheme/basictheme-latest'
7979
destination_repo: 'rydmike/rydmike.github.io'
8080
user_email: '[email protected]'
8181
user_name: 'rydmike'
@@ -84,14 +84,14 @@ jobs:
8484
- name: "EXAMPLE-2 START BUILD - Flutter clean before build"
8585
run: flutter clean && cd example && flutter clean
8686
- name: "EXAMPLE-2 WEB release build"
87-
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/customtheme-v7-2/" --release -t lib/example2_custom_theme/main.dart
87+
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/customtheme-latest/" --release -t lib/example2_custom_theme/main.dart
8888
- name: "EXAMPLE-2 DEPLOY to GitHub Pages repository, published on commit."
8989
uses: dmnemec/[email protected]
9090
env:
9191
API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
9292
with:
9393
source_file: 'example/build/web/.'
94-
destination_folder: 'flexcolorscheme/customtheme-v7-2'
94+
destination_folder: 'flexcolorscheme/customtheme-latest'
9595
destination_repo: 'rydmike/rydmike.github.io'
9696
user_email: '[email protected]'
9797
user_name: 'rydmike'
@@ -100,14 +100,14 @@ jobs:
100100
- name: "EXAMPLE-3 START BUILD - Flutter clean before build"
101101
run: flutter clean && cd example && flutter clean
102102
- name: "EXAMPLE-3 WEB release build"
103-
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/fourthemes-v7-2/" --release -t lib/example3_four_themes/main.dart
103+
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/fourthemes-latest/" --release -t lib/example3_four_themes/main.dart
104104
- name: "EXAMPLE-3 DEPLOY to GitHub Pages repository, published on commit."
105105
uses: dmnemec/[email protected]
106106
env:
107107
API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
108108
with:
109109
source_file: 'example/build/web/.'
110-
destination_folder: 'flexcolorscheme/fourthemes-v7-2'
110+
destination_folder: 'flexcolorscheme/fourthemes-latest'
111111
destination_repo: 'rydmike/rydmike.github.io'
112112
user_email: '[email protected]'
113113
user_name: 'rydmike'
@@ -116,14 +116,14 @@ jobs:
116116
- name: "EXAMPLE-4 START BUILD - Flutter clean before build"
117117
run: flutter clean && cd example && flutter clean
118118
- name: "EXAMPLE-4 WEB release build"
119-
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/allthemes-v7-2/" --release -t lib/example4_all_themes/main.dart
119+
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/allthemes-latest/" --release -t lib/example4_all_themes/main.dart
120120
- name: "EXAMPLE-4 DEPLOY to GitHub Pages repository, published on commit."
121121
uses: dmnemec/[email protected]
122122
env:
123123
API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
124124
with:
125125
source_file: 'example/build/web/.'
126-
destination_folder: 'flexcolorscheme/allthemes-v7-2'
126+
destination_folder: 'flexcolorscheme/allthemes-latest'
127127
destination_repo: 'rydmike/rydmike.github.io'
128128
user_email: '[email protected]'
129129
user_name: 'rydmike'
@@ -132,14 +132,14 @@ jobs:
132132
- name: "EXAMPLE-5 START BUILD - Flutter clean before build"
133133
run: flutter clean && cd example && flutter clean
134134
- name: "EXAMPLE-5 WEB release build"
135-
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/themesplayground-v7-2/" --release -t lib/example5_themes_playground/main.dart
135+
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/themesplayground-latest/" --release -t lib/example5_themes_playground/main.dart
136136
- name: "EXAMPLE-5 DEPLOY to GitHub Pages repository, published on commit."
137137
uses: dmnemec/[email protected]
138138
env:
139139
API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
140140
with:
141141
source_file: 'example/build/web/.'
142-
destination_folder: 'flexcolorscheme/themesplayground-v7-2'
142+
destination_folder: 'flexcolorscheme/themesplayground-latest'
143143
destination_repo: 'rydmike/rydmike.github.io'
144144
user_email: '[email protected]'
145145
user_name: 'rydmike'

.github/workflows/deploy_playground.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,14 +60,14 @@ jobs:
6060
- name: "EXAMPLE-5 START BUILD - Flutter clean before build"
6161
run: flutter clean && cd example && flutter clean
6262
- name: "EXAMPLE-5 WEB release build"
63-
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/themesplayground-v7-2/" --release -t lib/example5_themes_playground/main.dart
63+
run: cd example && flutter build web --web-renderer canvaskit --base-href "/flexcolorscheme/themesplayground-latest/" --release -t lib/example5_themes_playground/main.dart
6464
- name: "EXAMPLE-5 DEPLOY to GitHub Pages repository, published on commit."
6565
uses: dmnemec/[email protected]
6666
env:
6767
API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
6868
with:
6969
source_file: 'example/build/web/.'
70-
destination_folder: 'flexcolorscheme/themesplayground-v7-2'
70+
destination_folder: 'flexcolorscheme/themesplayground-latest'
7171
destination_repo: 'rydmike/rydmike.github.io'
7272
user_email: '[email protected]'
7373
user_name: 'rydmike'

CHANGELOG.md

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,11 @@ All changes to the **FlexColorScheme** (FCS) package are documented here.
44

55
## 7.3.0
66

7-
**August 13, 2023**
7+
**August 16, 2023**
88

9-
* Requires minimum Flutter **Channel beta, 3.13.0-0.3.pre**.
10-
* This is a WIP branch to prepare for new theming features and changes in the next Flutter stable release. It is assumed to arrive within a month using version number Flutter stable 3.13.0.
9+
This release uses new features in Material-3 theming that are only available in Flutter 3.13 or later. It thus **requires** minimum **Flutter 3.13.0**.
10+
11+
In the next Flutter stable release after 3.13, Flutter will change the `ThemeData.useMaterial3` default from `false` to true. In other words, applications using FCS will get the Material-3 colors, text styles, and other visuals, by default. The `FlexColorScheme` API will then be following along with this breaking change. In this release the `FlexColorScheme` API `useMaterial3` still defaults to `false`. The **Themes Playground** app has for quite some time already defaulted to setting the value to `true`. Which is also already the case in Flutter when you create a new application with `flutter create`.
1112

1213
**PACKAGE**
1314

@@ -29,7 +30,7 @@ All changes to the **FlexColorScheme** (FCS) package are documented here.
2930
* The `TextStyle` additions above, to mentioned `FlexSubThemes`, do not yet bring any new features usable via `FlexColorScheme` theming APIs. They are a preparation for adding more component `TextStyles` to `FlexSubThemesData`. This in turn, will enable more direct `TextStyle` theming via `FlexColorScheme` API without using `copyWith` to override produced `ThemeData`.
3031

3132

32-
* As planned in previous versions, made the `FlexSubThemesData.useInputDecoratorThemeInDialogs` apply also to `DatePickerDialog` and not only to `TimePickerDialog`. This feature is not optimally supported by the framework. The current implementation has severe issues and limitations. See more info in [PR #128950 comment](https://github.com/flutter/flutter/pull/128950#issuecomment-1657177393). Additional info about the differences in how `InputDecorationTheme` behaves in different component themes, read the proposal **"Make InputDecorationTheme usage in components consistent"** in [issue #131666](https://github.com/flutter/flutter/issues/131666).
33+
* As planned in previous versions, made the `FlexSubThemesData.useInputDecoratorThemeInDialogs` apply also to `DatePickerDialog` and not only to `TimePickerDialog`. This feature is not optimally supported by the framework. The current implementation has severe limitations. See more info in [PR #128950 comment](https://github.com/flutter/flutter/pull/128950#issuecomment-1657177393). For more information about the differences in how `InputDecorationTheme` behaves in different component themes, read the proposal **"Make InputDecorationTheme usage in components consistent"** in [issue #131666](https://github.com/flutter/flutter/issues/131666).
3334

3435
**CHANGE**
3536

@@ -39,7 +40,7 @@ All changes to the **FlexColorScheme** (FCS) package are documented here.
3940

4041
**FIX**
4142

42-
* Fixed the `FlexSubThemes.checkboxTheme` that broke due to an unexpected breaking change in Flutter caused by PR [#125643](https://github.com/flutter/flutter/pull/125643). The breaking change is discussed further in [issue #130295](https://github.com/flutter/flutter/issues/130295). The fix to the checkbox theme incorporates the new behavior to keep its custom styling working as before and expected.
43+
* Fixed the `FlexSubThemes.checkboxTheme` that broke due to an unexpected breaking change in Flutter 3.13 caused by PR [#125643](https://github.com/flutter/flutter/pull/125643). The breaking change is discussed further in [issue #130295](https://github.com/flutter/flutter/issues/130295). The fix to the checkbox theme incorporates the new behavior to keep its custom styling working as before and expected.
4344

4445
* Fixed `useInputDecoratorThemeInDialogs` not working for some properties in the `InputDecorator`, when the value was null or `false`, where some properties in the `TextField`s in the `TimePickerDialog` did not revert back to default styles. Now they do, but via hard defined values to mimic the default M3 style, as that is the only way to get back to it when a very custom `themeData.inputDecoratorTheme` is being used.
4546

@@ -63,11 +64,7 @@ All changes to the **FlexColorScheme** (FCS) package are documented here.
6364

6465
* Fixed the old default color info for the toggles Switch, Checkbox and Radio, that are shown when FlexColorScheme is disabled as default values in Material 2 dark mode. They have been updated in Flutter SDK to `ColorScheme.secondary` color and are no longer not the horrid dark mode teal color. This default color info, shown when FlexColorScheme is disabled in the **Themes Playground**, had not been updated for the dark M2 mode Switch, Checkbox and Radio colors.
6566

66-
### TODO
67-
68-
* The `TextStyle`'s added to `FlexSubThemes` also needs to be added to `FlexSubThemesData` to pass any configured text styles to respective sub-themes. They will not be added to **Themes Playground** in current generation. They are intended to with API make it easier to use custom `TextStyles` on these components with using a deep `copyWith` on produced `ThemeData` by **FlexColorScheme**. This will probably be postponed to version 7.4.0, depends on when the next Flutter stable is released.
6967

70-
* Add some basic theming for `ListTileThemeData` and `ProgressIndicatorThemeData`. This will probably be postponed to version 7.4.0, depends on when the next Flutter stable is released.
7168

7269

7370
## 7.2.0

README.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Use **FlexColorScheme** to make beautiful Flutter Material Design themes. Apply
1515
</tr>
1616
</table>
1717

18-
When you theme a Flutter application correctly, all built-in widgets use the colors of the `ColorScheme` in your theme. At least in theory, and it is almost so if you defined your `ThemeData` by using the `ThemeData.from` factory, but it misses a few details. This applies in particular when you use Material-2 design in Flutter, which is the default. When you opt in on using Material-3, the results are much more consistent by default.
18+
When you theme a Flutter application correctly, all built-in widgets use the colors of the `ColorScheme` in your theme. At least in theory, and it is almost so if you defined your `ThemeData` by using the `ThemeData.from` factory, but it misses a few details. This applies in particular when you use Material-2 design in Flutter, which is the default. When you opt in on using Material-3, the color results and styles are much more consistent by default.
1919

2020
**FlexColorScheme** ensures that all Flutter SDK UI components get themed completely by its color scheme and custom colors you provide. It applies effective `ColorScheme` colors to all color properties in `ThemeData`. This ensures that all the direct colors properties in `ThemeData` match your `ColorScheme`. There are no surprising colors in `ThemeData` legacy colors that do not match your `ColorScheme`. This applies regardless of if you use Material-2 or Material-3 mode.
2121

@@ -133,23 +133,23 @@ Complete generated package [**API documentation**](https://pub.dev/documentation
133133

134134
## Themes Playground
135135

136-
To make it even easier to configure and setup **FlexColorScheme**, it comes with a WEB companion app called the [**Themes Playground**](https://rydmike.com/flexcolorscheme/themesplayground-v7-2).
136+
To make it even easier to configure and setup **FlexColorScheme**, it comes with a WEB companion app called the [**Themes Playground**](https://rydmike.com/flexcolorscheme/themesplayground-latest).
137137

138138
The **Themes Playground** is a useful tool to find **FlexColorScheme** themes and settings you like. You can use it to discover what you can do with FlexColorScheme. The playground persists all its settings. You can reset settings back to their default values, so you can always start over if you get lost in all the configuration possibilities.
139139

140140
The most useful and popular feature of the **Playground** is that it can generate **FlexColorScheme API** setup code needed to produce the shown active theme configuration. The themed style of the app itself and the same styled demo apps shown in the included theme simulator, is what you get when you copy the code of the current theme configuration to your app, and use it with the **FlexColorScheme** package.
141141

142-
[<img src="https://raw.githubusercontent.com/rydmike/flex_color_scheme_docs/master/docs/images/themes_playground_7_2.png" alt="Themes Playround Image"/>](https://rydmike.com/flexcolorscheme/themesplayground-v7-2)
142+
[<img src="https://raw.githubusercontent.com/rydmike/flex_color_scheme_docs/master/docs/images/themes_playground_7_2.png" alt="Themes Playround Image"/>](https://rydmike.com/flexcolorscheme/themesplayground-latest)
143143

144-
*In [Themes Playground](https://rydmike.com/flexcolorscheme/themesplayground-v7-2) you can visually configure your theme and copy its setup code.*
144+
*In [Themes Playground](https://rydmike.com/flexcolorscheme/themesplayground-latest) you can visually configure your theme and copy its setup code.*
145145

146146
If you use the code view panel side-by-side, as you change settings, the Playground modifies the code as you change settings. This is a fun way to get familiar with the API.
147147

148-
[<img src="https://raw.githubusercontent.com/rydmike/flex_color_scheme_docs/master/docs/images/themes_playground_7_2_dark_code.png" alt="Themes Playround Image"/>](https://rydmike.com/flexcolorscheme/themesplayground-v7-2)
148+
[<img src="https://raw.githubusercontent.com/rydmike/flex_color_scheme_docs/master/docs/images/themes_playground_7_2_dark_code.png" alt="Themes Playround Image"/>](https://rydmike.com/flexcolorscheme/themesplayground-latest)
149149

150-
*Viewing API configuration and its updates as you change setting in [Themes Playground](https://rydmike.com/flexcolorscheme/themesplayground-v7-2).*
150+
*Viewing API configuration and its updates as you change setting in [Themes Playground](https://rydmike.com/flexcolorscheme/themesplayground-latest).*
151151

152-
The latest **Themes Playground v7.2** build can be used as a [web app here](https://rydmike.com/flexcolorscheme/themesplayground-v7-2). For guidance on how to use the Themes Playground, please read the [Themes Playground chapter](https://docs.flexcolorscheme.com/playground) available in the documentation site.
152+
The latest **Themes Playground** build can be used as a [web app here](https://rydmike.com/flexcolorscheme/themesplayground-latest). For guidance on how to use the Themes Playground, please read the [Themes Playground chapter](https://docs.flexcolorscheme.com/playground) available in the documentation site.
153153

154154
Beware, fiddling with all the different themes and settings can be quite fun and addictive, happy theming! 💙
155155

@@ -162,9 +162,11 @@ The Playground app is also the last step in the package tutorial series. The [tu
162162

163163
### Older versions of the Themes Playground
164164

165-
If you are using **FlexColorScheme version 7.1**, you can go here to use [**Themes Playground V7.1**](https://rydmike.com/flexcolorscheme/themesplayground-v7) and generate API setup code for version 7.1. Prefer updating to version 7.2.
165+
If you are using **FlexColorScheme version 7.2**, you can go here to use [**Themes Playground V7.2**](https://rydmike.com/flexcolorscheme/themesplayground-v7-2) and generate API setup code for version 7.2. Prefer updating to version 7.3 if you can use Flutter 3.13.
166166

167-
If you are using **FlexColorScheme version 7.0**, you can go here to use [**Themes Playground V7.0**](https://rydmike.com/flexcolorscheme/themesplayground-v7) and generate API setup code for version 7.0. Prefer updating to version 7.2.
167+
If you are using **FlexColorScheme version 7.1**, you can go here to use [**Themes Playground V7.1**](https://rydmike.com/flexcolorscheme/themesplayground-v7-1) and generate API setup code for version 7.1. Prefer updating to version 7.3 if you can use Flutter 3.13.
168+
169+
If you are using **FlexColorScheme version 7.0**, you can go here to use [**Themes Playground V7.0**](https://rydmike.com/flexcolorscheme/themesplayground-v7) and generate API setup code for version 7.0. Prefer updating to version 7.3 if you can use Flutter 3.13.
168170

169171
If you are using **FlexColorScheme version 6**, you can go here to use [**Themes Playground V6**](https://rydmike.com/flexcolorscheme/themesplayground-v6) and generate API setup code for version 6. It supports FlexColorScheme version 6.1, you can also use this version of the Playground with FlexColorScheme version 6.0. If you do, you may have to delete some generated API config setup code for properties only available in version 6.1 that are not supported by FlexColorScheme 6.0. You will see those as unsupported API errors when you copy/paste the Themes Playground code to Flutter if you use 6.0 and not 6.1. Delete such rows, or you can of course upgrade the package to 6.1 to get those features, or even better move up to the latest version.
170172

example/lib/example1_basic_theme_usage/main.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ class _DemoAppState extends State<DemoApp> {
2727
// Used to select if we use the dark or light theme, start with system mode.
2828
ThemeMode themeMode = ThemeMode.system;
2929
// Opt in/out on Material 3
30-
bool useMaterial3 = false;
30+
bool useMaterial3 = true;
3131

3232
@override
3333
Widget build(BuildContext context) {

example/lib/shared/const/app.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ class App {
4747
static const String packageVersion =
4848
'$versionMajor.$versionMinor.$versionPatch';
4949
static const String packageVersionMinor = '$versionMajor.$versionMinor.x';
50-
static const String flutterVersion = 'stable 3.10.6 (canvaskit)';
50+
static const String flutterVersion = 'stable 3.13.0 (canvaskit)';
5151
static const String copyright = '© 2020 - 2023';
5252
static const String author = 'Mike Rydstrom';
5353
static const String license = 'BSD 3-Clause License';

0 commit comments

Comments
 (0)