public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH pve_flutter_frontend 0/3] Add first welcome screen
@ 2020-09-28 12:28 Aaron Lauterer
  2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 1/3] add class for Proxmox corporate identity colors Aaron Lauterer
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Aaron Lauterer @ 2020-09-28 12:28 UTC (permalink / raw)
  To: pve-devel

This patch series introduces a "first welcome screen" shown on first
start.

Additionally, a class that stores the proxmox corporate identity (CI)
colors is introduced.

Feedback regarding content and design is welcome.

Aaron Lauterer (3):
  add class for Proxmox corporate identity colors
  add Proxmox symbol logo white orange
  Add first welcome screen

 .../2.0x/Proxmox-logo-symbol-white-orange.png | Bin 0 -> 18270 bytes
 .../3.0x/Proxmox-logo-symbol-white-orange.png | Bin 0 -> 44381 bytes
 .../Proxmox-logo-symbol-white-orange.png      | Bin 0 -> 9199 bytes
 .../ssl_validate/login_manager_screen.png     | Bin 0 -> 20389 bytes
 .../ssl_validate/login_manager_screen.png~    | Bin 0 -> 74433 bytes
 .../login_manager_screen_settings.png         | Bin 0 -> 37362 bytes
 .../login_manager_screen_settings.png~        | Bin 0 -> 66967 bytes
 lib/main.dart                                 |  17 +-
 lib/utils/dot_indicators.dart                 |  67 ++++++
 lib/utils/promox_colors.dart                  |  10 +
 .../pve_welcome_common.dart                   |  48 +++++
 .../firstWelcomeScreen/pve_welcome_faq.dart   |  56 +++++
 .../firstWelcomeScreen/pve_welcome_last.dart  |  66 ++++++
 .../firstWelcomeScreen/pve_welcome_logo.dart  |  33 +++
 .../pve_welcome_ssl_hint.dart                 |  51 +++++
 lib/widgets/pve_first_welcome_screen.dart     | 193 ++++++++++++++++++
 lib/widgets/pve_guest_overview_header.dart    |   3 +-
 lib/widgets/pve_node_overview.dart            |   3 +-
 pubspec.yaml                                  |   2 +
 19 files changed, 545 insertions(+), 4 deletions(-)
 create mode 100644 assets/images/2.0x/Proxmox-logo-symbol-white-orange.png
 create mode 100644 assets/images/3.0x/Proxmox-logo-symbol-white-orange.png
 create mode 100644 assets/images/Proxmox-logo-symbol-white-orange.png
 create mode 100644 assets/images/ssl_validate/login_manager_screen.png
 create mode 100644 assets/images/ssl_validate/login_manager_screen.png~
 create mode 100644 assets/images/ssl_validate/login_manager_screen_settings.png
 create mode 100644 assets/images/ssl_validate/login_manager_screen_settings.png~
 create mode 100644 lib/utils/dot_indicators.dart
 create mode 100644 lib/utils/promox_colors.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_common.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_last.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart
 create mode 100644 lib/widgets/pve_first_welcome_screen.dart

-- 
2.20.1





^ permalink raw reply	[flat|nested] 10+ messages in thread

* [pve-devel] [PATCH pve_flutter_frontend 1/3] add class for Proxmox corporate identity colors
  2020-09-28 12:28 [pve-devel] [PATCH pve_flutter_frontend 0/3] Add first welcome screen Aaron Lauterer
@ 2020-09-28 12:28 ` Aaron Lauterer
  2020-09-30 10:54   ` Tim Marx
  2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 2/3] add Proxmox symbol logo white orange Aaron Lauterer
  2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 3/3] Add first welcome screen Aaron Lauterer
  2 siblings, 1 reply; 10+ messages in thread
From: Aaron Lauterer @ 2020-09-28 12:28 UTC (permalink / raw)
  To: pve-devel

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
---
 lib/main.dart                              |  3 ++-
 lib/utils/promox_colors.dart               | 10 ++++++++++
 lib/widgets/pve_guest_overview_header.dart |  3 ++-
 lib/widgets/pve_node_overview.dart         |  3 ++-
 4 files changed, 16 insertions(+), 3 deletions(-)
 create mode 100644 lib/utils/promox_colors.dart

diff --git a/lib/main.dart b/lib/main.dart
index d720225..8cd6c36 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -28,6 +28,7 @@ import 'package:pve_flutter_frontend/widgets/pve_lxc_overview.dart';
 import 'package:pve_flutter_frontend/widgets/pve_node_overview.dart';
 import 'package:pve_flutter_frontend/widgets/pve_qemu_overview.dart';
 import 'package:pve_flutter_frontend/widgets/pve_splash_screen.dart';
+import 'utils/promox_colors.dart';
 
 void main() async {
   WidgetsFlutterBinding.ensureInitialized();
@@ -91,7 +92,7 @@ class MyApp extends StatelessWidget {
           brightness: Brightness.light,
           fontFamily: "Open Sans",
           primarySwatch: Colors.blue,
-          primaryColor: Color(0xFF00617F),
+          primaryColor: ProxmoxColors.supportBlue,
           primaryTextTheme: TextTheme(
             headline6:
                 TextStyle(fontFamily: "Open Sans", fontWeight: FontWeight.w700),
diff --git a/lib/utils/promox_colors.dart b/lib/utils/promox_colors.dart
new file mode 100644
index 0000000..f45ef3d
--- /dev/null
+++ b/lib/utils/promox_colors.dart
@@ -0,0 +1,10 @@
+import 'package:flutter/material.dart';
+
+class ProxmoxColors {
+  static final Color orange = Color(0xFFE57000);
+  static final Color black = Color(0xFF000000);
+  static final Color supportLightOrange = Color(0xFFFF9100);
+  static final Color supportGrey = Color(0xFFABBABA);
+  static final Color supportBlue = Color(0xFF00617F);
+  static final Color supportDarkGrey = Color(0xFF464D4D);
+}
diff --git a/lib/widgets/pve_guest_overview_header.dart b/lib/widgets/pve_guest_overview_header.dart
index c5bff16..8ed9d5d 100644
--- a/lib/widgets/pve_guest_overview_header.dart
+++ b/lib/widgets/pve_guest_overview_header.dart
@@ -4,6 +4,7 @@ import 'package:built_collection/built_collection.dart';
 import 'package:flutter/material.dart';
 import 'package:font_awesome_flutter/font_awesome_flutter.dart';
 import 'package:proxmox_dart_api_client/proxmox_dart_api_client.dart';
+import 'package:pve_flutter_frontend/utils/promox_colors.dart';
 import 'package:pve_flutter_frontend/utils/renderers.dart';
 import 'package:pve_flutter_frontend/widgets/pve_guest_icon_widget.dart';
 
@@ -41,7 +42,7 @@ class PveGuestOverviewHeader extends StatelessWidget {
       height: 250,
       width: width,
       decoration: BoxDecoration(
-        color: Color(0xFF00617F),
+        color: ProxmoxColors.supportBlue,
       ),
       child: Stack(
           fit: StackFit.expand,
diff --git a/lib/widgets/pve_node_overview.dart b/lib/widgets/pve_node_overview.dart
index e193193..f7c334b 100644
--- a/lib/widgets/pve_node_overview.dart
+++ b/lib/widgets/pve_node_overview.dart
@@ -5,6 +5,7 @@ import 'package:pve_flutter_frontend/bloc/pve_node_overview_bloc.dart';
 import 'package:pve_flutter_frontend/bloc/pve_task_log_bloc.dart';
 import 'package:pve_flutter_frontend/states/pve_node_overview_state.dart';
 import 'package:pve_flutter_frontend/states/pve_task_log_state.dart';
+import 'package:pve_flutter_frontend/utils/promox_colors.dart';
 import 'package:pve_flutter_frontend/utils/renderers.dart';
 import 'package:pve_flutter_frontend/utils/utils.dart';
 import 'package:pve_flutter_frontend/widgets/proxmox_capacity_indicator.dart';
@@ -46,7 +47,7 @@ class PveNodeOverview extends StatelessWidget {
                 overflow: TextOverflow.ellipsis,
               ),
             ),
-            backgroundColor: Color(0xFF00617F),
+            backgroundColor: ProxmoxColors.supportBlue,
             body: SingleChildScrollView(
               child: Column(
                 children: <Widget>[
-- 
2.20.1





^ permalink raw reply	[flat|nested] 10+ messages in thread

* [pve-devel] [PATCH pve_flutter_frontend 2/3] add Proxmox symbol logo white orange
  2020-09-28 12:28 [pve-devel] [PATCH pve_flutter_frontend 0/3] Add first welcome screen Aaron Lauterer
  2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 1/3] add class for Proxmox corporate identity colors Aaron Lauterer
@ 2020-09-28 12:28 ` Aaron Lauterer
  2020-09-30 11:08   ` Tim Marx
  2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 3/3] Add first welcome screen Aaron Lauterer
  2 siblings, 1 reply; 10+ messages in thread
From: Aaron Lauterer @ 2020-09-28 12:28 UTC (permalink / raw)
  To: pve-devel

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
---
 .../2.0x/Proxmox-logo-symbol-white-orange.png   | Bin 0 -> 18270 bytes
 .../3.0x/Proxmox-logo-symbol-white-orange.png   | Bin 0 -> 44381 bytes
 .../images/Proxmox-logo-symbol-white-orange.png | Bin 0 -> 9199 bytes
 pubspec.yaml                                    |   1 +
 4 files changed, 1 insertion(+)
 create mode 100644 assets/images/2.0x/Proxmox-logo-symbol-white-orange.png
 create mode 100644 assets/images/3.0x/Proxmox-logo-symbol-white-orange.png
 create mode 100644 assets/images/Proxmox-logo-symbol-white-orange.png

diff --git a/assets/images/2.0x/Proxmox-logo-symbol-white-orange.png b/assets/images/2.0x/Proxmox-logo-symbol-white-orange.png
new file mode 100644
index 0000000000000000000000000000000000000000..e7047cb421c43e0d08dc9f908f405a24b283475e
GIT binary patch
literal 18270
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

literal 0
HcmV?d00001

diff --git a/assets/images/3.0x/Proxmox-logo-symbol-white-orange.png b/assets/images/3.0x/Proxmox-logo-symbol-white-orange.png
new file mode 100644
index 0000000000000000000000000000000000000000..8504bc397af376e686b4b54a22d8a3b17016f17a
GIT binary patch
literal 44381
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
G*Z%;SjQ#ci

literal 0
HcmV?d00001

diff --git a/assets/images/Proxmox-logo-symbol-white-orange.png b/assets/images/Proxmox-logo-symbol-white-orange.png
new file mode 100644
index 0000000000000000000000000000000000000000..05b695dea4b5e439e5634e1f7ebf5d0ed82f8235
GIT binary patch
literal 9199
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

literal 0
HcmV?d00001

diff --git a/pubspec.yaml b/pubspec.yaml
index 07b155f..d31eb74 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -59,6 +59,7 @@ flutter:
   # To add assets to your application, add an assets section, like this:
   assets:
     - assets/images/Proxmox_logo_white_orange_800.png
+    - assets/images/Proxmox-logo-symbol-white-orange.png
     - assets/images/proxmox_logo_icon_white.png
 
   # An image asset can refer to one or more resolution-specific "variants", see
-- 
2.20.1





^ permalink raw reply	[flat|nested] 10+ messages in thread

* [pve-devel] [PATCH pve_flutter_frontend 3/3] Add first welcome screen
  2020-09-28 12:28 [pve-devel] [PATCH pve_flutter_frontend 0/3] Add first welcome screen Aaron Lauterer
  2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 1/3] add class for Proxmox corporate identity colors Aaron Lauterer
  2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 2/3] add Proxmox symbol logo white orange Aaron Lauterer
@ 2020-09-28 12:28 ` Aaron Lauterer
  2020-09-28 13:41   ` Aaron Lauterer
  2 siblings, 1 reply; 10+ messages in thread
From: Aaron Lauterer @ 2020-09-28 12:28 UTC (permalink / raw)
  To: pve-devel

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
---
 .../ssl_validate/login_manager_screen.png     | Bin 0 -> 20389 bytes
 .../ssl_validate/login_manager_screen.png~    | Bin 0 -> 74433 bytes
 .../login_manager_screen_settings.png         | Bin 0 -> 37362 bytes
 .../login_manager_screen_settings.png~        | Bin 0 -> 66967 bytes
 lib/main.dart                                 |  14 +-
 lib/utils/dot_indicators.dart                 |  67 ++++++
 .../pve_welcome_common.dart                   |  48 +++++
 .../firstWelcomeScreen/pve_welcome_faq.dart   |  56 +++++
 .../firstWelcomeScreen/pve_welcome_last.dart  |  66 ++++++
 .../firstWelcomeScreen/pve_welcome_logo.dart  |  33 +++
 .../pve_welcome_ssl_hint.dart                 |  51 +++++
 lib/widgets/pve_first_welcome_screen.dart     | 193 ++++++++++++++++++
 pubspec.yaml                                  |   1 +
 13 files changed, 528 insertions(+), 1 deletion(-)
 create mode 100644 assets/images/ssl_validate/login_manager_screen.png
 create mode 100644 assets/images/ssl_validate/login_manager_screen.png~
 create mode 100644 assets/images/ssl_validate/login_manager_screen_settings.png
 create mode 100644 assets/images/ssl_validate/login_manager_screen_settings.png~
 create mode 100644 lib/utils/dot_indicators.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_common.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_last.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart
 create mode 100644 lib/widgets/pve_first_welcome_screen.dart

diff --git a/assets/images/ssl_validate/login_manager_screen.png b/assets/images/ssl_validate/login_manager_screen.png
new file mode 100644
index 0000000000000000000000000000000000000000..b6668cc8f5b3fcc742ee2a6ce019ea4318fda92a
GIT binary patch
literal 20389
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

literal 0
HcmV?d00001

diff --git a/assets/images/ssl_validate/login_manager_screen.png~ b/assets/images/ssl_validate/login_manager_screen.png~
new file mode 100644
index 0000000000000000000000000000000000000000..f4df81f3fd8a173c09732ba8b7a854827f8be94d
GIT binary patch
literal 74433
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%0Ai1se^v!2H>2}~To{J;*rZkaHFCYqsx-?t3
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
QaE$Tj>KJO5-*AZeADl%-UjP6A

literal 0
HcmV?d00001

diff --git a/assets/images/ssl_validate/login_manager_screen_settings.png b/assets/images/ssl_validate/login_manager_screen_settings.png
new file mode 100644
index 0000000000000000000000000000000000000000..8858724a41bc452bb9d338242df0da8e5b61079e
GIT binary patch
literal 37362
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
Wyv;~hkMo}ZKjI=X!X<*AzWyH_xa}4I

literal 0
HcmV?d00001

diff --git a/assets/images/ssl_validate/login_manager_screen_settings.png~ b/assets/images/ssl_validate/login_manager_screen_settings.png~
new file mode 100644
index 0000000000000000000000000000000000000000..1782db98f67f03ee0c646522d194c9d142769695
GIT binary patch
literal 66967
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
C6D!;R

literal 0
HcmV?d00001

diff --git a/lib/main.dart b/lib/main.dart
index 8cd6c36..57ad39c 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -1,6 +1,8 @@
 import 'package:flutter/foundation.dart';
 import 'package:flutter/material.dart';
 import 'package:provider/provider.dart';
+import 'package:pve_flutter_frontend/widgets/pve_first_welcome_screen.dart';
+import 'package:shared_preferences/shared_preferences.dart';
 import 'package:proxmox_login_manager/proxmox_login_manager.dart';
 import 'package:pve_flutter_frontend/bloc/pve_authentication_bloc.dart';
 import 'package:pve_flutter_frontend/bloc/pve_cluster_status_bloc.dart';
@@ -47,6 +49,7 @@ void main() async {
     FlutterError.dumpErrorToConsole(details);
     if (kReleaseMode) ProxmoxGlobalErrorBloc().addError(details.exception);
   };
+  SharedPreferences sharedPreferences = await SharedPreferences.getInstance();
   Provider.debugCheckInvalidValueType = null;
 
   runApp(
@@ -60,6 +63,7 @@ void main() async {
       ],
       child: MyApp(
         authbloc: authBloc,
+        sharedPreferences: sharedPreferences,
       ),
     ),
   );
@@ -67,9 +71,12 @@ void main() async {
 
 class MyApp extends StatelessWidget {
   final PveAuthenticationBloc authbloc;
+  final SharedPreferences sharedPreferences;
   final GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();
 
-  MyApp({Key key, this.authbloc}) : super(key: key);
+  MyApp({Key key, this.authbloc, this.sharedPreferences})
+      : assert(sharedPreferences != null),
+        super(key: key);
 
   @override
   Widget build(BuildContext context) {
@@ -142,6 +149,11 @@ class MyApp extends StatelessWidget {
               builder: (context) => PveSplashScreen(),
             );
           }
+          if (sharedPreferences.getBool('showWelcomeScreen') ?? true) {
+            return MaterialPageRoute(
+              builder: (context) => PveWelcome(),
+            );
+          }
 
           if (authbloc.state.value is Unauthenticated ||
               context.name == '/login') {
diff --git a/lib/utils/dot_indicators.dart b/lib/utils/dot_indicators.dart
new file mode 100644
index 0000000..7b5034f
--- /dev/null
+++ b/lib/utils/dot_indicators.dart
@@ -0,0 +1,67 @@
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+import 'dart:math';
+
+class DotIndicator extends AnimatedWidget {
+  DotIndicator({
+    this.controller,
+    this.itemCount,
+    this.onPageSelected,
+    this.color: Colors.white,
+  }) : super(listenable: controller);
+
+  final PageController controller;
+
+  final int itemCount;
+
+  final ValueChanged<int> onPageSelected;
+  final Color color;
+
+  static const double _dotSize = 8.0;
+  static const double _maxZoom = 1.2;
+  static const double _dotSpacing = 25.0;
+
+  Widget _buildDot(int index) {
+    double selectedness = Curves.easeOut.transform(
+      max(
+        0.0,
+        1.0 - ((controller.page ?? controller.initialPage) - index).abs(),
+      ),
+    );
+    double zoom = 1.0 + (_maxZoom - 1.0) * selectedness;
+    double shadowBlurRadius = 4.0 * selectedness;
+    double shadowSpreadRadius = 1.0 * selectedness;
+    return new Container(
+      width: _dotSpacing,
+      child: Center(
+        child: Container(
+          width: _dotSize * zoom,
+          height: _dotSize * zoom,
+          child: InkWell(
+            onTap: () => onPageSelected(index),
+          ),
+          decoration: BoxDecoration(
+            color: color,
+            shape: BoxShape.circle,
+            boxShadow: [
+              BoxShadow(
+                  color: Colors.white.withOpacity(0.72),
+                  blurRadius: shadowBlurRadius,
+                  spreadRadius: shadowSpreadRadius,
+                  offset: Offset(0.0, 0.0))
+            ],
+          ),
+        ),
+      ),
+    );
+  }
+
+  Widget build(BuildContext contect) {
+    return Row(
+        mainAxisAlignment: MainAxisAlignment.center,
+        children: List<Widget>.generate(
+          itemCount,
+          _buildDot,
+        ));
+  }
+}
diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_common.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_common.dart
new file mode 100644
index 0000000..52055f9
--- /dev/null
+++ b/lib/widgets/firstWelcomeScreen/pve_welcome_common.dart
@@ -0,0 +1,48 @@
+import 'package:flutter/material.dart';
+
+class PveQuestion extends StatelessWidget {
+  const PveQuestion({
+    Key key,
+    this.text,
+  }) : super(key: key);
+
+  final String text;
+
+  @override
+  Widget build(BuildContext context) {
+    return Padding(
+      padding: EdgeInsets.fromLTRB(10.0, 10.0, 5.0, 0.0),
+      child: Text(
+        text,
+        style: TextStyle(
+          fontWeight: FontWeight.bold,
+        ),
+      ),
+    );
+  }
+}
+
+class PveAnswer extends StatelessWidget {
+  const PveAnswer({
+    Key key,
+    this.text,
+    this.spans,
+  }) : super(key: key);
+
+  final String text;
+  final List<TextSpan> spans;
+
+  @override
+  Widget build(BuildContext context) {
+    return Padding(
+      padding: EdgeInsets.fromLTRB(20.0, 5.0, 5.0, 5.0),
+      child: RichText(
+        text: TextSpan(
+          text: text,
+          style: DefaultTextStyle.of(context).style,
+          children: spans,
+        ),
+      ),
+    );
+  }
+}
diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart
new file mode 100644
index 0000000..65f931c
--- /dev/null
+++ b/lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart
@@ -0,0 +1,56 @@
+import 'package:flutter/material.dart';
+import 'package:url_launcher/url_launcher.dart';
+import 'package:flutter/gestures.dart';
+import 'pve_welcome_common.dart';
+
+// FAQ
+class PveWelcomePageFAQ extends StatelessWidget {
+  const PveWelcomePageFAQ({
+    Key key,
+  }) : super(key: key);
+
+  @override
+  Widget build(BuildContext context) {
+    return Column(
+      mainAxisAlignment: MainAxisAlignment.center,
+      crossAxisAlignment: CrossAxisAlignment.start,
+      children: [
+        PveQuestion(
+            text: "How do I connect if I am not using the default port 8006?"),
+        PveAnswer(
+            text:
+                "Add the port at the end, separated by a colon. For the default https port add 443."),
+        PveAnswer(
+          text: "For example: 192.168.1.10",
+          spans: [
+            TextSpan(
+                text: ":443",
+                style: TextStyle(
+                    fontWeight: FontWeight.bold, fontStyle: FontStyle.italic))
+          ],
+        ),
+        PveQuestion(
+          text: "What about remote consoles?",
+        ),
+        PveAnswer(
+            text:
+                "Spice is currently supported. We plan to integrate VNC in the future."),
+        PveQuestion(text: "Which Spice client works?"),
+        PveAnswer(
+          text: "The ",
+          spans: [
+            TextSpan(
+                text: "Opague Spice client",
+                style: TextStyle(decoration: TextDecoration.underline),
+                recognizer: TapGestureRecognizer()
+                  ..onTap = () => {
+                        launch(
+                            'https://play.google.com/store/apps/details?id=com.undatech.opaque')
+                      }),
+            TextSpan(text: " works. We will support more in the future.")
+          ],
+        )
+      ],
+    );
+  }
+}
diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_last.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_last.dart
new file mode 100644
index 0000000..cf34224
--- /dev/null
+++ b/lib/widgets/firstWelcomeScreen/pve_welcome_last.dart
@@ -0,0 +1,66 @@
+import 'package:flutter/material.dart';
+import 'package:url_launcher/url_launcher.dart';
+import 'package:flutter/gestures.dart';
+import '../../utils/promox_colors.dart';
+
+// goodbye
+class PveWelcomePageLast extends StatelessWidget {
+  const PveWelcomePageLast({Key key, this.onDone}) : super(key: key);
+
+  final VoidCallback onDone;
+
+  @override
+  Widget build(BuildContext context) {
+    return Padding(
+        padding: EdgeInsets.all(15.0),
+        child: Column(
+          mainAxisAlignment: MainAxisAlignment.center,
+          children: [
+            Text("Enjoy the app"),
+            Padding(
+              padding: const EdgeInsets.all(8.0),
+              child: Icon(
+                Icons.emoji_people_rounded,
+                color: Colors.white,
+                size: 70,
+              ),
+            ),
+            Padding(
+              padding: const EdgeInsets.all(8.0),
+              child: RaisedButton(
+                onPressed: () => {onDone()},
+                color: ProxmoxColors.orange,
+                textColor: Colors.white,
+                child: Text("Start"),
+              ),
+            ),
+            RichText(
+              textAlign: TextAlign.center,
+              text: TextSpan(
+                text: "Please use our ",
+                style: DefaultTextStyle.of(context).style,
+                children: <TextSpan>[
+                  TextSpan(
+                      text: 'community forum',
+                      style: TextStyle(decoration: TextDecoration.underline),
+                      recognizer: TapGestureRecognizer()
+                        ..onTap = () => {launch('https://forum.proxmox.com')}),
+                  TextSpan(text: ' or the '),
+                  TextSpan(
+                      text: 'user mailing list',
+                      style: TextStyle(decoration: TextDecoration.underline),
+                      recognizer: TapGestureRecognizer()
+                        ..onTap = () => {
+                              launch(
+                                  'https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-user')
+                            }),
+                  TextSpan(
+                      text:
+                          ' if you have suggestions or experience any problems.'),
+                ],
+              ),
+            ),
+          ],
+        ));
+  }
+}
diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart
new file mode 100644
index 0000000..3aee19a
--- /dev/null
+++ b/lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart
@@ -0,0 +1,33 @@
+import 'package:flutter/material.dart';
+
+// Big Logo
+class PveWelcomePageLogo extends StatelessWidget {
+  const PveWelcomePageLogo({
+    Key key,
+  }) : super(key: key);
+
+  @override
+  Widget build(BuildContext context) {
+    return Column(
+        mainAxisAlignment: MainAxisAlignment.center,
+        crossAxisAlignment: CrossAxisAlignment.center,
+        children: [
+          Padding(
+            padding: const EdgeInsets.fromLTRB(120.0, 0.0, 120.0, 30.0),
+            child: Image.asset(
+              'assets/images/Proxmox-logo-symbol-white-orange.png',
+              alignment: Alignment.center,
+            ),
+          ),
+          FittedBox(
+            child: Padding(
+              padding: const EdgeInsets.all(8.0),
+              child: Text(
+                'Proxmox Virtual Environment',
+                style: TextStyle(fontSize: 26),
+              ),
+            ),
+          ),
+        ]);
+  }
+}
diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart
new file mode 100644
index 0000000..61d02f4
--- /dev/null
+++ b/lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart
@@ -0,0 +1,51 @@
+import 'package:flutter/material.dart';
+import 'pve_welcome_common.dart';
+
+// disable ssl validation hint
+class PveWelcomePageSSLValidation extends StatelessWidget {
+  const PveWelcomePageSSLValidation({
+    Key key,
+  }) : super(key: key);
+
+  @override
+  Widget build(BuildContext context) {
+    return Padding(
+      padding: EdgeInsets.all(15.0),
+      child: Column(
+        mainAxisAlignment: MainAxisAlignment.center,
+        crossAxisAlignment: CrossAxisAlignment.start,
+        children: [
+          PveQuestion(
+            text: "Are you using a self signed certificate?",
+          ),
+          PveAnswer(
+              text: "Disable SSL Validation in the Login Manager settings."),
+          Column(
+            children: [
+              Padding(
+                padding: const EdgeInsets.all(8.0),
+                child: Container(
+                  decoration: BoxDecoration(
+                      border: Border.all(color: Colors.white, width: 0.5)),
+                  child: Image.asset(
+                    'assets/images/ssl_validate/login_manager_screen.png',
+                  ),
+                ),
+              ),
+              Padding(
+                padding: const EdgeInsets.all(8.0),
+                child: Container(
+                  decoration: BoxDecoration(
+                      border: Border.all(color: Colors.white, width: 0.5)),
+                  child: Image.asset(
+                    'assets/images/ssl_validate/login_manager_screen_settings.png',
+                  ),
+                ),
+              ),
+            ],
+          )
+        ],
+      ),
+    );
+  }
+}
diff --git a/lib/widgets/pve_first_welcome_screen.dart b/lib/widgets/pve_first_welcome_screen.dart
new file mode 100644
index 0000000..83fe399
--- /dev/null
+++ b/lib/widgets/pve_first_welcome_screen.dart
@@ -0,0 +1,193 @@
+import 'dart:ui';
+
+import 'package:flutter/material.dart';
+import 'package:flutter/rendering.dart';
+import 'package:shared_preferences/shared_preferences.dart';
+import '../utils/dot_indicators.dart';
+import '../utils/promox_colors.dart';
+import 'firstWelcomeScreen/pve_welcome_logo.dart';
+import 'firstWelcomeScreen/pve_welcome_faq.dart';
+import 'firstWelcomeScreen/pve_welcome_ssl_hint.dart';
+import 'firstWelcomeScreen/pve_welcome_last.dart';
+
+class PveWelcome extends StatefulWidget {
+  @override
+  _PveWelcomeState createState() => _PveWelcomeState();
+}
+
+class _PveWelcomeState extends State<PveWelcome> with TickerProviderStateMixin {
+  PageController _controller;
+  SharedPreferences _sharedPreferences;
+
+  final List<Widget> _pages = [
+    PveWelcomePageLogo(),
+    PveWelcomePageSSLValidation(),
+    PveWelcomePageFAQ(),
+  ];
+
+  // Duration for page change
+  static const Duration _pageChangeDuration = Duration(milliseconds: 150);
+  static const Curve _pageChangeCurve = Curves.easeInOut;
+
+  AnimationController _animController;
+  Animation<Color> _animation;
+
+  final colors = <TweenSequenceItem<Color>>[
+    TweenSequenceItem(
+      weight: 1.0,
+      tween: ColorTween(
+          begin: ProxmoxColors.supportBlue, end: ProxmoxColors.supportDarkGrey),
+    ),
+    TweenSequenceItem(
+      weight: 1.0,
+      tween: ColorTween(
+          begin: ProxmoxColors.supportDarkGrey, end: ProxmoxColors.orange),
+    ),
+    TweenSequenceItem(
+      weight: 1.0,
+      tween: ColorTween(
+          begin: ProxmoxColors.orange, end: ProxmoxColors.supportBlue),
+    ),
+  ];
+
+  bool _isLast = false;
+  bool _isFirst = true;
+
+  final _buttonTextColor = Colors.white;
+  final _buttonDisabledTextColor = Colors.white30;
+
+  void _getPrefs() async {
+    _sharedPreferences = await SharedPreferences.getInstance();
+  }
+
+  void _setWelcomeSeen() async {
+    _sharedPreferences.setBool('showWelcomeScreen', false);
+  }
+
+  @override
+  void initState() {
+    super.initState();
+
+    _getPrefs();
+    _controller = PageController();
+
+    // add last page here so we can define the callback for the start button
+    _pages.add(PveWelcomePageLast(onDone: () {
+      skipDone();
+    }));
+
+    _animController = AnimationController(
+      duration: _pageChangeDuration,
+      vsync: this,
+    );
+    _animation = TweenSequence<Color>(colors).animate(_animController)
+      ..addListener(() {
+        setState(() {});
+      });
+
+    _controller.addListener(() {
+      setState(() {
+        _isLast = _controller.page.floor() == _pages.length - 1;
+        _isFirst = _controller.page.floor() == 0;
+      });
+    });
+  }
+
+  void skipDone() {
+    _setWelcomeSeen();
+    Navigator.pushReplacementNamed(context, '/');
+  }
+
+  Widget nextDoneButton() {
+    if (_isLast) {
+      return FlatButton(
+        textColor: _buttonTextColor,
+        disabledTextColor: _buttonDisabledTextColor,
+        child: Text(
+          "Done",
+        ),
+        onPressed: () {
+          skipDone();
+        },
+      );
+    } else {
+      return FlatButton(
+        child: Text("Next"),
+        textColor: _buttonTextColor,
+        disabledTextColor: _buttonDisabledTextColor,
+        onPressed: () {
+          _controller.nextPage(
+              duration: _pageChangeDuration, curve: _pageChangeCurve);
+        },
+      );
+    }
+  }
+
+  Widget skipPrevButton() {
+    if (_isFirst) {
+      return FlatButton(
+        textColor: _buttonTextColor,
+        disabledTextColor: _buttonDisabledTextColor,
+        onPressed: () {
+          skipDone();
+        },
+        child: Text(
+          'Skip',
+        ),
+      );
+    } else {
+      return FlatButton(
+        textColor: _buttonTextColor,
+        disabledTextColor: _buttonDisabledTextColor,
+        child: Text(
+          "Prev",
+        ),
+        onPressed: () {
+          _controller.previousPage(
+              duration: _pageChangeDuration, curve: _pageChangeCurve);
+        },
+      );
+    }
+  }
+
+  @override
+  Widget build(BuildContext context) {
+    return Scaffold(
+      backgroundColor: _animation.value,
+      body: DefaultTextStyle(
+        style: TextStyle(color: Colors.white, fontSize: 18),
+        child: Column(
+          children: [
+            Expanded(
+              child: PageView.builder(
+                controller: _controller,
+                itemCount: _pages.length,
+                onPageChanged: ((int index) {
+                  _animController.animateTo(index / colors.length);
+                }),
+                itemBuilder: (context, index) {
+                  return _pages[index];
+                },
+              ),
+            ),
+            Row(
+              mainAxisAlignment: MainAxisAlignment.spaceBetween,
+              children: [
+                skipPrevButton(),
+                DotIndicator(
+                  controller: _controller,
+                  itemCount: _pages.length,
+                  onPageSelected: (int page) {
+                    _controller.animateToPage(page,
+                        duration: _pageChangeDuration, curve: _pageChangeCurve);
+                  },
+                ),
+                nextDoneButton(),
+              ],
+            ),
+          ],
+        ),
+      ),
+    );
+  }
+}
diff --git a/pubspec.yaml b/pubspec.yaml
index d31eb74..09fa250 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -61,6 +61,7 @@ flutter:
     - assets/images/Proxmox_logo_white_orange_800.png
     - assets/images/Proxmox-logo-symbol-white-orange.png
     - assets/images/proxmox_logo_icon_white.png
+    - assets/images/ssl_validate/
 
   # An image asset can refer to one or more resolution-specific "variants", see
   # https://flutter.dev/assets-and-images/#resolution-aware.
-- 
2.20.1





^ permalink raw reply	[flat|nested] 10+ messages in thread

* [pve-devel] [PATCH pve_flutter_frontend 3/3] Add first welcome screen
  2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 3/3] Add first welcome screen Aaron Lauterer
@ 2020-09-28 13:41   ` Aaron Lauterer
  2020-09-30 12:04     ` Tim Marx
  0 siblings, 1 reply; 10+ messages in thread
From: Aaron Lauterer @ 2020-09-28 13:41 UTC (permalink / raw)
  To: pve-devel

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
---
Same patch without temp png files.

Thanks @Dominik for noticing

 .../ssl_validate/login_manager_screen.png     | Bin 0 -> 20389 bytes
 .../login_manager_screen_settings.png         | Bin 0 -> 37362 bytes
 lib/main.dart                                 |  14 +-
 lib/utils/dot_indicators.dart                 |  67 ++++++
 .../pve_welcome_common.dart                   |  48 +++++
 .../firstWelcomeScreen/pve_welcome_faq.dart   |  56 +++++
 .../firstWelcomeScreen/pve_welcome_last.dart  |  66 ++++++
 .../firstWelcomeScreen/pve_welcome_logo.dart  |  33 +++
 .../pve_welcome_ssl_hint.dart                 |  51 +++++
 lib/widgets/pve_first_welcome_screen.dart     | 193 ++++++++++++++++++
 pubspec.yaml                                  |   1 +
 11 files changed, 528 insertions(+), 1 deletion(-)
 create mode 100644 assets/images/ssl_validate/login_manager_screen.png
 create mode 100644 assets/images/ssl_validate/login_manager_screen_settings.png
 create mode 100644 lib/utils/dot_indicators.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_common.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_last.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart
 create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart
 create mode 100644 lib/widgets/pve_first_welcome_screen.dart

diff --git a/assets/images/ssl_validate/login_manager_screen.png b/assets/images/ssl_validate/login_manager_screen.png
new file mode 100644
index 0000000000000000000000000000000000000000..b6668cc8f5b3fcc742ee2a6ce019ea4318fda92a
GIT binary patch
literal 20389
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

literal 0
HcmV?d00001

diff --git a/assets/images/ssl_validate/login_manager_screen_settings.png b/assets/images/ssl_validate/login_manager_screen_settings.png
new file mode 100644
index 0000000000000000000000000000000000000000..8858724a41bc452bb9d338242df0da8e5b61079e
GIT binary patch
literal 37362
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
Wyv;~hkMo}ZKjI=X!X<*AzWyH_xa}4I

