[pve-devel] [PATCH manager] prevent visual flashing of button when changing element in the tree

Dominik Csapak d.csapak at proxmox.com
Mon Oct 30 15:03:38 CET 2017


when changing between elements in the tree, either the
start or shutdown buttons were visually flashing (meaning they are
enabled/disabled for a short time and change state shortly after)

this patch fixes that

Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
 www/manager6/lxc/Config.js  | 6 ++++--
 www/manager6/qemu/Config.js | 6 ++++--
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/www/manager6/lxc/Config.js b/www/manager6/lxc/Config.js
index 7a735cd6..0ffc4841 100644
--- a/www/manager6/lxc/Config.js
+++ b/www/manager6/lxc/Config.js
@@ -19,6 +19,8 @@ Ext.define('PVE.lxc.Config', {
 
 	var template = me.pveSelNode.data.template;
 
+	var running = !!me.pveSelNode.data.uptime;
+
 	var caps = Ext.state.Manager.get('GuiCap');
 
 	var base_url = '/nodes/' + nodename + '/lxc/' + vmid;
@@ -42,7 +44,7 @@ Ext.define('PVE.lxc.Config', {
 
 	var startBtn = Ext.create('Ext.Button', {
 	    text: gettext('Start'),
-	    disabled: !caps.vms['VM.PowerMgmt'],
+	    disabled: !caps.vms['VM.PowerMgmt'] || running,
 	    handler: function() {
 		vm_command('start');
 	    },
@@ -62,7 +64,7 @@ Ext.define('PVE.lxc.Config', {
 
 	var shutdownBtn = Ext.create('PVE.button.Split', {
 	    text: gettext('Shutdown'),
-	    disabled: !caps.vms['VM.PowerMgmt'],
+	    disabled: !caps.vms['VM.PowerMgmt'] || !running,
 	    confirmMsg: PVE.Utils.format_task_description('vzshutdown', vmid),
 	    handler: function() {
 		vm_command('shutdown');
diff --git a/www/manager6/qemu/Config.js b/www/manager6/qemu/Config.js
index f36ba690..db0f3152 100644
--- a/www/manager6/qemu/Config.js
+++ b/www/manager6/qemu/Config.js
@@ -19,6 +19,8 @@ Ext.define('PVE.qemu.Config', {
 
 	var template = !!me.pveSelNode.data.template;
 
+	var running = !!me.pveSelNode.data.uptime;
+
 	var caps = Ext.state.Manager.get('GuiCap');
 
 	var base_url = '/nodes/' + nodename + "/qemu/" + vmid;
@@ -52,7 +54,7 @@ Ext.define('PVE.qemu.Config', {
 
 	var startBtn = Ext.create('Ext.Button', {
 	    text: gettext('Start'),
-	    disabled: !caps.vms['VM.PowerMgmt'],
+	    disabled: !caps.vms['VM.PowerMgmt'] || running,
 	    hidden: template,
 	    handler: function() {
 		vm_command('start');
@@ -133,7 +135,7 @@ Ext.define('PVE.qemu.Config', {
 
 	var shutdownBtn = Ext.create('PVE.button.Split', {
 	    text: gettext('Shutdown'),
-	    disabled: !caps.vms['VM.PowerMgmt'],
+	    disabled: !caps.vms['VM.PowerMgmt'] || !running,
 	    hidden: template,
 	    confirmMsg: PVE.Utils.format_task_description('qmshutdown', vmid),
 	    handler: function() {
-- 
2.11.0





More information about the pve-devel mailing list