public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [PATCH pve-manager 0/3] wireguard fabric node ui touch-ups
@ 2026-05-18 15:07 Hannes Laimer
  2026-05-18 15:07 ` [PATCH pve-manager 1/3] ui: sdn: improve wireguard node edit dialog with no interfaces Hannes Laimer
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Hannes Laimer @ 2026-05-18 15:07 UTC (permalink / raw)
  To: pve-devel

Small improvemnts to the wireguard node edit dialog, don't really depend
on eachother.

Hannes Laimer (3):
  ui: sdn: improve wireguard node edit dialog with no interfaces
  ui: sdn: avoid flicker when opening wireguard dialogs
  ui: sdn: skip delete confirmation for unsaved wireguard interfaces

 .../sdn/fabrics/wireguard/InterfacePanel.js   | 65 +++++++++++++++----
 .../sdn/fabrics/wireguard/NodeEdit.js         |  2 +
 2 files changed, 53 insertions(+), 14 deletions(-)

-- 
2.47.3





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

* [PATCH pve-manager 1/3] ui: sdn: improve wireguard node edit dialog with no interfaces
  2026-05-18 15:07 [PATCH pve-manager 0/3] wireguard fabric node ui touch-ups Hannes Laimer
@ 2026-05-18 15:07 ` Hannes Laimer
  2026-05-18 15:07 ` [PATCH pve-manager 2/3] ui: sdn: avoid flicker when opening wireguard dialogs Hannes Laimer
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Hannes Laimer @ 2026-05-18 15:07 UTC (permalink / raw)
  To: pve-devel

The list collapsed to a thin strip and the right pane stayed empty,
making the dialog look broken when none had been added yet.

Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
---
 .../sdn/fabrics/wireguard/InterfacePanel.js   | 31 +++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js b/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js
index 9db453a0..c3376011 100644
--- a/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js
+++ b/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js
@@ -162,6 +162,8 @@ Ext.define('PVE.sdn.Fabric.WireGuard.InterfacePanel', {
 
     xtype: 'pveSDNFabricWireGuardInterfacePanel',
 
+    minHeight: 200,
+
     layout: {
         type: 'hbox',
         align: 'stretch',
@@ -212,6 +214,10 @@ Ext.define('PVE.sdn.Fabric.WireGuard.InterfacePanel', {
                     flex: 1,
                     margin: '0 0 10 0',
                     hideHeaders: true,
+                    viewConfig: {
+                        emptyText: gettext('No interfaces configured'),
+                        deferEmptyText: false,
+                    },
                     columns: [
                         {
                             text: gettext('Name'),
@@ -280,6 +286,31 @@ Ext.define('PVE.sdn.Fabric.WireGuard.InterfacePanel', {
                 },
             ],
         },
+        {
+            xtype: 'panel',
+            border: false,
+            flex: 1,
+            width: 300,
+            layout: {
+                type: 'vbox',
+                pack: 'center',
+                align: 'center',
+            },
+            bind: {
+                hidden: '{selectedInterface}',
+            },
+            items: [
+                {
+                    xtype: 'component',
+                    html: gettext('Select an interface to configure, or add a new one.'),
+                    style: {
+                        color: '#888',
+                        'font-style': 'italic',
+                        'text-align': 'center',
+                    },
+                },
+            ],
+        },
         {
             xtype: 'form',
             border: false,
-- 
2.47.3





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

* [PATCH pve-manager 2/3] ui: sdn: avoid flicker when opening wireguard dialogs
  2026-05-18 15:07 [PATCH pve-manager 0/3] wireguard fabric node ui touch-ups Hannes Laimer
  2026-05-18 15:07 ` [PATCH pve-manager 1/3] ui: sdn: improve wireguard node edit dialog with no interfaces Hannes Laimer
@ 2026-05-18 15:07 ` Hannes Laimer
  2026-05-18 15:07 ` [PATCH pve-manager 3/3] ui: sdn: skip delete confirmation for unsaved wireguard interfaces Hannes Laimer
  2026-05-18 20:06 ` applied: [PATCH pve-manager 0/3] wireguard fabric node ui touch-ups Thomas Lamprecht
  3 siblings, 0 replies; 5+ messages in thread
From: Hannes Laimer @ 2026-05-18 15:07 UTC (permalink / raw)
  To: pve-devel

Without `hidden: true` fields appeard shortly before being hidden again
by the bind.

Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
---
 www/manager6/sdn/fabrics/wireguard/InterfacePanel.js | 2 ++
 www/manager6/sdn/fabrics/wireguard/NodeEdit.js       | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js b/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js
index c3376011..65399451 100644
--- a/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js
+++ b/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js
@@ -291,6 +291,7 @@ Ext.define('PVE.sdn.Fabric.WireGuard.InterfacePanel', {
             border: false,
             flex: 1,
             width: 300,
+            hidden: true,
             layout: {
                 type: 'vbox',
                 pack: 'center',
@@ -317,6 +318,7 @@ Ext.define('PVE.sdn.Fabric.WireGuard.InterfacePanel', {
             flex: 1,
             width: 300,
             padding: 4,
+            hidden: true,
             items: [
                 {
                     xtype: 'proxmoxtextfield',
diff --git a/www/manager6/sdn/fabrics/wireguard/NodeEdit.js b/www/manager6/sdn/fabrics/wireguard/NodeEdit.js
index 26c86bda..9c9d2ce9 100644
--- a/www/manager6/sdn/fabrics/wireguard/NodeEdit.js
+++ b/www/manager6/sdn/fabrics/wireguard/NodeEdit.js
@@ -33,6 +33,7 @@ Ext.define('PVE.sdn.Fabric.WireGuard.Node.Edit', {
             fieldLabel: gettext('Name'),
             labelWidth: 120,
             name: 'node_id',
+            hidden: true,
             bind: {
                 hidden: '{current.isPveNode}',
                 disabled: '{disableNameField}',
@@ -47,6 +48,7 @@ Ext.define('PVE.sdn.Fabric.WireGuard.Node.Edit', {
             emptyText: gettext('base64-encoded WireGuard public key'),
             regex: /^[A-Za-z0-9+/]{43}=$/,
             regexText: gettext('WireGuard public key must be 44 base64 characters'),
+            hidden: true,
             bind: {
                 hidden: '{current.isPveNode}',
                 disabled: '{current.isPveNode}',
-- 
2.47.3





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

* [PATCH pve-manager 3/3] ui: sdn: skip delete confirmation for unsaved wireguard interfaces
  2026-05-18 15:07 [PATCH pve-manager 0/3] wireguard fabric node ui touch-ups Hannes Laimer
  2026-05-18 15:07 ` [PATCH pve-manager 1/3] ui: sdn: improve wireguard node edit dialog with no interfaces Hannes Laimer
  2026-05-18 15:07 ` [PATCH pve-manager 2/3] ui: sdn: avoid flicker when opening wireguard dialogs Hannes Laimer
@ 2026-05-18 15:07 ` Hannes Laimer
  2026-05-18 20:06 ` applied: [PATCH pve-manager 0/3] wireguard fabric node ui touch-ups Thomas Lamprecht
  3 siblings, 0 replies; 5+ messages in thread
From: Hannes Laimer @ 2026-05-18 15:07 UTC (permalink / raw)
  To: pve-devel

Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
---
 .../sdn/fabrics/wireguard/InterfacePanel.js   | 32 +++++++++++--------
 1 file changed, 18 insertions(+), 14 deletions(-)

diff --git a/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js b/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js
index 65399451..60f951b9 100644
--- a/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js
+++ b/www/manager6/sdn/fabrics/wireguard/InterfacePanel.js
@@ -239,6 +239,23 @@ Ext.define('PVE.sdn.Fabric.WireGuard.InterfacePanel', {
                                         _e,
                                         rec,
                                     ) {
+                                        let removeRecord = () => {
+                                            let grid = table.up('grid[reference=interfaceGrid]');
+
+                                            let updateSelection = grid.getSelection().includes(rec);
+
+                                            grid.getStore().remove(rec);
+
+                                            if (updateSelection) {
+                                                grid.setSelection(grid.getStore().first());
+                                            }
+                                        };
+
+                                        if (rec.data.isCreate) {
+                                            removeRecord();
+                                            return;
+                                        }
+
                                         Ext.Msg.show({
                                             title: gettext('Confirm'),
                                             icon: Ext.Msg.WARNING,
@@ -254,20 +271,7 @@ Ext.define('PVE.sdn.Fabric.WireGuard.InterfacePanel', {
                                                 if (btn !== 'yes') {
                                                     return;
                                                 }
-
-                                                let grid = table.up(
-                                                    'grid[reference=interfaceGrid]',
-                                                );
-
-                                                let updateSelection = grid
-                                                    .getSelection()
-                                                    .includes(rec);
-
-                                                grid.getStore().remove(rec);
-
-                                                if (updateSelection) {
-                                                    grid.setSelection(grid.getStore().first());
-                                                }
+                                                removeRecord();
                                             },
                                         });
                                     },
-- 
2.47.3





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

* applied: [PATCH pve-manager 0/3] wireguard fabric node ui touch-ups
  2026-05-18 15:07 [PATCH pve-manager 0/3] wireguard fabric node ui touch-ups Hannes Laimer
                   ` (2 preceding siblings ...)
  2026-05-18 15:07 ` [PATCH pve-manager 3/3] ui: sdn: skip delete confirmation for unsaved wireguard interfaces Hannes Laimer
@ 2026-05-18 20:06 ` Thomas Lamprecht
  3 siblings, 0 replies; 5+ messages in thread
From: Thomas Lamprecht @ 2026-05-18 20:06 UTC (permalink / raw)
  To: pve-devel, Hannes Laimer

On Mon, 18 May 2026 17:07:44 +0200, Hannes Laimer wrote:
> Small improvemnts to the wireguard node edit dialog, don't really depend
> on eachother.
> 
> Hannes Laimer (3):
>   ui: sdn: improve wireguard node edit dialog with no interfaces
>   ui: sdn: avoid flicker when opening wireguard dialogs
>   ui: sdn: skip delete confirmation for unsaved wireguard interfaces
> 
> [...]

Applied, thanks!

[1/3] ui: sdn: improve wireguard node edit dialog with no interfaces
      commit: f89e0b4c872de778d673e6fdc998029a26c5cd19
[2/3] ui: sdn: avoid flicker when opening wireguard dialogs
      commit: 1b5f326af1fcfce351917eabb9aade303667d863
[3/3] ui: sdn: skip delete confirmation for unsaved wireguard interfaces
      commit: 4049266a454221e66aa27491954af28532a58bb2




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

end of thread, other threads:[~2026-05-18 20:07 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-18 15:07 [PATCH pve-manager 0/3] wireguard fabric node ui touch-ups Hannes Laimer
2026-05-18 15:07 ` [PATCH pve-manager 1/3] ui: sdn: improve wireguard node edit dialog with no interfaces Hannes Laimer
2026-05-18 15:07 ` [PATCH pve-manager 2/3] ui: sdn: avoid flicker when opening wireguard dialogs Hannes Laimer
2026-05-18 15:07 ` [PATCH pve-manager 3/3] ui: sdn: skip delete confirmation for unsaved wireguard interfaces Hannes Laimer
2026-05-18 20:06 ` applied: [PATCH pve-manager 0/3] wireguard fabric node ui touch-ups Thomas Lamprecht

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