diff options
author | John Alhroos <john.ahlroos@itmill.com> | 2010-04-13 10:13:23 +0000 |
---|---|---|
committer | John Alhroos <john.ahlroos@itmill.com> | 2010-04-13 10:13:23 +0000 |
commit | ff85ab6b23f1be65c6e6761964d012f818949394 (patch) | |
tree | 145028df45b9d118da6d73693b695a85037de757 | |
parent | baecc2e6fb381c85455b828408b3406c9c22febf (diff) | |
download | vaadin-framework-ff85ab6b23f1be65c6e6761964d012f818949394.tar.gz vaadin-framework-ff85ab6b23f1be65c6e6761964d012f818949394.zip |
Code cleanup related to #3520
svn changeset:12502/svn branch:6.4
-rw-r--r-- | src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java | 35 |
1 files changed, 21 insertions, 14 deletions
diff --git a/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java b/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java index 37ad81fce5..c9ed94fd5b 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java @@ -1136,7 +1136,8 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, @Override public void onBrowserEvent(Event event) { if (enabled && event != null) { - if (isResizing || event.getTarget() == colResizeWidget) { + if (isResizing + || event.getEventTarget().cast() == colResizeWidget) { onResizeEvent(event); } else { handleCaptionEvent(event); @@ -1668,7 +1669,7 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, @Override public void onBrowserEvent(Event event) { if (enabled) { - if (event.getTarget() == columnSelector) { + if (event.getEventTarget().cast() == columnSelector) { final int left = DOM.getAbsoluteLeft(columnSelector); final int top = DOM.getAbsoluteTop(columnSelector) + DOM.getElementPropertyInt(columnSelector, @@ -2499,9 +2500,10 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, * * @return Returns the JSO preventing text selection */ - private native JavaScriptObject applyDisableTextSelectionIEHack()/*-{ - return function(){ return false; }; - }-*/; + private native JavaScriptObject applyDisableTextSelectionIEHack() + /*-{ + return function(){ return false; }; + }-*/; /* * React on click that occur on content cells only @@ -2521,7 +2523,7 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, if (event.getButton() == Event.BUTTON_LEFT && selectMode > Table.SELECT_MODE_NONE) { - if (event.getCtrlKey() + if ((event.getCtrlKey() || event.getMetaKey()) && selectMode == SELECT_MODE_MULTI && multiselectmode == 0) { toggleSelection(true); @@ -2537,8 +2539,11 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, } // Remove IE text selection hack - event.getTarget().setPropertyJSO( - "onselectstart", null); + if (BrowserInfo.get().isIE()) { + ((Element) event.getEventTarget().cast()) + .setPropertyJSO( + "onselectstart", null); + } // Note: changing the immediateness of this // might @@ -2607,15 +2612,19 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, event.stopPropagation(); } else if (event.getCtrlKey() || event.getShiftKey() + || event.getMetaKey() && selectMode == SELECT_MODE_MULTI && multiselectmode == 0) { // Prevent default text selection in Firefox event.preventDefault(); // Prevent default text selection in IE - event.getTarget().setPropertyJSO( - "onselectstart", - applyDisableTextSelectionIEHack()); + if (BrowserInfo.get().isIE()) { + ((Element) event.getEventTarget().cast()) + .setPropertyJSO( + "onselectstart", + applyDisableTextSelectionIEHack()); + } event.stopPropagation(); } @@ -2693,7 +2702,7 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, left += Window.getScrollLeft(); client.getContextMenu().showAt(this, left, top); } - event.cancelBubble(true); + event.stopPropagation(); event.preventDefault(); } @@ -2760,8 +2769,6 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, // Toggle clicked rows selection toggleSelection(false); - - getElement().focus(); } /* |