all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Dominik Csapak <d.csapak@proxmox.com>
To: Stefan Hanreich <s.hanreich@proxmox.com>,
	Proxmox Datacenter Manager development discussion
	<pdm-devel@lists.proxmox.com>
Subject: Re: [pdm-devel] [PATCH proxmox-datacenter-manager v2 14/15] ui: sdn: add evpn overview panel
Date: Tue, 2 Sep 2025 11:30:57 +0200	[thread overview]
Message-ID: <907667a5-aae1-4c50-b1cb-5b2373c56447@proxmox.com> (raw)
In-Reply-To: <4aa5b76a-a070-4658-b594-e5ec61ee0f62@proxmox.com>



On 9/2/25 8:34 AM, Dominik Csapak wrote:
> 
> 
> On 9/1/25 5:02 PM, Stefan Hanreich wrote:
>> On 9/1/25 3:44 PM, Dominik Csapak wrote:
>>> one question: couldn't have the toolbar stayed the same as before?
>>>
>>> as in, create the toolbar in line in the `main_view` and just `clone()`
>>> it once for each panel?
>>>
>>> not that i'm totally against factoring such things out, but the
>>> `EvpnToolbar` does not do anything special FWICT, so creating
>>> the toolbar inline would have been fine...
>>
>> I had that initially, but cloning the toolbar had issues with the
>> positioning of the dropdown (it was stuck to the top left of the
>> screen). Not cloning the toolbar but creating it twice fixed it for me.
>>
> 
> this sounds like a bug we should fix ;)
> 
> i'll see how that happens and see if i can send a fix for that.
> 
> for the time being we can ofc leave it as is and clean up when we have a 
> fix
> 
> 

for the record for the list:

the issue here was that every component in our toolkit has a
'NodeRef' (in their std_props) that is linked to a Dom element on rendering

In the MenuButton we use this NodeRef from the std_props as the anchor
for aligning the menu.

When we clone some component's properties, we clone the NodeRef too
but that messes up the references to the dom, since now the clone
points to the same noderef

The first rendered menu works fine, but when the second one is rendered
the link from noderef <-> dom changes to the second one. Now when one is
trying to use the menu on the first tab, the noderef points to an 
element which is invisible, which fails to align properly.

We're still deciding how to cope with cloning properties and their
node_refs (we could make it optional, make sure aligning always
require internal node_refs, impl clone such that the nodref
is not copied, etc)

the easiest fix here is to simply have a

fn create_toolbar(...) -> Toolbar

function that returns a new toolbar each time
and use that twice. This is still much shorter
than having a full component for basically the `view` method.

Can be cleaned up as a follow-up IMO


_______________________________________________
pdm-devel mailing list
pdm-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pdm-devel


  reply	other threads:[~2025-09-02  9:31 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-29 14:52 [pdm-devel] [PATCH network/proxmox{, -backup, -api-types, -datacenter-manager} v2 00/30] Add initial SDN / EVPN integration Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox v2 1/2] schema: use i64 for minimum / maximum / default integer values Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox v2 2/2] pbs-api-types: fix values for integer schemas Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox-backup v2 1/1] api: change integer schema parameters to i64 Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH pve-network v2 1/6] sdn: api: return null for rollback / lock endpoints Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH pve-network v2 2/6] controllers: fix maximum value for ASN Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH pve-network v2 3/6] api: add state standard option Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH pve-network v2 4/6] api: controllers: update schema of endpoints Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH pve-network v2 5/6] api: vnets: " Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH pve-network v2 6/6] api: zones: " Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox-api-types v2 1/6] sdn: add list/create zone endpoints Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox-api-types v2 2/6] sdn: add list/create vnet endpoints Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox-api-types v2 3/6] sdn: add list/create controller endpoints Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox-api-types v2 4/6] sdn: add sdn configuration locking endpoints Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox-api-types v2 5/6] tasks: add helper for querying successfully finished tasks Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox-api-types v2 6/6] sdn: add helpers for pending values Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 01/15] server: add locked sdn client helpers Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 02/15] ui: pve: sdn: add descriptions for sdn tasks Stefan Hanreich
2025-08-29 14:52 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 03/15] api: sdn: add list_zones endpoint Stefan Hanreich
2025-09-01 13:36   ` Dominik Csapak
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 04/15] api: sdn: add create_zone endpoint Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 05/15] api: sdn: add list_vnets endpoint Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 06/15] api: sdn: add create_vnet endpoint Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 07/15] api: sdn: add list_controllers endpoint Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 08/15] ui: sdn: add EvpnRouteTarget type Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 09/15] ui: sdn: add vnet icon Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 10/15] ui: sdn: add view for showing evpn zones Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 11/15] ui: sdn: add view for showing ip vrfs Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 12/15] ui: sdn: add component for creating evpn vnets Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 13/15] ui: sdn: add component for creatin evpn zones Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 14/15] ui: sdn: add evpn overview panel Stefan Hanreich
2025-09-01 13:44   ` Dominik Csapak
2025-09-01 15:02     ` Stefan Hanreich
2025-09-02  6:34       ` Dominik Csapak
2025-09-02  9:30         ` Dominik Csapak [this message]
2025-09-02 12:22           ` Stefan Hanreich
2025-08-29 14:53 ` [pdm-devel] [PATCH proxmox-datacenter-manager v2 15/15] ui: sdn: add evpn panel to main menu Stefan Hanreich
2025-09-02 11:10 ` [pdm-devel] [PATCH network/proxmox{, -backup, -api-types, -datacenter-manager} v2 00/30] Add initial SDN / EVPN integration Dominik Csapak
2025-09-02 12:03   ` Stefan Hanreich
2025-09-02 12:29     ` Dominik Csapak
2025-09-02 12:54       ` Stefan Hanreich
2025-09-02 14:10 ` [pdm-devel] superseded: " Stefan Hanreich

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=907667a5-aae1-4c50-b1cb-5b2373c56447@proxmox.com \
    --to=d.csapak@proxmox.com \
    --cc=pdm-devel@lists.proxmox.com \
    --cc=s.hanreich@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal