.v-treetable-treespacer {
display: inline-block;
background: transparent;
+ position: relative;
height: 9px;
/* defines the amount of indent per level */
width: 18px;
background: url(../treetable/img/arrow-down.png) right center no-repeat;
}
+/* Show the tree arrows in a separate element in IE 6 to emulate background-position: right when using AlphaImageLoader */
+.v-ie6 .v-treetable-node-closed, .v-ie6 .v-treetable-node-open {
+ background-image: none;
+}
+
+.v-treetable-spacer-ie {
+ position: absolute;
+ height: 9px;
+ width: 10px;
+ right: 0;
+ top: -1px;
+}
+
+.v-treetable-node-closed .v-treetable-spacer-ie {
+ /* vaadin.setAlphaImageLoader used to get relative paths (relative to the themeUrl) with AlphaImageLoader */
+ zoom: expression((function(e) {vaadin.setAlphaImageLoader(e, "../base/treetable/img/arrow-right.png")})(this));
+}
+
+.v-treetable-node-open .v-treetable-spacer-ie {
+ /* vaadin.setAlphaImageLoader used to get relative paths (relative to the themeUrl) with AlphaImageLoader */
+ zoom: expression((function(e) {vaadin.setAlphaImageLoader(e, "../base/treetable/img/arrow-down.png")})(this));
+}
+
.v-treetable .v-checkbox {
display: inline-block;
padding-bottom: 4px;
treeSpacer = Document.get().createSpanElement();
+ if (BrowserInfo.get().isIE6()) {
+ // Must add an absolutely positioned element with right:
+ // 0 to get the background aligned to the right in IE 6
+ // where AlphaImageLoader is used for the background
+ SpanElement ieSpacerHolder = Document.get()
+ .createSpanElement();
+ ieSpacerHolder.addClassName("v-treetable-spacer-ie");
+ treeSpacer.insertFirst(ieSpacerHolder);
+ }
+
treeSpacer.setClassName(classname);
container.insertFirst(treeSpacer);
depth = rowUidl.hasAttribute("depth") ? rowUidl
@Override
public void onBrowserEvent(Event event) {
- if (event.getEventTarget().cast() == treeSpacer
+ SpanElement target = event.getEventTarget().cast();
+ if ((target == treeSpacer || target.getParentElement() == treeSpacer)
&& treeSpacer.getClassName().contains("node")) {
if (event.getTypeInt() == Event.ONMOUSEUP) {
sendToggleCollapsedUpdate(getKey());