From: Shan Shaji <s.shaji@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [pve-devel] [PATCH pve_flutter_frontend 1/1] refactor: ui: add new settings page and use existing ssl toggle widget
Date: Fri, 1 Aug 2025 12:00:50 +0200 [thread overview]
Message-ID: <20250801100051.83035-2-s.shaji@proxmox.com> (raw)
In-Reply-To: <20250801100051.83035-1-s.shaji@proxmox.com>
The settings page UI was previously implemented in
proxmox_login_manager. A new screen has now been created with an added
route and removed the settings page from `proxmox_login_manager`.
This screen reuses the SSL toggle form from the
`proxmox_login_manager` package.
Signed-off-by: Shan Shaji <s.shaji@proxmox.com>
---
lib/main.dart | 8 ++++++++
lib/pages/pve_settings_page.dart | 23 +++++++++++++++++++++++
2 files changed, 31 insertions(+)
create mode 100644 lib/pages/pve_settings_page.dart
diff --git a/lib/main.dart b/lib/main.dart
index 6a7c5a9..0ffcae7 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -1,6 +1,7 @@
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
+import 'package:pve_flutter_frontend/pages/pve_settings_page.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';
@@ -227,6 +228,13 @@ class MyApp extends StatelessWidget {
);
}
+ if (context.name == PveSettingsPage.routePath) {
+ return MaterialPageRoute(
+ settings: context,
+ builder: (context) => PveSettingsPage(),
+ );
+ }
+
if (authbloc!.state.value is Unauthenticated ||
context.name == '/login') {
return MaterialPageRoute(
diff --git a/lib/pages/pve_settings_page.dart b/lib/pages/pve_settings_page.dart
new file mode 100644
index 0000000..0d405c1
--- /dev/null
+++ b/lib/pages/pve_settings_page.dart
@@ -0,0 +1,23 @@
+import 'package:flutter/material.dart';
+import 'package:proxmox_login_manager/proxmox_general_settings_form.dart';
+import 'package:pve_flutter_frontend/widgets/pve_app_bar.dart';
+
+class PveSettingsPage extends StatelessWidget {
+ static final routePath = '/settings';
+
+ const PveSettingsPage({super.key});
+
+ @override
+ Widget build(BuildContext context) {
+ return Scaffold(
+ appBar: PveAppBar(),
+ body: SingleChildScrollView(
+ child: Column(
+ children: [
+ ProxmoxGeneralSettingsForm(),
+ ],
+ ),
+ ),
+ );
+ }
+}
--
2.39.5
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
next prev parent reply other threads:[~2025-08-01 9:59 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-01 10:00 [pve-devel] [PATCH proxmox_login_manager/pve_flutter_frontend 0/2] refactor: ui: add new settings page in `pve_flutter_frontend` Shan Shaji
2025-08-01 10:00 ` Shan Shaji [this message]
2025-08-01 10:00 ` [pve-devel] [PATCH proxmox_login_manager 1/1] refactor: ui: move settings page to `pve_flutter_frontend` Shan Shaji
2025-08-13 13:56 ` [pve-devel] [PATCH proxmox_login_manager/pve_flutter_frontend 0/2] refactor: ui: add new settings page in `pve_flutter_frontend` Dominik Csapak
2025-08-14 8:15 ` Shan Shaji
2025-08-22 9:35 ` Thomas Lamprecht
2025-08-29 11:55 ` Shan Shaji
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250801100051.83035-2-s.shaji@proxmox.com \
--to=s.shaji@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox