Opened 8 years ago

Closed 8 years ago

#14543 closed defect (invalid)

Tabs / ContentPanes being created with class dijitHidden. As such they are not being displayed

Reported by: jbrinnand Owned by:
Priority: high Milestone: tbd
Component: Dijit Version: 1.7.1
Keywords: tabs hidden Cc:
Blocked By: Blocking:

Description

It has been narrowed down to this sequence of actions: Add a tab container to a content pane. Start up the content pane and resize it. Do not start the tab container. Now add a child to the tab container. Startup the tab container. Here is the result:

<div id="cp9" class="dijitContentPane dijitTabPane dijitTabContainerTop-child dijitTabContainerTop-dijitContentPane dijitHidden" title="" role="group" style="overflow: hidden;" widgetid="cp9">

If the first content pane - the one containing the tab container - is not resized() the problem does not occur. Also - if the tab container is started immediately after the resize and prior to any child being added, the problem does not occur. Now the argument might be that I am using the toolkit erroneously. But I haven't found any contra-indicator to this sequence. Of course I might have missed it. Trouble is this worked all the way up to 1.7 - when it suddenly failed. Anyway - in this use case and this wire-up sequence - the issue disappears if the tab container is started up prior to any child being added.

Attachments (1)

dojo-1.7-BorderContainerContentPaneLayoutTest.jsp (7.1 KB) - added by jbrinnand 8 years ago.

Download all attachments as: .zip

Change History (3)

Changed 8 years ago by jbrinnand

comment:1 Changed 8 years ago by jbrinnand

The problem also goes away if the content pane is not started or resized. And this mirrors the example in http://dojotoolkit.org/reference-guide/dijit/layout/TabContainer.html

comment:2 Changed 8 years ago by bill

Resolution: invalid
Status: newclosed

The problem was in the user code, because it was doing:

parent.containerNode.appendChild (borderContainer.domNode);

That's not a valid way to make one widget a child of another. Since container0 is a ContentPane you should call:

container0.set("content", borderContainer);
Last edited 8 years ago by bill (previous) (diff)
Note: See TracTickets for help on using tickets.