Remove the FocusPanel wrapping hack we used to disable Safari
Using FocusPanel is generally just busted in GWT. We are much better
served by registering a global keyboard handler for actions that we
really care about getting keystrokes for. So this wrapper / not-wrap
hack isn't a good idea.
Signed-off-by: Shawn O. Pearce <sop@google.com>
diff --git a/src/main/java/com/google/gwtexpui/user/User.gwt.xml b/src/main/java/com/google/gwtexpui/user/User.gwt.xml
index 4ebdca4..c681d89 100644
--- a/src/main/java/com/google/gwtexpui/user/User.gwt.xml
+++ b/src/main/java/com/google/gwtexpui/user/User.gwt.xml
@@ -24,11 +24,4 @@
<when-property-is name="user.agent" value="gecko1_8"/>
</any>
</replace-with>
-
- <replace-with class="com.google.gwtexpui.user.client.FocusPanelFactorySafari">
- <when-type-is class="com.google.gwtexpui.user.client.FocusPanelFactory" />
- <any>
- <when-property-is name="user.agent" value="safari"/>
- </any>
- </replace-with>
</module>
diff --git a/src/main/java/com/google/gwtexpui/user/client/FocusPanelFactory.java b/src/main/java/com/google/gwtexpui/user/client/FocusPanelFactory.java
deleted file mode 100644
index 37df7a0..0000000
--- a/src/main/java/com/google/gwtexpui/user/client/FocusPanelFactory.java
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright (C) 2009 The Android Open Source Project
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package com.google.gwtexpui.user.client;
-
-import com.google.gwt.user.client.ui.FocusPanel;
-import com.google.gwt.user.client.ui.Widget;
-
-class FocusPanelFactory {
- FocusPanel wrapFocusPanel(final Widget child) {
- return new FocusPanel(child);
- }
-}
diff --git a/src/main/java/com/google/gwtexpui/user/client/FocusPanelFactorySafari.java b/src/main/java/com/google/gwtexpui/user/client/FocusPanelFactorySafari.java
deleted file mode 100644
index 7b77426..0000000
--- a/src/main/java/com/google/gwtexpui/user/client/FocusPanelFactorySafari.java
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright (C) 2009 The Android Open Source Project
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package com.google.gwtexpui.user.client;
-
-import com.google.gwt.user.client.DOM;
-import com.google.gwt.user.client.Event;
-import com.google.gwt.user.client.ui.FocusPanel;
-import com.google.gwt.user.client.ui.Widget;
-
-class FocusPanelFactorySafari extends FocusPanelFactory {
- @Override
- FocusPanel wrapFocusPanel(final Widget child) {
- if ((DOM.getEventsSunk(child.getElement()) & (Event.ONDBLCLICK | Event.ONCLICK)) != 0) {
- return null;
- }
- return new FocusPanel(child);
- }
-}
diff --git a/src/main/java/com/google/gwtexpui/user/client/UserAgent.java b/src/main/java/com/google/gwtexpui/user/client/UserAgent.java
index dbe432c..02ba9ae 100644
--- a/src/main/java/com/google/gwtexpui/user/client/UserAgent.java
+++ b/src/main/java/com/google/gwtexpui/user/client/UserAgent.java
@@ -16,8 +16,6 @@
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Window;
-import com.google.gwt.user.client.ui.FocusPanel;
-import com.google.gwt.user.client.ui.Widget;
/**
* User agent feature tests we don't create permutations for.
@@ -78,21 +76,6 @@
private static native void bustOutOfIFrame(String newloc)
/*-{ top.location.href = newloc }-*/;
- private static final FocusPanelFactory focusFactory =
- GWT.create(FocusPanelFactory.class);
-
- /**
- * @return a FocusPanel containing the supplied <code>child</code>;
- * <code>null</code> if the browser can't support it. Some browsers
- * (e.g. WebKit based ones) can't correctly wrap a table that sinks
- * click events; the events are delivered incorrectly and the table
- * doesn't get the click where the user actually clicked (it arrives
- * on another row).
- */
- public static FocusPanel wrapFocusPanel(final Widget child) {
- return focusFactory.wrapFocusPanel(child);
- }
-
private UserAgent() {
}
}