diff options
author | John Alhroos <john.ahlroos@itmill.com> | 2010-10-27 07:50:21 +0000 |
---|---|---|
committer | John Alhroos <john.ahlroos@itmill.com> | 2010-10-27 07:50:21 +0000 |
commit | 52a5925a8b0ecc64b512efae07c3ed81e1b55c81 (patch) | |
tree | 374d0b0b07fc545c5bf818b05281ef8db136fed9 /src | |
parent | 0f4cb1200408f7169aefc6a6ab5d54878e67e318 (diff) | |
download | vaadin-framework-52a5925a8b0ecc64b512efae07c3ed81e1b55c81.tar.gz vaadin-framework-52a5925a8b0ecc64b512efae07c3ed81e1b55c81.zip |
Fixed #5797 for the case when enabled is toggled.
svn changeset:15737/svn branch:6.4
Diffstat (limited to 'src')
-rw-r--r-- | src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java | 28 |
1 files changed, 14 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 dd8453c19b..ba7664f35d 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java @@ -5310,7 +5310,11 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, * .gwt.event.dom.client.KeyPressEvent) */ public void onKeyPress(KeyPressEvent event) { - if (hasFocus) { + if (!enabled) { + // Cancel default keyboard events on a disabled Table (prevents + // scrolling) + event.preventDefault(); + } else if (hasFocus) { if (handleNavigation(event.getNativeEvent().getKeyCode(), event.isControlKeyDown() || event.isMetaKeyDown(), event.isShiftKeyDown())) { @@ -5327,10 +5331,6 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, }; scrollingVelocityTimer.scheduleRepeating(100); } - } else if (!enabled) { - // Cancel default keyboard events on a disabled Table (prevents - // scrolling) - event.preventDefault(); } } @@ -5342,7 +5342,11 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, * .event.dom.client.KeyDownEvent) */ public void onKeyDown(KeyDownEvent event) { - if (hasFocus) { + if (!enabled) { + // Cancel default keyboard events on a disabled Table (prevents + // scrolling) + event.preventDefault(); + } else if (hasFocus) { if (handleNavigation(event.getNativeEvent().getKeyCode(), event.isControlKeyDown() || event.isMetaKeyDown(), event.isShiftKeyDown())) { @@ -5360,10 +5364,6 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, }; scrollingVelocityTimer.scheduleRepeating(100); } - } else if (!enabled) { - // Cancel default keyboard events on a disabled Table (prevents - // scrolling) - event.preventDefault(); } } @@ -5396,11 +5396,11 @@ public class VScrollTable extends FlowPanel implements Table, ScrollHandler, * .dom.client.BlurEvent) */ public void onBlur(BlurEvent event) { - if (isFocusable()) { - scrollBodyPanel.removeStyleName("focused"); - hasFocus = false; - navKeyDown = false; + scrollBodyPanel.removeStyleName("focused"); + hasFocus = false; + navKeyDown = false; + if (isFocusable()) { // Unfocus any row setRowFocus(null); } |