[pve-devel] [PATCH proxmox-login-manager 2/3] migrate from FlatButton to TextButton

Dominik Csapak d.csapak at proxmox.com
Thu Sep 8 11:55:39 CEST 2022


since flutter 3 removed FlatButton. For this we have to do the colors a
little different, so i moved the color/disabledColor into the
textButtonTheme, which does not modify anything else here.

Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
 lib/proxmox_login_form.dart | 33 +++++++++++++++++++--------------
 lib/proxmox_tfa_form.dart   | 11 +++++++----
 2 files changed, 26 insertions(+), 18 deletions(-)

diff --git a/lib/proxmox_login_form.dart b/lib/proxmox_login_form.dart
index bb00b5c..5e9198f 100644
--- a/lib/proxmox_login_form.dart
+++ b/lib/proxmox_login_form.dart
@@ -212,9 +212,18 @@ class _ProxmoxLoginPageState extends State<ProxmoxLoginPage> {
     return Theme(
       //data: ThemeData.dark().copyWith(accentColor: Color(0xFFE47225)),
       data: ThemeData.dark().copyWith(
-          colorScheme: ColorScheme.dark().copyWith(
-              secondary: ProxmoxColors.orange,
-              onSecondary: ProxmoxColors.supportGrey)),
+        textButtonTheme: TextButtonThemeData(
+          style: TextButton.styleFrom(
+            foregroundColor: Colors.white,
+            backgroundColor: ProxmoxColors.orange,
+            disabledBackgroundColor: Colors.grey,
+          ),
+        ),
+        colorScheme: ColorScheme.dark().copyWith(
+            secondary: ProxmoxColors.orange,
+            onSecondary: ProxmoxColors.supportGrey
+        ),
+      ),
       child: Scaffold(
         backgroundColor: ProxmoxColors.supportBlue,
         extendBodyBehindAppBar: true,
@@ -324,7 +333,7 @@ class _ProxmoxLoginPageState extends State<ProxmoxLoginPage> {
                                       child: Container(
                                         width:
                                             MediaQuery.of(context).size.width,
-                                        child: FlatButton(
+                                        child: TextButton(
                                           onPressed: _submittButtonEnabled
                                               ? () {
                                                   final isValid = _formKey
@@ -339,8 +348,6 @@ class _ProxmoxLoginPageState extends State<ProxmoxLoginPage> {
                                                   }
                                                 }
                                               : null,
-                                          color: ProxmoxColors.orange,
-                                          disabledColor: Colors.grey,
                                           child: Text('Continue'),
                                         ),
                                       ),
@@ -353,7 +360,7 @@ class _ProxmoxLoginPageState extends State<ProxmoxLoginPage> {
                                       child: Container(
                                         width:
                                             MediaQuery.of(context).size.width,
-                                        child: FlatButton(
+                                        child: TextButton(
                                           onPressed: _submittButtonEnabled
                                               ? () {
                                                   final isValid = _formKey
@@ -371,9 +378,7 @@ class _ProxmoxLoginPageState extends State<ProxmoxLoginPage> {
                                                   }
                                                 }
                                               : null,
-                                          color: ProxmoxColors.orange,
                                           child: Text('Continue'),
-                                          disabledColor: Colors.grey,
                                         ),
                                       ),
                                     ),
@@ -459,7 +464,7 @@ class _ProxmoxLoginPageState extends State<ProxmoxLoginPage> {
             content: Text(
                 'Proxmox VE version not supported, please update your instance to use this app.'),
             actions: [
-              FlatButton(
+              TextButton(
                 onPressed: () => Navigator.of(context).pop(),
                 child: Text('Close'),
               ),
@@ -532,7 +537,7 @@ class _ProxmoxLoginPageState extends State<ProxmoxLoginPage> {
             title: Text('Connection error'),
             content: Text('Could not establish connection.'),
             actions: [
-              FlatButton(
+              TextButton(
                 onPressed: () => Navigator.of(context).pop(),
                 child: Text('Close'),
               ),
@@ -616,7 +621,7 @@ class ProxmoxApiErrorDialog extends StatelessWidget {
         child: Text(exception.message),
       ),
       actions: [
-        FlatButton(
+        TextButton(
           onPressed: () => Navigator.of(context).pop(),
           child: Text('Close'),
         ),
@@ -648,11 +653,11 @@ class ProxmoxCertificateErrorDialog extends StatelessWidget {
         ),
       ),
       actions: [
-        FlatButton(
+        TextButton(
           onPressed: () => Navigator.of(context).pop(),
           child: Text('Close'),
         ),
-        FlatButton(
+        TextButton(
           onPressed: () => Navigator.of(context).pushReplacement(
               MaterialPageRoute(
                   builder: (context) => ProxmoxGeneralSettingsForm())),
diff --git a/lib/proxmox_tfa_form.dart b/lib/proxmox_tfa_form.dart
index 3743455..945c75c 100644
--- a/lib/proxmox_tfa_form.dart
+++ b/lib/proxmox_tfa_form.dart
@@ -81,11 +81,14 @@ class _ProxmoxTfaFormState extends State<ProxmoxTfaForm> {
                           alignment: Alignment.bottomCenter,
                           child: Container(
                             width: MediaQuery.of(context).size.width,
-                            child: FlatButton(
+                            child: TextButton(
+                              style: TextButton.styleFrom(
+                                foregroundColor: Colors.white,
+                                backgroundColor: Color(0xFFE47225),
+                                disabledBackgroundColor: Colors.grey,
+                              ),
                               onPressed: () => _submitTfaCode(),
-                              color: Color(0xFFE47225),
                               child: Text('Continue'),
-                              disabledColor: Colors.grey,
                             ),
                           ),
                         ),
@@ -129,7 +132,7 @@ class _ProxmoxTfaFormState extends State<ProxmoxTfaForm> {
           title: Text('Connection error'),
           content: Text('Could not establish connection.'),
           actions: [
-            FlatButton(
+            TextButton(
               onPressed: () => Navigator.of(context).pop(),
               child: Text('Close'),
             ),
-- 
2.30.2






More information about the pve-devel mailing list