Ticket #6748 (closed defect: wontfix)

Opened 2 years ago

Last modified 2 years ago

Calling setDebugId() does not set given id to client side's element with out page reload

Reported by: peterl1084 Owned by: ticketmaster
Priority: normal Milestone: Vaadin 6.5.7
Component: Component - client side Version: 6.5.4
Keywords: Cc:
Hours estimate: Hours done:
Depends on:
Workaround:

Description

When calling setDebugId from for example button's click listener after first page load has already occured, the debug id will not be set to given component even if component.requestRepaint() is called.

Button button = new Button("Test");
button.addListener(new Button.ClickListener() {
   button.setDebugId("test");
});

Given debug id will only be set after page is reloaded.

Change History

comment:1 Changed 2 years ago by peterl1084

  • Milestone set to Vaadin 6.5.6

comment:2 Changed 2 years ago by Matti Tahvonen

  • Status changed from new to closed
  • Resolution set to wontfix

Hi,

To make the current terminal implementation support identifiers that are changed of the fly, would require quite radical changes to the implementation of the debug ids (to both client and server side). Unless there is a really good use case for this feature, I'd not implement this.

I made documentation of the debug id to bring this up in [18416].

PS. I spotted the forum discussion that made this ticket appear. In case you want to reference other (visible) components on the client side, you should use addAttribute(String, Paintable) instead of using debug identifier. An example usage in the window: http://dev.vaadin.com/browser/versions/6.5/src/com/vaadin/ui/Window.java#L579 http://dev.vaadin.com/browser/versions/6.5/src/com/vaadin/terminal/gwt/client/ui/VView.java#L427

cheers, matti

Note: See TracTickets for help on using tickets.