public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Dominik Csapak <d.csapak@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [pve-devel] [PATCH manager 2/3] ui: resource tree: consistently apply the tooltip and 'setText' method
Date: Thu, 23 Nov 2023 09:25:41 +0100	[thread overview]
Message-ID: <20231123082542.872569-3-d.csapak@proxmox.com> (raw)
In-Reply-To: <20231123082542.872569-1-d.csapak@proxmox.com>

'setText' is meant to augment the content of the tree node with
additional information and add markup so that the tooltips work
properly.

Previously this was overwritten for grouping types (e.g. nodes when in
the server view), but we want to put the elements through every time the
text gets set so the html markup is consistent. (E.g. without this, the
node text in the server view gets wrapped in a span, but only if a
relevant property of the node changes, for instance 'running').

To not mark all tree elements changed all the time, replace 'text' with
'name' in the 'changedFields' array, so they get only changed when the
name changes. The text changing from the backend can only happen for
guests anyway and the name field is the correct one for this.

Also change it so that the nodes get their tooltip also when they are
the grouping type in the server view.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
 www/manager6/tree/ResourceTree.js | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/www/manager6/tree/ResourceTree.js b/www/manager6/tree/ResourceTree.js
index 7b2934ae..8856bedf 100644
--- a/www/manager6/tree/ResourceTree.js
+++ b/www/manager6/tree/ResourceTree.js
@@ -135,7 +135,7 @@ Ext.define('PVE.tree.ResourceTree', {
     },
 
     getToolTip: function(info) {
-	if (info.type === 'pool' || info.groupbyid !== undefined) {
+	if (info.type === 'pool' || (info.groupbyid !== undefined && info.type !== 'node')) {
 	    return undefined;
 	}
 
@@ -167,10 +167,12 @@ Ext.define('PVE.tree.ResourceTree', {
 
 	if (info.groupbyid) {
 	    info.text = info.groupbyid;
+	    me.setText(info);
 	    if (info.type === 'type') {
 		let defaults = PVE.tree.ResourceTree.typeDefaults[info.groupbyid];
 		if (defaults && defaults.text) {
 		    info.text = defaults.text;
+		    me.setText(info);
 		}
 	    }
 	}
@@ -265,7 +267,7 @@ Ext.define('PVE.tree.ResourceTree', {
 	let stateid = 'rid';
 
 	const changedFields = [
-	    'text', 'running', 'template', 'status', 'qmpstatus', 'hastate', 'lock', 'tags',
+	    'name', 'running', 'template', 'status', 'qmpstatus', 'hastate', 'lock', 'tags',
 	];
 
 	let updateTree = function() {
-- 
2.30.2





  parent reply	other threads:[~2023-11-23  8:26 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-23  8:25 [pve-devel] [PATCH manager 0/3] ui: small tree fixes Dominik Csapak
2023-11-23  8:25 ` [pve-devel] [PATCH manager 1/3] ui: resource tree: fix nodes text moving in tree on update Dominik Csapak
2023-11-23  8:49   ` [pve-devel] applied: " Thomas Lamprecht
2023-11-23  8:25 ` Dominik Csapak [this message]
2023-11-23  8:25 ` [pve-devel] [PATCH manager 3/3] ui: resource tree: remove wrong comment Dominik Csapak
2023-11-23  8:49   ` [pve-devel] applied: " Thomas Lamprecht

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=20231123082542.872569-3-d.csapak@proxmox.com \
    --to=d.csapak@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
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal