|
RunAtClient only trees do now work properly in Opera 8.0. This CR is being re-opened because runAtClient with expandOnServer nodes do not work as expected in the Opera browser.
Descrip: When a node in a runAtClient tree which has the expandOnServer attribute set to true is chosen to be expanded, the node itself may collapse into it's parent node as well as any other nodes at the same treeLevel. Workaround: refresh the page after choosing to expand a node that was expandOnServer. Here's a patch with a change for the netui-tree.js to manage the namespace handling and solve an issue with getting and removing an attribute from a link object. The problem is that Opra supports namespace URI with the node.getAttributeNS() method but IE doesn't. So we already have a custom routine, netUIGetAttribute(), to get attributes from a node. When we have a link object in the DOM we try to get the "netui:treeAnchorInit" attribute and if that does not return the value (as in Opra) we try "treeAnchorInit".
However, when we remove the attribute we don't handle both cases. We just call node.removeAttribute("netui:treeAnchorInit"). So in Opra the attribute we get has not been removed. Then the next time we goe through the tree routines we do the initialization of the node again, calling the collapse routines. I've added a new method, netUIRemoveAttribute(), to manage the namespace handling. To test, use Opra and manually run the J519 test... coreWeb/bugs/j519/Controller.jpf. Expand all the tree nodes and you should see that it does not collapse the tree. Assigning to Rich for review. Could also pass it along to Daryl. Thanks.
Verified that runAtClient trees with expandOnServer nodes are now working properly in Opera. Also double-checked their functionality in Netscape, Firefox, Mozilla, and IE.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Frankly, I'm not sure this bug needs a lot of regression work because Opera is really not a primary browser we are supporting. I just want to keep it working on Opera.