From: John Alhroos Date: Wed, 27 Oct 2010 07:50:21 +0000 (+0000) Subject: Fixed #5797 for the case when enabled is toggled. X-Git-Tag: 6.7.0.beta1~919^2~6 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=52a5925a8b0ecc64b512efae07c3ed81e1b55c81;p=vaadin-framework.git Fixed #5797 for the case when enabled is toggled. svn changeset:15737/svn branch:6.4 --- 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); }