Changes between Initial Version and Version 1 of Ticket #11413


Ignore:
Timestamp:
Jul 4, 2010, 9:15:35 PM (9 years ago)
Author:
bill
Comment:

I can't reproduce this. You'll need to attach a test case using the attach file button.

In test_AccordionContainer.html tried this in firebug against both 1.4 and 1.5, and it worked w/out error:

dijit.byId("markupAccordion").removeChild(dijit.byId("pane1"))

In 1.5, I also tried removing all the other children and that worked too:

dijit.byId("markupAccordion").removeChild(dijit.byId("lazyLoadPane"))
dijit.byId("markupAccordion").removeChild(dijit.byId("dijit_layout_BorderContainer_0"))
dijit.byId("markupAccordion").removeChild(dijit.byId("dijit_layout_ContentPane_2"))

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #11413

    • Property Owner anonymous deleted
    • Property Priority changed from high to normal
    • Property Component changed from General to Dijit
  • Ticket #11413 – Description

    initial v1  
    11I needed to empty my AccordionContainer to reload w/ new data.  When I remove the child which was selected, it failed in StackContainer.js in removeChild(), in this block of code (line 144, I believe):
    22
     3{{{
    34if(this._started){
    45                        // in case the tab titles now take up one line instead of two lines
     
    67                        this.layout();
    78                }
     9}}}
    810
    911layout() eventually results in a check to see if there's a selectedChildWidget, and if so, it resizes it.  Because this call to layout() happens before selectedChildWidget is set to undefined, but after the selectedChildWidget's been partially deleted, the attempt to resize the half-deleted selectedChildWidget fails.
     
    1113My proposed solution is to move the block of code pasted above to be below this block of code:
    1214
     15{{{
    1316if(this.selectedChildWidget === page){
    1417                        this.selectedChildWidget = undefined;
     
    2023                        }
    2124                }
    22 
     25}}}
    2326
    2427I'm planning to go live w/ my dojo-based site soon, so I have set this to "blocker."