literal 0
HcmV?d00001

diff --git a/lib/main.dart b/lib/main.dart
index 8cd6c36..57ad39c 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -1,6 +1,8 @@
 import 'package:flutter/foundation.dart';
 import 'package:flutter/material.dart';
 import 'package:provider/provider.dart';
+import 'package:pve_flutter_frontend/widgets/pve_first_welcome_screen.dart';
+import 'package:shared_preferences/shared_preferences.dart';
 import 'package:proxmox_login_manager/proxmox_login_manager.dart';
 import 'package:pve_flutter_frontend/bloc/pve_authentication_bloc.dart';
 import 'package:pve_flutter_frontend/bloc/pve_cluster_status_bloc.dart';
@@ -47,6 +49,7 @@ void main() async {
     FlutterError.dumpErrorToConsole(details);
     if (kReleaseMode) ProxmoxGlobalErrorBloc().addError(details.exception);
   };
+  SharedPreferences sharedPreferences = await SharedPreferences.getInstance();
   Provider.debugCheckInvalidValueType = null;
 
   runApp(
@@ -60,6 +63,7 @@ void main() async {
       ],
       child: MyApp(
         authbloc: authBloc,
+        sharedPreferences: sharedPreferences,
       ),
     ),
   );
@@ -67,9 +71,12 @@ void main() async {
 
 class MyApp extends StatelessWidget {
   final PveAuthenticationBloc authbloc;
+  final SharedPreferences sharedPreferences;
   final GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();
 
-  MyApp({Key key, this.authbloc}) : super(key: key);
+  MyApp({Key key, this.authbloc, this.sharedPreferences})
+      : assert(sharedPreferences != null),
+        super(key: key);
 
   @override
   Widget build(BuildContext context) {
@@ -142,6 +149,11 @@ class MyApp extends StatelessWidget {
               builder: (context) => PveSplashScreen(),
             );
           }
+          if (sharedPreferences.getBool('showWelcomeScreen') ?? true) {
+            return MaterialPageRoute(
+              builder: (context) => PveWelcome(),
+            );
+          }
 
           if (authbloc.state.value is Unauthenticated ||
               context.name == '/login') {
diff --git a/lib/utils/dot_indicators.dart b/lib/utils/dot_indicators.dart
new file mode 100644
index 0000000..7b5034f
--- /dev/null
+++ b/lib/utils/dot_indicators.dart
@@ -0,0 +1,67 @@
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+import 'dart:math';
+
+class DotIndicator extends AnimatedWidget {
+  DotIndicator({
+    this.controller,
+    this.itemCount,
+    this.onPageSelected,
+    this.color: Colors.white,
+  }) : super(listenable: controller);
+
+  final PageController controller;
+
+  final int itemCount;
+
+  final ValueChanged<int> onPageSelected;
+  final Color color;
+
+  static const double _dotSize = 8.0;
+  static const double _maxZoom = 1.2;
+  static const double _dotSpacing = 25.0;
+
+  Widget _buildDot(int index) {
+    double selectedness = Curves.easeOut.transform(
+      max(
+        0.0,
+        1.0 - ((controller.page ?? controller.initialPage) - index).abs(),
+      ),
+    );
+    double zoom = 1.0 + (_maxZoom - 1.0) * selectedness;
+    double shadowBlurRadius = 4.0 * selectedness;
+    double shadowSpreadRadius = 1.0 * selectedness;
+    return new Container(
+      width: _dotSpacing,
+      child: Center(
+        child: Container(
+          width: _dotSize * zoom,
+          height: _dotSize * zoom,
+          child: InkWell(
+            onTap: () => onPageSelected(index),
+          ),
+          decoration: BoxDecoration(
+            color: color,
+            shape: BoxShape.circle,
+            boxShadow: [
+              BoxShadow(
+                  color: Colors.white.withOpacity(0.72),
+                  blurRadius: shadowBlurRadius,
+                  spreadRadius: shadowSpreadRadius,
+                  offset: Offset(0.0, 0.0))
+            ],
+          ),
+        ),
+      ),
+    );
+  }
+
+  Widget build(BuildContext contect) {
+    return Row(
+        mainAxisAlignment: MainAxisAlignment.center,
+        children: List<Widget>.generate(
+          itemCount,
+          _buildDot,
+        ));
+  }
+}
diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_common.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_common.dart
new file mode 100644
index 0000000..52055f9
--- /dev/null
+++ b/lib/widgets/firstWelcomeScreen/pve_welcome_common.dart
@@ -0,0 +1,48 @@
+import 'package:flutter/material.dart';
+
+class PveQuestion extends StatelessWidget {
+  const PveQuestion({
+    Key key,
+    this.text,
+  }) : super(key: key);
+
+  final String text;
+
+  @override
+  Widget build(BuildContext context) {
+    return Padding(
+      padding: EdgeInsets.fromLTRB(10.0, 10.0, 5.0, 0.0),
+      child: Text(
+        text,
+        style: TextStyle(
+          fontWeight: FontWeight.bold,
+        ),
+      ),
+    );
+  }
+}
+
+class PveAnswer extends StatelessWidget {
+  const PveAnswer({
+    Key key,
+    this.text,
+    this.spans,
+  }) : super(key: key);
+
+  final String text;
+  final List<TextSpan> spans;
+
+  @override
+  Widget build(BuildContext context) {
+    return Padding(
+      padding: EdgeInsets.fromLTRB(20.0, 5.0, 5.0, 5.0),
+      child: RichText(
+        text: TextSpan(
+          text: text,
+          style: DefaultTextStyle.of(context).style,
+          children: spans,
+        ),
+      ),
+    );
+  }
+}
diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart
new file mode 100644
index 0000000..65f931c
--- /dev/null
+++ b/lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart
@@ -0,0 +1,56 @@
+import 'package:flutter/material.dart';
+import 'package:url_launcher/url_launcher.dart';
+import 'package:flutter/gestures.dart';
+import 'pve_welcome_common.dart';
+
+// FAQ
+class PveWelcomePageFAQ extends StatelessWidget {
+  const PveWelcomePageFAQ({
+    Key key,
+  }) : super(key: key);
+
+  @override
+  Widget build(BuildContext context) {
+    return Column(
+      mainAxisAlignment: MainAxisAlignment.center,
+      crossAxisAlignment: CrossAxisAlignment.start,
+      children: [
+        PveQuestion(
+            text: "How do I connect if I am not using the default port 8006?"),
+        PveAnswer(
+            text:
+                "Add the port at the end, separated by a colon. For the default https port add 443."),
+        PveAnswer(
+          text: "For example: 192.168.1.10",
+          spans: [
+            TextSpan(
+                text: ":443",
+                style: TextStyle(
+                    fontWeight: FontWeight.bold, fontStyle: FontStyle.italic))
+          ],
+        ),
+        PveQuestion(
+          text: "What about remote consoles?",
+        ),
+        PveAnswer(
+            text:
+                "Spice is currently supported. We plan to integrate VNC in the future."),
+        PveQuestion(text: "Which Spice client works?"),
+        PveAnswer(
+          text: "The ",
+          spans: [
+            TextSpan(
+                text: "Opague Spice client",
+                style: TextStyle(decoration: TextDecoration.underline),
+                recognizer: TapGestureRecognizer()
+                  ..onTap = () => {
+                        launch(
+                            'https://play.google.com/store/apps/details?id=com.undatech.opaque')
+                      }),
+            TextSpan(text: " works. We will support more in the future.")
+          ],
+        )
+      ],
+    );
+  }
+}
diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_last.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_last.dart
new file mode 100644
index 0000000..cf34224
--- /dev/null
+++ b/lib/widgets/firstWelcomeScreen/pve_welcome_last.dart
@@ -0,0 +1,66 @@
+import 'package:flutter/material.dart';
+import 'package:url_launcher/url_launcher.dart';
+import 'package:flutter/gestures.dart';
+import '../../utils/promox_colors.dart';
+
+// goodbye
+class PveWelcomePageLast extends StatelessWidget {
+  const PveWelcomePageLast({Key key, this.onDone}) : super(key: key);
+
+  final VoidCallback onDone;
+
+  @override
+  Widget build(BuildContext context) {
+    return Padding(
+        padding: EdgeInsets.all(15.0),
+        child: Column(
+          mainAxisAlignment: MainAxisAlignment.center,
+          children: [
+            Text("Enjoy the app"),
+            Padding(
+              padding: const EdgeInsets.all(8.0),
+              child: Icon(
+                Icons.emoji_people_rounded,
+                color: Colors.white,
+                size: 70,
+              ),
+            ),
+            Padding(
+              padding: const EdgeInsets.all(8.0),
+              child: RaisedButton(
+                onPressed: () => {onDone()},
+                color: ProxmoxColors.orange,
+                textColor: Colors.white,
+                child: Text("Start"),
+              ),
+            ),
+            RichText(
+              textAlign: TextAlign.center,
+              text: TextSpan(
+                text: "Please use our ",
+                style: DefaultTextStyle.of(context).style,
+                children: <TextSpan>[
+                  TextSpan(
+                      text: 'community forum',
+                      style: TextStyle(decoration: TextDecoration.underline),
+                      recognizer: TapGestureRecognizer()
+                        ..onTap = () => {launch('https://forum.proxmox.com')}),
+                  TextSpan(text: ' or the '),
+                  TextSpan(
+                      text: 'user mailing list',
+                      style: TextStyle(decoration: TextDecoration.underline),
+                      recognizer: TapGestureRecognizer()
+                        ..onTap = () => {
+                              launch(
+                                  'https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-user')
+                            }),
+                  TextSpan(
+                      text:
+                          ' if you have suggestions or experience any problems.'),
+                ],
+              ),
+            ),
+          ],
+        ));
+  }
+}
diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart
new file mode 100644
index 0000000..3aee19a
--- /dev/null
+++ b/lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart
@@ -0,0 +1,33 @@
+import 'package:flutter/material.dart';
+
+// Big Logo
+class PveWelcomePageLogo extends StatelessWidget {
+  const PveWelcomePageLogo({
+    Key key,
+  }) : super(key: key);
+
+  @override
+  Widget build(BuildContext context) {
+    return Column(
+        mainAxisAlignment: MainAxisAlignment.center,
+        crossAxisAlignment: CrossAxisAlignment.center,
+        children: [
+          Padding(
+            padding: const EdgeInsets.fromLTRB(120.0, 0.0, 120.0, 30.0),
+            child: Image.asset(
+              'assets/images/Proxmox-logo-symbol-white-orange.png',
+              alignment: Alignment.center,
+            ),
+          ),
+          FittedBox(
+            child: Padding(
+              padding: const EdgeInsets.all(8.0),
+              child: Text(
+                'Proxmox Virtual Environment',
+                style: TextStyle(fontSize: 26),
+              ),
+            ),
+          ),
+        ]);
+  }
+}
diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart
new file mode 100644
index 0000000..61d02f4
--- /dev/null
+++ b/lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart
@@ -0,0 +1,51 @@
+import 'package:flutter/material.dart';
+import 'pve_welcome_common.dart';
+
+// disable ssl validation hint
+class PveWelcomePageSSLValidation extends StatelessWidget {
+  const PveWelcomePageSSLValidation({
+    Key key,
+  }) : super(key: key);
+
+  @override
+  Widget build(BuildContext context) {
+    return Padding(
+      padding: EdgeInsets.all(15.0),
+      child: Column(
+        mainAxisAlignment: MainAxisAlignment.center,
+        crossAxisAlignment: CrossAxisAlignment.start,
+        children: [
+          PveQuestion(
+            text: "Are you using a self signed certificate?",
+          ),
+          PveAnswer(
+              text: "Disable SSL Validation in the Login Manager settings."),
+          Column(
+            children: [
+              Padding(
+                padding: const EdgeInsets.all(8.0),
+                child: Container(
+                  decoration: BoxDecoration(
+                      border: Border.all(color: Colors.white, width: 0.5)),
+                  child: Image.asset(
+                    'assets/images/ssl_validate/login_manager_screen.png',
+                  ),
+                ),
+              ),
+              Padding(
+                padding: const EdgeInsets.all(8.0),
+                child: Container(
+                  decoration: BoxDecoration(
+                      border: Border.all(color: Colors.white, width: 0.5)),
+                  child: Image.asset(
+                    'assets/images/ssl_validate/login_manager_screen_settings.png',
+                  ),
+                ),
+              ),
+            ],
+          )
+        ],
+      ),
+    );
+  }
+}
diff --git a/lib/widgets/pve_first_welcome_screen.dart b/lib/widgets/pve_first_welcome_screen.dart
new file mode 100644
index 0000000..83fe399
--- /dev/null
+++ b/lib/widgets/pve_first_welcome_screen.dart
@@ -0,0 +1,193 @@
+import 'dart:ui';
+
+import 'package:flutter/material.dart';
+import 'package:flutter/rendering.dart';
+import 'package:shared_preferences/shared_preferences.dart';
+import '../utils/dot_indicators.dart';
+import '../utils/promox_colors.dart';
+import 'firstWelcomeScreen/pve_welcome_logo.dart';
+import 'firstWelcomeScreen/pve_welcome_faq.dart';
+import 'firstWelcomeScreen/pve_welcome_ssl_hint.dart';
+import 'firstWelcomeScreen/pve_welcome_last.dart';
+
+class PveWelcome extends StatefulWidget {
+  @override
+  _PveWelcomeState createState() => _PveWelcomeState();
+}
+
+class _PveWelcomeState extends State<PveWelcome> with TickerProviderStateMixin {
+  PageController _controller;
+  SharedPreferences _sharedPreferences;
+
+  final List<Widget> _pages = [
+    PveWelcomePageLogo(),
+    PveWelcomePageSSLValidation(),
+    PveWelcomePageFAQ(),
+  ];
+
+  // Duration for page change
+  static const Duration _pageChangeDuration = Duration(milliseconds: 150);
+  static const Curve _pageChangeCurve = Curves.easeInOut;
+
+  AnimationController _animController;
+  Animation<Color> _animation;
+
+  final colors = <TweenSequenceItem<Color>>[
+    TweenSequenceItem(
+      weight: 1.0,
+      tween: ColorTween(
+          begin: ProxmoxColors.supportBlue, end: ProxmoxColors.supportDarkGrey),
+    ),
+    TweenSequenceItem(
+      weight: 1.0,
+      tween: ColorTween(
+          begin: ProxmoxColors.supportDarkGrey, end: ProxmoxColors.orange),
+    ),
+    TweenSequenceItem(
+      weight: 1.0,
+      tween: ColorTween(
+          begin: ProxmoxColors.orange, end: ProxmoxColors.supportBlue),
+    ),
+  ];
+
+  bool _isLast = false;
+  bool _isFirst = true;
+
+  final _buttonTextColor = Colors.white;
+  final _buttonDisabledTextColor = Colors.white30;
+
+  void _getPrefs() async {
+    _sharedPreferences = await SharedPreferences.getInstance();
+  }
+
+  void _setWelcomeSeen() async {
+    _sharedPreferences.setBool('showWelcomeScreen', false);
+  }
+
+  @override
+  void initState() {
+    super.initState();
+
+    _getPrefs();
+    _controller = PageController();
+
+    // add last page here so we can define the callback for the start button
+    _pages.add(PveWelcomePageLast(onDone: () {
+      skipDone();
+    }));
+
+    _animController = AnimationController(
+      duration: _pageChangeDuration,
+      vsync: this,
+    );
+    _animation = TweenSequence<Color>(colors).animate(_animController)
+      ..addListener(() {
+        setState(() {});
+      });
+
+    _controller.addListener(() {
+      setState(() {
+        _isLast = _controller.page.floor() == _pages.length - 1;
+        _isFirst = _controller.page.floor() == 0;
+      });
+    });
+  }
+
+  void skipDone() {
+    _setWelcomeSeen();
+    Navigator.pushReplacementNamed(context, '/');
+  }
+
+  Widget nextDoneButton() {
+    if (_isLast) {
+      return FlatButton(
+        textColor: _buttonTextColor,
+        disabledTextColor: _buttonDisabledTextColor,
+        child: Text(
+          "Done",
+        ),
+        onPressed: () {
+          skipDone();
+        },
+      );
+    } else {
+      return FlatButton(
+        child: Text("Next"),
+        textColor: _buttonTextColor,
+        disabledTextColor: _buttonDisabledTextColor,
+        onPressed: () {
+          _controller.nextPage(
+              duration: _pageChangeDuration, curve: _pageChangeCurve);
+        },
+      );
+    }
+  }
+
+  Widget skipPrevButton() {
+    if (_isFirst) {
+      return FlatButton(
+        textColor: _buttonTextColor,
+        disabledTextColor: _buttonDisabledTextColor,
+        onPressed: () {
+          skipDone();
+        },
+        child: Text(
+          'Skip',
+        ),
+      );
+    } else {
+      return FlatButton(
+        textColor: _buttonTextColor,
+        disabledTextColor: _buttonDisabledTextColor,
+        child: Text(
+          "Prev",
+        ),
+        onPressed: () {
+          _controller.previousPage(
+              duration: _pageChangeDuration, curve: _pageChangeCurve);
+        },
+      );
+    }
+  }
+
+  @override
+  Widget build(BuildContext context) {
+    return Scaffold(
+      backgroundColor: _animation.value,
+      body: DefaultTextStyle(
+        style: TextStyle(color: Colors.white, fontSize: 18),
+        child: Column(
+          children: [
+            Expanded(
+              child: PageView.builder(
+                controller: _controller,
+                itemCount: _pages.length,
+                onPageChanged: ((int index) {
+                  _animController.animateTo(index / colors.length);
+                }),
+                itemBuilder: (context, index) {
+                  return _pages[index];
+                },
+              ),
+            ),
+            Row(
+              mainAxisAlignment: MainAxisAlignment.spaceBetween,
+              children: [
+                skipPrevButton(),
+                DotIndicator(
+                  controller: _controller,
+                  itemCount: _pages.length,
+                  onPageSelected: (int page) {
+                    _controller.animateToPage(page,
+                        duration: _pageChangeDuration, curve: _pageChangeCurve);
+                  },
+                ),
+                nextDoneButton(),
+              ],
+            ),
+          ],
+        ),
+      ),
+    );
+  }
+}
diff --git a/pubspec.yaml b/pubspec.yaml
index d31eb74..09fa250 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -61,6 +61,7 @@ flutter:
     - assets/images/Proxmox_logo_white_orange_800.png
     - assets/images/Proxmox-logo-symbol-white-orange.png
     - assets/images/proxmox_logo_icon_white.png
+    - assets/images/ssl_validate/
 
   # An image asset can refer to one or more resolution-specific "variants", see
   # https://flutter.dev/assets-and-images/#resolution-aware.
-- 
2.20.1





^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [pve-devel] [PATCH pve_flutter_frontend 1/3] add class for Proxmox corporate identity colors
  2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 1/3] add class for Proxmox corporate identity colors Aaron Lauterer
@ 2020-09-30 10:54   ` Tim Marx
  2020-09-30 11:13     ` Aaron Lauterer
  0 siblings, 1 reply; 10+ messages in thread
From: Tim Marx @ 2020-09-30 10:54 UTC (permalink / raw)
  To: Proxmox VE development discussion, Aaron Lauterer


> Aaron Lauterer <a.lauterer@proxmox.com> hat am 28.09.2020 14:28 geschrieben:
> 
>  
> Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
> ---
>  lib/main.dart                              |  3 ++-
>  lib/utils/promox_colors.dart               | 10 ++++++++++
>  lib/widgets/pve_guest_overview_header.dart |  3 ++-
>  lib/widgets/pve_node_overview.dart         |  3 ++-
>  4 files changed, 16 insertions(+), 3 deletions(-)
>  create mode 100644 lib/utils/promox_colors.dart
> 
> diff --git a/lib/main.dart b/lib/main.dart
> index d720225..8cd6c36 100644
> --- a/lib/main.dart
> +++ b/lib/main.dart
> @@ -28,6 +28,7 @@ import 'package:pve_flutter_frontend/widgets/pve_lxc_overview.dart';
>  import 'package:pve_flutter_frontend/widgets/pve_node_overview.dart';
>  import 'package:pve_flutter_frontend/widgets/pve_qemu_overview.dart';
>  import 'package:pve_flutter_frontend/widgets/pve_splash_screen.dart';
> +import 'utils/promox_colors.dart';
>  
>  void main() async {
>    WidgetsFlutterBinding.ensureInitialized();
> @@ -91,7 +92,7 @@ class MyApp extends StatelessWidget {
>            brightness: Brightness.light,
>            fontFamily: "Open Sans",
>            primarySwatch: Colors.blue,
> -          primaryColor: Color(0xFF00617F),
> +          primaryColor: ProxmoxColors.supportBlue,
>            primaryTextTheme: TextTheme(
>              headline6:
>                  TextStyle(fontFamily: "Open Sans", fontWeight: FontWeight.w700),
> diff --git a/lib/utils/promox_colors.dart b/lib/utils/promox_colors.dart
> new file mode 100644
> index 0000000..f45ef3d
> --- /dev/null
> +++ b/lib/utils/promox_colors.dart
> @@ -0,0 +1,10 @@
> +import 'package:flutter/material.dart';
> +
> +class ProxmoxColors {
> +  static final Color orange = Color(0xFFE57000);
> +  static final Color black = Color(0xFF000000);
> +  static final Color supportLightOrange = Color(0xFFFF9100);
> +  static final Color supportGrey = Color(0xFFABBABA);
> +  static final Color supportBlue = Color(0xFF00617F);
> +  static final Color supportDarkGrey = Color(0xFF464D4D);
> +}

With the exception of supportBlue (why support?) none of these colors are used why should we add them if they aren't used anywhere?

Black is definitely not a color we need to define.

> diff --git a/lib/widgets/pve_guest_overview_header.dart b/lib/widgets/pve_guest_overview_header.dart
> index c5bff16..8ed9d5d 100644
> --- a/lib/widgets/pve_guest_overview_header.dart
> +++ b/lib/widgets/pve_guest_overview_header.dart
> @@ -4,6 +4,7 @@ import 'package:built_collection/built_collection.dart';
>  import 'package:flutter/material.dart';
>  import 'package:font_awesome_flutter/font_awesome_flutter.dart';
>  import 'package:proxmox_dart_api_client/proxmox_dart_api_client.dart';
> +import 'package:pve_flutter_frontend/utils/promox_colors.dart';
>  import 'package:pve_flutter_frontend/utils/renderers.dart';
>  import 'package:pve_flutter_frontend/widgets/pve_guest_icon_widget.dart';
>  
> @@ -41,7 +42,7 @@ class PveGuestOverviewHeader extends StatelessWidget {
>        height: 250,
>        width: width,
>        decoration: BoxDecoration(
> -        color: Color(0xFF00617F),
> +        color: ProxmoxColors.supportBlue,
>        ),
>        child: Stack(
>            fit: StackFit.expand,
> diff --git a/lib/widgets/pve_node_overview.dart b/lib/widgets/pve_node_overview.dart
> index e193193..f7c334b 100644
> --- a/lib/widgets/pve_node_overview.dart
> +++ b/lib/widgets/pve_node_overview.dart
> @@ -5,6 +5,7 @@ import 'package:pve_flutter_frontend/bloc/pve_node_overview_bloc.dart';
>  import 'package:pve_flutter_frontend/bloc/pve_task_log_bloc.dart';
>  import 'package:pve_flutter_frontend/states/pve_node_overview_state.dart';
>  import 'package:pve_flutter_frontend/states/pve_task_log_state.dart';
> +import 'package:pve_flutter_frontend/utils/promox_colors.dart';
>  import 'package:pve_flutter_frontend/utils/renderers.dart';
>  import 'package:pve_flutter_frontend/utils/utils.dart';
>  import 'package:pve_flutter_frontend/widgets/proxmox_capacity_indicator.dart';
> @@ -46,7 +47,7 @@ class PveNodeOverview extends StatelessWidget {
>                  overflow: TextOverflow.ellipsis,
>                ),
>              ),
> -            backgroundColor: Color(0xFF00617F),
> +            backgroundColor: ProxmoxColors.supportBlue,
>              body: SingleChildScrollView(
>                child: Column(
>                  children: <Widget>[
> -- 
> 2.20.1
> 
> 
> 
> _______________________________________________
> pve-devel mailing list
> pve-devel@lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [pve-devel] [PATCH pve_flutter_frontend 2/3] add Proxmox symbol logo white orange
  2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 2/3] add Proxmox symbol logo white orange Aaron Lauterer
@ 2020-09-30 11:08   ` Tim Marx
  2020-09-30 11:22     ` Aaron Lauterer
  0 siblings, 1 reply; 10+ messages in thread
From: Tim Marx @ 2020-09-30 11:08 UTC (permalink / raw)
  To: Proxmox VE development discussion, Aaron Lauterer

I think there is something wrong with the resolution here, the x3 seems far bigger and height values are slightly wrong as well.

> Aaron Lauterer <a.lauterer@proxmox.com> hat am 28.09.2020 14:28 geschrieben:
> 
>  
> Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
> ---
>  .../2.0x/Proxmox-logo-symbol-white-orange.png   | Bin 0 -> 18270 bytes
>  .../3.0x/Proxmox-logo-symbol-white-orange.png   | Bin 0 -> 44381 bytes
>  .../images/Proxmox-logo-symbol-white-orange.png | Bin 0 -> 9199 bytes
>  pubspec.yaml                                    |   1 +
>  4 files changed, 1 insertion(+)
>  create mode 100644 assets/images/2.0x/Proxmox-logo-symbol-white-orange.png
>  create mode 100644 assets/images/3.0x/Proxmox-logo-symbol-white-orange.png
>  create mode 100644 assets/images/Proxmox-logo-symbol-white-orange.png




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [pve-devel] [PATCH pve_flutter_frontend 1/3] add class for Proxmox corporate identity colors
  2020-09-30 10:54   ` Tim Marx
@ 2020-09-30 11:13     ` Aaron Lauterer
  0 siblings, 0 replies; 10+ messages in thread
From: Aaron Lauterer @ 2020-09-30 11:13 UTC (permalink / raw)
  To: Tim Marx, Proxmox VE development discussion



On 9/30/20 12:54 PM, Tim Marx wrote:
[...]
>> diff --git a/lib/utils/promox_colors.dart b/lib/utils/promox_colors.dart
>> new file mode 100644
>> index 0000000..f45ef3d
>> --- /dev/null
>> +++ b/lib/utils/promox_colors.dart
>> @@ -0,0 +1,10 @@
>> +import 'package:flutter/material.dart';
>> +
>> +class ProxmoxColors {
>> +  static final Color orange = Color(0xFFE57000);
>> +  static final Color black = Color(0xFF000000);
>> +  static final Color supportLightOrange = Color(0xFFFF9100);
>> +  static final Color supportGrey = Color(0xFFABBABA);
>> +  static final Color supportBlue = Color(0xFF00617F);
>> +  static final Color supportDarkGrey = Color(0xFF464D4D);
>> +}
> 
> With the exception of supportBlue (why support?) none of these colors are used why should we add them if they aren't used anywhere?
> 
Having all company CI (corporate identity) colors readily available helps to avoid choosing some random color if a CI color would be appropriate as well as having to look them up manually.

The colors are taken from the Brand Guidelines [0] and besides black and orange, which are the main colors, they are categorized as "supporting" colors. I wanted to have that distinction in some way.

More colors are used in the welcome screen to have changing background colors.

> Black is definitely not a color we need to define.

With the idea of having all company colors collected in one place, I would make the argument, that black should be part of it. If defined as Color(0xFF000000) or as Colors.black might be another discussion.



[0] https://www.proxmox.com/en/news/media-kit




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [pve-devel] [PATCH pve_flutter_frontend 2/3] add Proxmox symbol logo white orange
  2020-09-30 11:08   ` Tim Marx
@ 2020-09-30 11:22     ` Aaron Lauterer
  0 siblings, 0 replies; 10+ messages in thread
From: Aaron Lauterer @ 2020-09-30 11:22 UTC (permalink / raw)
  To: Tim Marx, Proxmox VE development discussion



On 9/30/20 1:08 PM, Tim Marx wrote:
> I think there is something wrong with the resolution here, the x3 seems far bigger and height values are slightly wrong as well.

Thanks for noticing. Yep I made that a 4x by accident.

> 
>> Aaron Lauterer <a.lauterer@proxmox.com> hat am 28.09.2020 14:28 geschrieben:
>>
>>   
>> Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
>> ---
>>   .../2.0x/Proxmox-logo-symbol-white-orange.png   | Bin 0 -> 18270 bytes
>>   .../3.0x/Proxmox-logo-symbol-white-orange.png   | Bin 0 -> 44381 bytes
>>   .../images/Proxmox-logo-symbol-white-orange.png | Bin 0 -> 9199 bytes
>>   pubspec.yaml                                    |   1 +
>>   4 files changed, 1 insertion(+)
>>   create mode 100644 assets/images/2.0x/Proxmox-logo-symbol-white-orange.png
>>   create mode 100644 assets/images/3.0x/Proxmox-logo-symbol-white-orange.png
>>   create mode 100644 assets/images/Proxmox-logo-symbol-white-orange.png




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [pve-devel] [PATCH pve_flutter_frontend 3/3] Add first welcome screen
  2020-09-28 13:41   ` Aaron Lauterer
@ 2020-09-30 12:04     ` Tim Marx
  0 siblings, 0 replies; 10+ messages in thread
From: Tim Marx @ 2020-09-30 12:04 UTC (permalink / raw)
  To: Proxmox VE development discussion, Aaron Lauterer

comments inline
> Aaron Lauterer <a.lauterer@proxmox.com> hat am 28.09.2020 15:41 geschrieben:
> 
>  
> Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
> ---
> Same patch without temp png files.
> 
> Thanks @Dominik for noticing
> 
>  .../ssl_validate/login_manager_screen.png     | Bin 0 -> 20389 bytes
>  .../login_manager_screen_settings.png         | Bin 0 -> 37362 bytes
>  lib/main.dart                                 |  14 +-
>  lib/utils/dot_indicators.dart                 |  67 ++++++
>  .../pve_welcome_common.dart                   |  48 +++++
>  .../firstWelcomeScreen/pve_welcome_faq.dart   |  56 +++++
>  .../firstWelcomeScreen/pve_welcome_last.dart  |  66 ++++++
>  .../firstWelcomeScreen/pve_welcome_logo.dart  |  33 +++
>  .../pve_welcome_ssl_hint.dart                 |  51 +++++
>  lib/widgets/pve_first_welcome_screen.dart     | 193 ++++++++++++++++++
>  pubspec.yaml                                  |   1 +
>  11 files changed, 528 insertions(+), 1 deletion(-)
>  create mode 100644 assets/images/ssl_validate/login_manager_screen.png
>  create mode 100644 assets/images/ssl_validate/login_manager_screen_settings.png
>  create mode 100644 lib/utils/dot_indicators.dart
>  create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_common.dart
>  create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart
>  create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_last.dart
>  create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart
>  create mode 100644 lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart
>  create mode 100644 lib/widgets/pve_first_welcome_screen.dart
> 
> diff --git a/lib/main.dart b/lib/main.dart
> index 8cd6c36..57ad39c 100644
> --- a/lib/main.dart
> +++ b/lib/main.dart
> @@ -1,6 +1,8 @@
>  import 'package:flutter/foundation.dart';
>  import 'package:flutter/material.dart';
>  import 'package:provider/provider.dart';
> +import 'package:pve_flutter_frontend/widgets/pve_first_welcome_screen.dart';
> +import 'package:shared_preferences/shared_preferences.dart';
>  import 'package:proxmox_login_manager/proxmox_login_manager.dart';
>  import 'package:pve_flutter_frontend/bloc/pve_authentication_bloc.dart';
>  import 'package:pve_flutter_frontend/bloc/pve_cluster_status_bloc.dart';
> @@ -47,6 +49,7 @@ void main() async {
>      FlutterError.dumpErrorToConsole(details);
>      if (kReleaseMode) ProxmoxGlobalErrorBloc().addError(details.exception);
>    };
> +  SharedPreferences sharedPreferences = await SharedPreferences.getInstance();
>    Provider.debugCheckInvalidValueType = null;
>  
>    runApp(
> @@ -60,6 +63,7 @@ void main() async {
>        ],
>        child: MyApp(
>          authbloc: authBloc,
> +        sharedPreferences: sharedPreferences,
>        ),
>      ),
>    );
> @@ -67,9 +71,12 @@ void main() async {
>  
>  class MyApp extends StatelessWidget {
>    final PveAuthenticationBloc authbloc;
> +  final SharedPreferences sharedPreferences;
>    final GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();
>  
> -  MyApp({Key key, this.authbloc}) : super(key: key);
> +  MyApp({Key key, this.authbloc, this.sharedPreferences})
> +      : assert(sharedPreferences != null),
> +        super(key: key);
>  
>    @override
>    Widget build(BuildContext context) {
> @@ -142,6 +149,11 @@ class MyApp extends StatelessWidget {
>                builder: (context) => PveSplashScreen(),
>              );
>            }
> +          if (sharedPreferences.getBool('showWelcomeScreen') ?? true) {
> +            return MaterialPageRoute(
> +              builder: (context) => PveWelcome(),
> +            );
> +          }
>  
>            if (authbloc.state.value is Unauthenticated ||
>                context.name == '/login') {
> diff --git a/lib/utils/dot_indicators.dart b/lib/utils/dot_indicators.dart
Why is the file called ..._indicators? 
The class is called DotIndicator.

> new file mode 100644
> index 0000000..7b5034f
> --- /dev/null
> +++ b/lib/utils/dot_indicators.dart
> @@ -0,0 +1,67 @@
> +import 'package:flutter/cupertino.dart';
> +import 'package:flutter/material.dart';
> +import 'dart:math';
> +
> +class DotIndicator extends AnimatedWidget {
> +  DotIndicator({
> +    this.controller,
> +    this.itemCount,
> +    this.onPageSelected,
> +    this.color: Colors.white,
> +  }) : super(listenable: controller);
> +
> +  final PageController controller;
> +

it seems wrong to add a PageController dependency to a widget called DotIndicator, just pass the current page index.


> +  final int itemCount;
> +
> +  final ValueChanged<int> onPageSelected;
> +  final Color color;
> +
> +  static const double _dotSize = 8.0;
> +  static const double _maxZoom = 1.2;
> +  static const double _dotSpacing = 25.0;
> +
> +  Widget _buildDot(int index) {
> +    double selectedness = Curves.easeOut.transform(
> +      max(
> +        0.0,
> +        1.0 - ((controller.page ?? controller.initialPage) - index).abs(),
> +      ),
> +    );
> +    double zoom = 1.0 + (_maxZoom - 1.0) * selectedness;
> +    double shadowBlurRadius = 4.0 * selectedness;
> +    double shadowSpreadRadius = 1.0 * selectedness;
> +    return new Container(
> +      width: _dotSpacing,
> +      child: Center(
> +        child: Container(
> +          width: _dotSize * zoom,
> +          height: _dotSize * zoom,
> +          child: InkWell(
> +            onTap: () => onPageSelected(index),
> +          ),

An InkWell is only used when you want that specific animation, but in your case the animation can't be seen. 
Would be great to see that animation or just use a GestureDetector.

> +          decoration: BoxDecoration(
> +            color: color,
> +            shape: BoxShape.circle,
> +            boxShadow: [
> +              BoxShadow(
> +                  color: Colors.white.withOpacity(0.72),
> +                  blurRadius: shadowBlurRadius,
> +                  spreadRadius: shadowSpreadRadius,
> +                  offset: Offset(0.0, 0.0))
> +            ],
> +          ),
> +        ),
> +      ),
> +    );
> +  }
> +
^^^^
That screams for, extract widget :D

> +  Widget build(BuildContext contect) {
> +    return Row(
> +        mainAxisAlignment: MainAxisAlignment.center,
> +        children: List<Widget>.generate(
> +          itemCount,
> +          _buildDot,
> +        ));
> +  }
> +}
> diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_common.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_common.dart
> new file mode 100644
> index 0000000..52055f9
> --- /dev/null
> +++ b/lib/widgets/firstWelcomeScreen/pve_welcome_common.dart
> @@ -0,0 +1,48 @@
> +import 'package:flutter/material.dart';
> +
> +class PveQuestion extends StatelessWidget {
> +  const PveQuestion({
> +    Key key,
> +    this.text,
> +  }) : super(key: key);
> +
> +  final String text;
> +
> +  @override
> +  Widget build(BuildContext context) {
> +    return Padding(
> +      padding: EdgeInsets.fromLTRB(10.0, 10.0, 5.0, 0.0),
> +      child: Text(
> +        text,
> +        style: TextStyle(
> +          fontWeight: FontWeight.bold,
> +        ),
> +      ),
> +    );
> +  }
> +}
> +
> +class PveAnswer extends StatelessWidget {
> +  const PveAnswer({
> +    Key key,
> +    this.text,
> +    this.spans,
> +  }) : super(key: key);
> +
> +  final String text;
> +  final List<TextSpan> spans;
> +
> +  @override
> +  Widget build(BuildContext context) {
> +    return Padding(
> +      padding: EdgeInsets.fromLTRB(20.0, 5.0, 5.0, 5.0),
> +      child: RichText(
> +        text: TextSpan(
> +          text: text,
> +          style: DefaultTextStyle.of(context).style,
> +          children: spans,
> +        ),
> +      ),
> +    );
> +  }
> +}
> diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart
> new file mode 100644
> index 0000000..65f931c
> --- /dev/null
> +++ b/lib/widgets/firstWelcomeScreen/pve_welcome_faq.dart
> @@ -0,0 +1,56 @@
> +import 'package:flutter/material.dart';
> +import 'package:url_launcher/url_launcher.dart';
> +import 'package:flutter/gestures.dart';
> +import 'pve_welcome_common.dart';
> +
> +// FAQ
> +class PveWelcomePageFAQ extends StatelessWidget {
> +  const PveWelcomePageFAQ({
> +    Key key,
> +  }) : super(key: key);
> +
> +  @override
> +  Widget build(BuildContext context) {
> +    return Column(
> +      mainAxisAlignment: MainAxisAlignment.center,
> +      crossAxisAlignment: CrossAxisAlignment.start,
> +      children: [
> +        PveQuestion(
> +            text: "How do I connect if I am not using the default port 8006?"),
> +        PveAnswer(
> +            text:
> +                "Add the port at the end, separated by a colon. For the default https port add 443."),
> +        PveAnswer(
> +          text: "For example: 192.168.1.10",
> +          spans: [
> +            TextSpan(
> +                text: ":443",
> +                style: TextStyle(
> +                    fontWeight: FontWeight.bold, fontStyle: FontStyle.italic))
> +          ],
> +        ),
> +        PveQuestion(
> +          text: "What about remote consoles?",
> +        ),
> +        PveAnswer(
> +            text:
> +                "Spice is currently supported. We plan to integrate VNC in the future."),
> +        PveQuestion(text: "Which Spice client works?"),
> +        PveAnswer(
> +          text: "The ",
> +          spans: [
> +            TextSpan(
> +                text: "Opague Spice client",
> +                style: TextStyle(decoration: TextDecoration.underline),
> +                recognizer: TapGestureRecognizer()
> +                  ..onTap = () => {
> +                        launch(
> +                            'https://play.google.com/store/apps/details?id=com.undatech.opaque')
> +                      }),
> +            TextSpan(text: " works. We will support more in the future.")
> +          ],
> +        )
> +      ],
> +    );
> +  }
> +}
> diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_last.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_last.dart
> new file mode 100644
> index 0000000..cf34224
> --- /dev/null
> +++ b/lib/widgets/firstWelcomeScreen/pve_welcome_last.dart
> @@ -0,0 +1,66 @@
> +import 'package:flutter/material.dart';
> +import 'package:url_launcher/url_launcher.dart';
> +import 'package:flutter/gestures.dart';
> +import '../../utils/promox_colors.dart';
> +
> +// goodbye
> +class PveWelcomePageLast extends StatelessWidget {
> +  const PveWelcomePageLast({Key key, this.onDone}) : super(key: key);
> +
> +  final VoidCallback onDone;
> +
> +  @override
> +  Widget build(BuildContext context) {
> +    return Padding(
> +        padding: EdgeInsets.all(15.0),
> +        child: Column(
> +          mainAxisAlignment: MainAxisAlignment.center,
> +          children: [
> +            Text("Enjoy the app"),
> +            Padding(
> +              padding: const EdgeInsets.all(8.0),
> +              child: Icon(
> +                Icons.emoji_people_rounded,
> +                color: Colors.white,
> +                size: 70,
> +              ),
> +            ),
> +            Padding(
> +              padding: const EdgeInsets.all(8.0),
> +              child: RaisedButton(
> +                onPressed: () => {onDone()},
> +                color: ProxmoxColors.orange,
> +                textColor: Colors.white,
> +                child: Text("Start"),
> +              ),
> +            ),
> +            RichText(
> +              textAlign: TextAlign.center,
> +              text: TextSpan(
> +                text: "Please use our ",
> +                style: DefaultTextStyle.of(context).style,
> +                children: <TextSpan>[
> +                  TextSpan(
> +                      text: 'community forum',
> +                      style: TextStyle(decoration: TextDecoration.underline),
> +                      recognizer: TapGestureRecognizer()
> +                        ..onTap = () => {launch('https://forum.proxmox.com')}),
> +                  TextSpan(text: ' or the '),
> +                  TextSpan(
> +                      text: 'user mailing list',
> +                      style: TextStyle(decoration: TextDecoration.underline),
> +                      recognizer: TapGestureRecognizer()
> +                        ..onTap = () => {
> +                              launch(
> +                                  'https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-user')
> +                            }),
> +                  TextSpan(
> +                      text:
> +                          ' if you have suggestions or experience any problems.'),
> +                ],
> +              ),
> +            ),
> +          ],
> +        ));
> +  }
> +}
> diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart
> new file mode 100644
> index 0000000..3aee19a
> --- /dev/null
> +++ b/lib/widgets/firstWelcomeScreen/pve_welcome_logo.dart
> @@ -0,0 +1,33 @@
> +import 'package:flutter/material.dart';
> +
> +// Big Logo
> +class PveWelcomePageLogo extends StatelessWidget {
> +  const PveWelcomePageLogo({
> +    Key key,
> +  }) : super(key: key);
> +
> +  @override
> +  Widget build(BuildContext context) {
> +    return Column(
> +        mainAxisAlignment: MainAxisAlignment.center,
> +        crossAxisAlignment: CrossAxisAlignment.center,
> +        children: [
> +          Padding(
> +            padding: const EdgeInsets.fromLTRB(120.0, 0.0, 120.0, 30.0),
> +            child: Image.asset(
> +              'assets/images/Proxmox-logo-symbol-white-orange.png',
> +              alignment: Alignment.center,
> +            ),
> +          ),
> +          FittedBox(
> +            child: Padding(
> +              padding: const EdgeInsets.all(8.0),
> +              child: Text(
> +                'Proxmox Virtual Environment',
> +                style: TextStyle(fontSize: 26),
> +              ),
> +            ),
> +          ),
> +        ]);
> +  }
> +}
> diff --git a/lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart b/lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart
> new file mode 100644
> index 0000000..61d02f4
> --- /dev/null
> +++ b/lib/widgets/firstWelcomeScreen/pve_welcome_ssl_hint.dart
> @@ -0,0 +1,51 @@
> +import 'package:flutter/material.dart';
> +import 'pve_welcome_common.dart';
> +
> +// disable ssl validation hint
> +class PveWelcomePageSSLValidation extends StatelessWidget {
> +  const PveWelcomePageSSLValidation({
> +    Key key,
> +  }) : super(key: key);
> +
> +  @override
> +  Widget build(BuildContext context) {
> +    return Padding(
> +      padding: EdgeInsets.all(15.0),
> +      child: Column(
> +        mainAxisAlignment: MainAxisAlignment.center,
> +        crossAxisAlignment: CrossAxisAlignment.start,
> +        children: [
> +          PveQuestion(
> +            text: "Are you using a self signed certificate?",
> +          ),
> +          PveAnswer(
> +              text: "Disable SSL Validation in the Login Manager settings."),
> +          Column(
> +            children: [
> +              Padding(
> +                padding: const EdgeInsets.all(8.0),
> +                child: Container(
> +                  decoration: BoxDecoration(
> +                      border: Border.all(color: Colors.white, width: 0.5)),
> +                  child: Image.asset(
> +                    'assets/images/ssl_validate/login_manager_screen.png',
> +                  ),
> +                ),
> +              ),
> +              Padding(
> +                padding: const EdgeInsets.all(8.0),
> +                child: Container(
> +                  decoration: BoxDecoration(
> +                      border: Border.all(color: Colors.white, width: 0.5)),
> +                  child: Image.asset(
> +                    'assets/images/ssl_validate/login_manager_screen_settings.png',
> +                  ),
> +                ),
> +              ),
> +            ],
> +          )
> +        ],
> +      ),
> +    );
> +  }
> +}

All those screens aren't scrollable, if someone uses a tiny device the content will be cut. -> SingleChildScrollview

Use package imports not local ones.

I don't like the link clicking web style, this is an App link clicking is for web or when you have a mouse please remove that and use buttons/icon buttons etc.


> diff --git a/lib/widgets/pve_first_welcome_screen.dart b/lib/widgets/pve_first_welcome_screen.dart
> new file mode 100644
> index 0000000..83fe399
> --- /dev/null
> +++ b/lib/widgets/pve_first_welcome_screen.dart
> @@ -0,0 +1,193 @@
> +import 'dart:ui';
> +
> +import 'package:flutter/material.dart';
> +import 'package:flutter/rendering.dart';
> +import 'package:shared_preferences/shared_preferences.dart';
> +import '../utils/dot_indicators.dart';
> +import '../utils/promox_colors.dart';
> +import 'firstWelcomeScreen/pve_welcome_logo.dart';
> +import 'firstWelcomeScreen/pve_welcome_faq.dart';
> +import 'firstWelcomeScreen/pve_welcome_ssl_hint.dart';
> +import 'firstWelcomeScreen/pve_welcome_last.dart';
> +

use package imports not local ones.

> +class PveWelcome extends StatefulWidget {
> +  @override
> +  _PveWelcomeState createState() => _PveWelcomeState();
> +}
> +
> +class _PveWelcomeState extends State<PveWelcome> with TickerProviderStateMixin {
> +  PageController _controller;
> +  SharedPreferences _sharedPreferences;
> +
> +  final List<Widget> _pages = [
> +    PveWelcomePageLogo(),
> +    PveWelcomePageSSLValidation(),
> +    PveWelcomePageFAQ(),
> +  ];
> +
> +  // Duration for page change
> +  static const Duration _pageChangeDuration = Duration(milliseconds: 150);
> +  static const Curve _pageChangeCurve = Curves.easeInOut;
> +
> +  AnimationController _animController;
> +  Animation<Color> _animation;
> +
> +  final colors = <TweenSequenceItem<Color>>[
> +    TweenSequenceItem(
> +      weight: 1.0,
> +      tween: ColorTween(
> +          begin: ProxmoxColors.supportBlue, end: ProxmoxColors.supportDarkGrey),
> +    ),
> +    TweenSequenceItem(
> +      weight: 1.0,
> +      tween: ColorTween(
> +          begin: ProxmoxColors.supportDarkGrey, end: ProxmoxColors.orange),
> +    ),
> +    TweenSequenceItem(
> +      weight: 1.0,
> +      tween: ColorTween(
> +          begin: ProxmoxColors.orange, end: ProxmoxColors.supportBlue),
> +    ),
> +  ];
> +

I personally don't like the color changes between pages.

> +  bool _isLast = false;
> +  bool _isFirst = true;
> +
> +  final _buttonTextColor = Colors.white;
> +  final _buttonDisabledTextColor = Colors.white30;
> +
> +  void _getPrefs() async {
> +    _sharedPreferences = await SharedPreferences.getInstance();
> +  }
> +
Future<void> those are async functions and should therefore be marked as Futures
> +  void _setWelcomeSeen() async {
> +    _sharedPreferences.setBool('showWelcomeScreen', false);
> +  }
> +
Future<void> those are async functions and should therefore be marked as Futures
Typo Seen/Screen

> +  @override
> +  void initState() {
> +    super.initState();
> +
> +    _getPrefs();

This will actually result in a race condition, because this is an unawaited Future and is used in the skipDone function. You can't know that this will be completed when the user taps skip and this would result in a crash.

> +    _controller = PageController();
> +
> +    // add last page here so we can define the callback for the start button
> +    _pages.add(PveWelcomePageLast(onDone: () {
> +      skipDone();
> +    }));
> +
> +    _animController = AnimationController(
> +      duration: _pageChangeDuration,
> +      vsync: this,
> +    );
> +    _animation = TweenSequence<Color>(colors).animate(_animController)
> +      ..addListener(() {
> +        setState(() {});
> +      });
> +
> +    _controller.addListener(() {
> +      setState(() {
> +        _isLast = _controller.page.floor() == _pages.length - 1;
> +        _isFirst = _controller.page.floor() == 0;
> +      });
> +    });
> +  }
> +
> +  void skipDone() {
> +    _setWelcomeSeen();
> +    Navigator.pushReplacementNamed(context, '/');
> +  }
> +
> +  Widget nextDoneButton() {
> +    if (_isLast) {
> +      return FlatButton(
> +        textColor: _buttonTextColor,
> +        disabledTextColor: _buttonDisabledTextColor,
> +        child: Text(
> +          "Done",
> +        ),
> +        onPressed: () {
> +          skipDone();
> +        },
> +      );
> +    } else {
> +      return FlatButton(
> +        child: Text("Next"),
> +        textColor: _buttonTextColor,
> +        disabledTextColor: _buttonDisabledTextColor,
> +        onPressed: () {
> +          _controller.nextPage(
> +              duration: _pageChangeDuration, curve: _pageChangeCurve);
> +        },
> +      );
> +    }
> +  }
> +
> +  Widget skipPrevButton() {
> +    if (_isFirst) {
> +      return FlatButton(
> +        textColor: _buttonTextColor,
> +        disabledTextColor: _buttonDisabledTextColor,
> +        onPressed: () {
> +          skipDone();
> +        },
> +        child: Text(
> +          'Skip',
> +        ),
> +      );
> +    } else {
> +      return FlatButton(
> +        textColor: _buttonTextColor,
> +        disabledTextColor: _buttonDisabledTextColor,
> +        child: Text(
> +          "Prev",
> +        ),
> +        onPressed: () {
> +          _controller.previousPage(
> +              duration: _pageChangeDuration, curve: _pageChangeCurve);
> +        },
> +      );
> +    }
> +  }
> +
> +  @override
> +  Widget build(BuildContext context) {
> +    return Scaffold(
> +      backgroundColor: _animation.value,
> +      body: DefaultTextStyle(
> +        style: TextStyle(color: Colors.white, fontSize: 18),
> +        child: Column(
> +          children: [
> +            Expanded(
> +              child: PageView.builder(
> +                controller: _controller,
> +                itemCount: _pages.length,
> +                onPageChanged: ((int index) {
> +                  _animController.animateTo(index / colors.length);
> +                }),
> +                itemBuilder: (context, index) {
> +                  return _pages[index];
> +                },
> +              ),
> +            ),
> +            Row(
> +              mainAxisAlignment: MainAxisAlignment.spaceBetween,
> +              children: [
> +                skipPrevButton(),
> +                DotIndicator(
> +                  controller: _controller,
> +                  itemCount: _pages.length,
> +                  onPageSelected: (int page) {
> +                    _controller.animateToPage(page,
> +                        duration: _pageChangeDuration, curve: _pageChangeCurve);
> +                  },
> +                ),
> +                nextDoneButton(),
> +              ],
> +            ),
> +          ],
> +        ),
> +      ),
> +    );
> +  }
> +}
> diff --git a/pubspec.yaml b/pubspec.yaml
> index d31eb74..09fa250 100644
> --- a/pubspec.yaml
> +++ b/pubspec.yaml
> @@ -61,6 +61,7 @@ flutter:
>      - assets/images/Proxmox_logo_white_orange_800.png
>      - assets/images/Proxmox-logo-symbol-white-orange.png
>      - assets/images/proxmox_logo_icon_white.png
> +    - assets/images/ssl_validate/
>  
>    # An image asset can refer to one or more resolution-specific "variants", see
>    # https://flutter.dev/assets-and-images/#resolution-aware.
> -- 
> 2.20.1
> 
> 
> 
> _______________________________________________
> pve-devel mailing list
> pve-devel@lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel




^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2020-09-30 12:05 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-28 12:28 [pve-devel] [PATCH pve_flutter_frontend 0/3] Add first welcome screen Aaron Lauterer
2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 1/3] add class for Proxmox corporate identity colors Aaron Lauterer
2020-09-30 10:54   ` Tim Marx
2020-09-30 11:13     ` Aaron Lauterer
2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 2/3] add Proxmox symbol logo white orange Aaron Lauterer
2020-09-30 11:08   ` Tim Marx
2020-09-30 11:22     ` Aaron Lauterer
2020-09-28 12:28 ` [pve-devel] [PATCH pve_flutter_frontend 3/3] Add first welcome screen Aaron Lauterer
2020-09-28 13:41   ` Aaron Lauterer
2020-09-30 12:04     ` Tim Marx

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal