BorderPanel: Post-Dojo-0.4: Removing a panel doesn't remove its widget from the
BorderPanel widget, just its outer dom node.
----------------------------------------------------------------------------------------------------------------------------
Key: XAP-338
URL: https://issues.apache.org/jira/browse/XAP-338
Project: XAP
Issue Type: Bug
Components: Layouts
Reporter: Turyn, Michael
Assigned To: James Margaris
Found in: the borderPane widget example/test.
An exception was thrown by the dojo.html.layout() called by the border pane's
onResized() method, which in turn is called by BorderPanel::removeChild().
Immediate cause: the removal removes the panel's outer dom node from its
parent, but doesn't
remove the panel widget (e.g. "this.north") from the BorderPanel. This means
that it gets added to the array of child panels sent to the layout() method;
the error is triggered when the layout method assumes there's a valid dom node
there.
Explicitly removing the panel:
for( var position in this.allowedPositions ){
if( child == this[position]){
this[position] = null ;
}
}
// (for this.positions an object with members
east,west,...,center)
...works (r. 520598), but maybe it shouldn't be necessary---why doesn't the
dojo method do it now. Did it ever?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.