summaryrefslogtreecommitdiffstats
path: root/client
diff options
context:
space:
mode:
Diffstat (limited to 'client')
-rw-r--r--client/src/com/vaadin/client/ui/VUpload.java21
-rw-r--r--client/src/com/vaadin/client/ui/upload/UploadConnector.java8
2 files changed, 29 insertions, 0 deletions
diff --git a/client/src/com/vaadin/client/ui/VUpload.java b/client/src/com/vaadin/client/ui/VUpload.java
index 92df9d9614..24ac9cd72d 100644
--- a/client/src/com/vaadin/client/ui/VUpload.java
+++ b/client/src/com/vaadin/client/ui/VUpload.java
@@ -312,6 +312,26 @@ public class VUpload extends SimplePanel {
Scheduler.get().scheduleDeferred(startUploadCmd);
}
+ public void disableTitle(boolean disable) {
+ if (disable) {
+ // Disable title attribute for upload element.
+ if (BrowserInfo.get().isChrome()) {
+ // In Chrome title has to be set to " " to make it invisible
+ fu.setTitle(" ");
+ } else if (BrowserInfo.get().isFirefox()) {
+ // In FF title has to be set to empty string to make it
+ // invisible
+ // Method setTitle removes title attribute when it's an empty
+ // string, so setAttribute() should be used here
+ fu.getElement().setAttribute("title", "");
+ }
+ // For other browsers absent title doesn't show default tooltip for
+ // input element
+ } else {
+ fu.setTitle(null);
+ }
+ }
+
@Override
protected void onAttach() {
super.onAttach();
@@ -357,4 +377,5 @@ public class VUpload extends SimplePanel {
synthesizedFrame = null;
}
}
+
}
diff --git a/client/src/com/vaadin/client/ui/upload/UploadConnector.java b/client/src/com/vaadin/client/ui/upload/UploadConnector.java
index 87e97bc675..ca16b7c513 100644
--- a/client/src/com/vaadin/client/ui/upload/UploadConnector.java
+++ b/client/src/com/vaadin/client/ui/upload/UploadConnector.java
@@ -21,6 +21,7 @@ import com.google.gwt.event.dom.client.ChangeHandler;
import com.vaadin.client.ApplicationConnection;
import com.vaadin.client.Paintable;
import com.vaadin.client.UIDL;
+import com.vaadin.client.communication.StateChangeEvent;
import com.vaadin.client.ui.AbstractComponentConnector;
import com.vaadin.client.ui.VUpload;
import com.vaadin.shared.EventId;
@@ -92,6 +93,13 @@ public class UploadConnector extends AbstractComponentConnector implements
}
@Override
+ public void onStateChanged(StateChangeEvent stateChangeEvent) {
+ super.onStateChanged(stateChangeEvent);
+
+ getWidget().disableTitle(hasTooltip());
+ }
+
+ @Override
public VUpload getWidget() {
return (VUpload) super.getWidget();
}