summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatti Tahvonen <matti.tahvonen@itmill.com>2007-08-30 10:20:55 +0000
committerMatti Tahvonen <matti.tahvonen@itmill.com>2007-08-30 10:20:55 +0000
commitda85d29c08615d189eeb323125433527c9ffccd1 (patch)
tree9f4e58ef7c8b86911085c121a2fe4a87e45c536b
parent456b646a5546e4b608af8fd319cef39900768ca0 (diff)
downloadvaadin-framework-da85d29c08615d189eeb323125433527c9ffccd1.tar.gz
vaadin-framework-da85d29c08615d189eeb323125433527c9ffccd1.zip
bit lighter implementation for iview (without focus panel)
svn changeset:2156/svn branch:trunk
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java34
1 files changed, 18 insertions, 16 deletions
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java
index f657dba417..8492f66121 100644
--- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java
+++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java
@@ -3,16 +3,21 @@ package com.itmill.toolkit.terminal.gwt.client.ui;
import java.util.HashSet;
import java.util.Iterator;
+import com.google.gwt.user.client.DOM;
+import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.Window;
-import com.google.gwt.user.client.ui.FocusPanel;
-import com.google.gwt.user.client.ui.KeyboardListener;
+import com.google.gwt.user.client.ui.KeyboardListenerCollection;
import com.google.gwt.user.client.ui.RootPanel;
+import com.google.gwt.user.client.ui.SimplePanel;
import com.google.gwt.user.client.ui.Widget;
import com.itmill.toolkit.terminal.gwt.client.ApplicationConnection;
import com.itmill.toolkit.terminal.gwt.client.Paintable;
import com.itmill.toolkit.terminal.gwt.client.UIDL;
-public class IView extends FocusPanel implements Paintable, KeyboardListener {
+/**
+ *
+ */
+public class IView extends SimplePanel implements Paintable {
private String theme;
@@ -26,7 +31,7 @@ public class IView extends FocusPanel implements Paintable, KeyboardListener {
public IView() {
super();
- addKeyboardListener(this);
+ DOM.sinkEvents(getElement(), Event.ONKEYDOWN);
}
public String getTheme() {
@@ -102,19 +107,16 @@ public class IView extends FocusPanel implements Paintable, KeyboardListener {
RootPanel.get().remove(w);
}
}
-
- public void onKeyDown(Widget sender, char keyCode, int modifiers) {
- if(actionHandler != null)
- actionHandler.handleKeyboardEvent(keyCode, modifiers);
- }
-
- public void onKeyPress(Widget sender, char keyCode, int modifiers) {
-
+
+ public void onBrowserEvent(Event event) {
+ super.onBrowserEvent(event);
+ if (DOM.eventGetType(event) == Event.ONKEYDOWN && actionHandler != null) {
+ int modifiers = KeyboardListenerCollection.getKeyboardModifiers(event);
+ actionHandler.handleKeyboardEvent(
+ (char) DOM.eventGetKeyCode(event), modifiers);
+ return;
+ }
}
- public void onKeyUp(Widget sender, char keyCode, int modifiers) {
-
- }
-
}