]> source.dussan.org Git - vaadin-framework.git/commitdiff
Fixed NPE in click listener
authorArtur Signell <artur@vaadin.com>
Tue, 10 Apr 2012 08:15:47 +0000 (11:15 +0300)
committerArtur Signell <artur@vaadin.com>
Tue, 10 Apr 2012 08:15:47 +0000 (11:15 +0300)
src/com/vaadin/terminal/gwt/client/ui/AbsoluteLayoutConnector.java
src/com/vaadin/terminal/gwt/client/ui/VAbsoluteLayout.java

index d29f3dadb3d98788535da181191722db2f854b09..6a911fc321fb789282f678da5ef9bd5bffe86ff2 100644 (file)
@@ -15,6 +15,7 @@ import com.vaadin.terminal.gwt.client.ComponentConnector;
 import com.vaadin.terminal.gwt.client.Connector;
 import com.vaadin.terminal.gwt.client.ConnectorHierarchyChangeEvent;
 import com.vaadin.terminal.gwt.client.DirectionalManagedLayout;
+import com.vaadin.terminal.gwt.client.Util;
 import com.vaadin.terminal.gwt.client.VCaption;
 import com.vaadin.terminal.gwt.client.communication.RpcProxy;
 import com.vaadin.terminal.gwt.client.communication.ServerRpc;
@@ -55,7 +56,7 @@ public class AbsoluteLayoutConnector extends
 
         @Override
         protected ComponentConnector getChildComponent(Element element) {
-            return getWidget().getComponent(element);
+            return getConnectorForElement(element);
         }
 
         @Override
@@ -75,6 +76,21 @@ public class AbsoluteLayoutConnector extends
         rpc = RpcProxy.create(AbsoluteLayoutServerRPC.class, this);
     }
 
+    /**
+     * Returns the deepest nested child component which contains "element". The
+     * child component is also returned if "element" is part of its caption.
+     * 
+     * @param element
+     *            An element that is a nested sub element of the root element in
+     *            this layout
+     * @return The Paintable which the element is a part of. Null if the element
+     *         belongs to the layout and not to a child.
+     */
+    protected ComponentConnector getConnectorForElement(Element element) {
+        return Util.getConnectorForElement(getConnection(), getWidget(),
+                element);
+    }
+
     public void updateCaption(ComponentConnector component) {
         VAbsoluteLayout absoluteLayoutWidget = getWidget();
         AbsoluteWrapper componentWrapper = getWrapper(component);
index c5c3834d4b9632688fb67cb9f907e16d7f1f72d5..4b411e910c7367001bb9b01f19c607dabb35fc01 100644 (file)
@@ -12,8 +12,6 @@ import com.google.gwt.user.client.ui.ComplexPanel;
 import com.google.gwt.user.client.ui.SimplePanel;
 import com.google.gwt.user.client.ui.Widget;
 import com.vaadin.terminal.gwt.client.ApplicationConnection;
-import com.vaadin.terminal.gwt.client.ComponentConnector;
-import com.vaadin.terminal.gwt.client.Util;
 import com.vaadin.terminal.gwt.client.VCaption;
 
 public class VAbsoluteLayout extends ComplexPanel {
@@ -133,18 +131,4 @@ public class VAbsoluteLayout extends ComplexPanel {
         }
     }
 
-    /**
-     * Returns the deepest nested child component which contains "element". The
-     * child component is also returned if "element" is part of its caption.
-     * 
-     * @param element
-     *            An element that is a nested sub element of the root element in
-     *            this layout
-     * @return The Paintable which the element is a part of. Null if the element
-     *         belongs to the layout and not to a child.
-     */
-    ComponentConnector getComponent(Element element) {
-        return Util.getConnectorForElement(client, this, element);
-    }
-
 }