From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id AC76B6A819 for ; Wed, 16 Mar 2022 17:36:48 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id A2FF52A363 for ; Wed, 16 Mar 2022 17:36:18 +0100 (CET) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS id 787F12A355 for ; Wed, 16 Mar 2022 17:36:17 +0100 (CET) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 511CD46EA2 for ; Wed, 16 Mar 2022 17:36:17 +0100 (CET) Message-ID: Date: Wed, 16 Mar 2022 17:36:15 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:99.0) Gecko/20100101 Thunderbird/99.0 Content-Language: en-US To: Proxmox VE development discussion , Fabian Ebner References: <20211112112834.40892-1-f.ebner@proxmox.com> <20211112112834.40892-2-f.ebner@proxmox.com> From: Thomas Lamprecht In-Reply-To: <20211112112834.40892-2-f.ebner@proxmox.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.058 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment NICE_REPLY_A -0.001 Looks like a legit reply (A) SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record T_SCC_BODY_TEXT_LINE -0.01 - Subject: Re: [pve-devel] [PATCH manager 2/2] ui: backup: protect button: use dynamic protect/unprotect text X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Mar 2022 16:36:48 -0000 On 12.11.21 12:28, Fabian Ebner wrote: > Suggested-by: Thomas Lamprecht > Signed-off-by: Fabian Ebner > --- > www/manager6/grid/BackupView.js | 22 +++++++++++++++++++++- > www/manager6/storage/BackupView.js | 24 +++++++++++++++++++++++- > 2 files changed, 44 insertions(+), 2 deletions(-) > > diff --git a/www/manager6/grid/BackupView.js b/www/manager6/grid/BackupView.js > index c08fb67d..cbdac02e 100644 > --- a/www/manager6/grid/BackupView.js > +++ b/www/manager6/grid/BackupView.js > @@ -12,6 +12,7 @@ Ext.define('PVE.grid.BackupView', { > let me = this; > > me.down('#removeButton').updateStatus(record); > + me.down('#protectButton').updateStatus(record); > }, > > initComponent: function() { > @@ -314,8 +315,14 @@ Ext.define('PVE.grid.BackupView', { > }, > { > xtype: 'proxmoxButton', > - text: gettext('Change Protection'), > + text: gettext('Protect'), > + defaultText: gettext('Protect'), > + altText: gettext('Unprotect'), > disabled: true, > + itemId: 'protectButton', > + updateStatus: function(record) { > + this.setText(record?.data.protected ? this.altText : this.defaultText); > + }, > handler: function(button, event, record) { > const volid = record.data.volid; > const storage = storagesel.getValue(); > @@ -330,6 +337,19 @@ Ext.define('PVE.grid.BackupView', { > success: (response) => reload(), > }); > }, > + listeners: { > + render: function(btn) { > + // HACK: calculate the max button width on first render to avoid > + // toolbar glitches > + let defSize = btn.getSize().width; > + > + btn.setText(btn.altText); > + let altSize = btn.getSize().width; > + > + btn.setText(btn.defaultText); > + btn.setSize({ width: altSize > defSize ? altSize : defSize }); with this we'd have that behavior three times (ct/vm resource/hw are the existing two), so maybe we should move it out in a new separate, from proxmoxButton derived, component?