Author: sergeyhalipov
Date: 2007-03-23 12:16:13 -0400 (Fri, 23 Mar 2007)
New Revision: 130
Modified:
trunk/richfaces/tree/src/main/resources/org/richfaces/renderkit/html/scripts/tree-item.js
trunk/richfaces/tree/src/main/templates/htmlTreeNode.jspx
Log:
Fix tree expand/collapse in Opera.
Modified:
trunk/richfaces/tree/src/main/resources/org/richfaces/renderkit/html/scripts/tree-item.js
===================================================================
---
trunk/richfaces/tree/src/main/resources/org/richfaces/renderkit/html/scripts/tree-item.js 2007-03-23
16:05:54 UTC (rev 129)
+++
trunk/richfaces/tree/src/main/resources/org/richfaces/renderkit/html/scripts/tree-item.js 2007-03-23
16:16:13 UTC (rev 130)
@@ -69,6 +69,13 @@
}
}
}
+ var parent = this.elements.handle;
+ while (parent) {
+ parent = parent.parentNode;
+ if (parent.nodeName.toLowerCase() == "tr")
+ break;
+ }
+ this.elements.mainRow = parent;
},
addChild: function(child) {
@@ -79,6 +86,13 @@
toggleCollapsion: function() {
if (this.hasChilds()) Element.toggle(this.elements.row);
+
+ // Rerender main row to avoid bad representation in Opera and Konqueror/Safari
+ if (this.elements.mainRow) {
+ Element.hide(this.elements.mainRow);
+ Element.show(this.elements.mainRow);
+ }
+
if (this.isCollapsed()) {
this.elements.handleImgExpanded.style.display="none";
this.elements.handleImgCollapsed.style.display="";
Modified: trunk/richfaces/tree/src/main/templates/htmlTreeNode.jspx
===================================================================
--- trunk/richfaces/tree/src/main/templates/htmlTreeNode.jspx 2007-03-23 16:05:54 UTC (rev
129)
+++ trunk/richfaces/tree/src/main/templates/htmlTreeNode.jspx 2007-03-23 16:16:13 UTC (rev
130)
@@ -34,33 +34,35 @@
<tr>
<f:call name="encodeAttributeParameters" />
- <td class="dr-tree-h-ic #{line}">
- <jsp:scriptlet>
- <![CDATA[
- if (component.getUITree().isLeaf()) {
- ]]>
- </jsp:scriptlet> <img id="#{clientId}:handle:img"
src="#{spacer}"/> <jsp:scriptlet>
- <![CDATA[
- } else {
- ]]>
- </jsp:scriptlet> <a href="#" id="#{clientId}:handle"
- onclick="#{this:getToggleScript(context, component)} return false;">
<jsp:scriptlet>
- <![CDATA[if (component.getUITree().isExpanded()) {]]>
- </jsp:scriptlet> <img border="0"
id="#{clientId}:handle:img:collapsed"
- src="#{collapsed}" class="dr-tree-pointer-cursor"
style="display: none;" />
- <img border="0" id="#{clientId}:handle:img:expanded"
src="#{expanded}"
- class="dr-tree-pointer-cursor" /> <jsp:scriptlet>
- <![CDATA[} else {]]>
- </jsp:scriptlet> <img border="0"
id="#{clientId}:handle:img:collapsed"
- src="#{collapsed}" class="dr-tree-pointer-cursor" /> <img
border="0"
- id="#{clientId}:handle:img:expanded" src="#{expanded}"
- class="dr-tree-pointer-cursor" style="display: none;" />
<jsp:scriptlet>
- <![CDATA[}]]>
- </jsp:scriptlet> </a> <jsp:scriptlet>
- <![CDATA[
- }
- ]]>
- </jsp:scriptlet>
+ <td class="dr-tree-h-ic #{line}" style="width: 16px;">
+ <div style="width: 16px;">
+ <jsp:scriptlet>
+ <![CDATA[
+ if (component.getUITree().isLeaf()) {
+ ]]>
+ </jsp:scriptlet> <img id="#{clientId}:handle:img"
src="#{spacer}"/> <jsp:scriptlet>
+ <![CDATA[
+ } else {
+ ]]>
+ </jsp:scriptlet> <a href="#" id="#{clientId}:handle"
+ onclick="#{this:getToggleScript(context, component)} return false;">
<jsp:scriptlet>
+ <![CDATA[if (component.getUITree().isExpanded()) {]]>
+ </jsp:scriptlet> <img border="0"
id="#{clientId}:handle:img:collapsed"
+ src="#{collapsed}" class="dr-tree-pointer-cursor"
style="display: none;" />
+ <img border="0" id="#{clientId}:handle:img:expanded"
src="#{expanded}"
+ class="dr-tree-pointer-cursor" /> <jsp:scriptlet>
+ <![CDATA[} else {]]>
+ </jsp:scriptlet> <img border="0"
id="#{clientId}:handle:img:collapsed"
+ src="#{collapsed}" class="dr-tree-pointer-cursor" /> <img
border="0"
+ id="#{clientId}:handle:img:expanded" src="#{expanded}"
+ class="dr-tree-pointer-cursor" style="display: none;" />
<jsp:scriptlet>
+ <![CDATA[}]]>
+ </jsp:scriptlet> </a> <jsp:scriptlet>
+ <![CDATA[
+ }
+ ]]>
+ </jsp:scriptlet>
+ </div>
</td>
<td
rich:ajaxselectedlistener="#{this:getAjaxSelectedListenerFlag(context,
component)}"
Show replies by date