You are viewing a plain text version of this content. The canonical link for it is here.
Posted to xap-dev@incubator.apache.org by "Turyn, Michael (JIRA)" <xa...@incubator.apache.org> on 2007/03/20 21:15:33 UTC

[jira] Created: (XAP-338) BorderPanel: Post-Dojo-0.4: Removing a panel doesn't remove its widget from the BorderPanel widget, just its outer dom node.

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.


[jira] Commented: (XAP-338) BorderPanel: Post-Dojo-0.4: Removing a panel doesn't remove its widget from the BorderPanel widget, just its outer dom node.

Posted by "Surender Reddy (JIRA)" <xa...@incubator.apache.org>.
    [ https://issues.apache.org/jira/browse/XAP-338?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12508320 ] 

Surender Reddy commented on XAP-338:
------------------------------------

Unable to reproduce.  Could you provide explicit steps?

> 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: Widgets: Layouts
>            Reporter: Turyn, Michael
>            Assignee: 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.