Greg Sheremeta has uploaded a new change for review.

Change subject: userportal, webadmin: fixed hanging tooltips on click
......................................................................

userportal, webadmin: fixed hanging tooltips on click

Added a click handler to Tooltip to close the Tooltip when mouse
is clicked anywhere in the application.

WidgetTooltips were missing the click handler functionality to
close tooltips on any mouse click. (ElementTooltip has its own
click handler that can probably be removed in a follow-up
patch.)

Change-Id: I79d21be8f9832635e1c13e2fb1b604b5817ba351
Bug-Url: https://bugzilla.redhat.com/1211171
Signed-off-by: Greg Sheremeta <gsher...@redhat.com>
---
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/Tooltip.java
1 file changed, 18 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/78/40678/1

diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/Tooltip.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/Tooltip.java
index da9d3d7..1d62eaa 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/Tooltip.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tooltip/Tooltip.java
@@ -37,12 +37,15 @@
 import org.gwtbootstrap3.client.ui.constants.Trigger;
 
 import com.google.gwt.dom.client.Element;
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
 import com.google.gwt.event.logical.shared.AttachEvent;
 import com.google.gwt.safehtml.shared.SafeHtml;
 import com.google.gwt.user.client.Event;
 import com.google.gwt.user.client.ui.HasOneWidget;
 import com.google.gwt.user.client.ui.HasWidgets;
 import com.google.gwt.user.client.ui.IsWidget;
+import com.google.gwt.user.client.ui.RootPanel;
 import com.google.gwt.user.client.ui.Widget;
 import com.google.web.bindery.event.shared.HandlerRegistration;
 
@@ -102,6 +105,8 @@
 
     private Widget widget;
     private String id;
+
+    HandlerRegistration clickHandler;
 
     /**
      * Creates the empty Tooltip
@@ -417,6 +422,14 @@
         // First destroy the old tooltip
         destroy();
 
+        // add RootPanel click handler
+        clickHandler = RootPanel.get().addDomHandler(new ClickHandler() {
+            @Override
+            public void onClick(ClickEvent event) {
+                Tooltip.this.hide();
+            }
+        }, ClickEvent.getType());
+
         // prepare template
         String template = null;
         if (alternateTemplate == null) {
@@ -472,6 +485,11 @@
      */
     public void destroy() {
         call(widget.getElement(), DESTROY);
+
+        if (clickHandler != null) {
+            clickHandler.removeHandler();
+            clickHandler = null;
+        }
     }
 
     /**


-- 
To view, visit https://gerrit.ovirt.org/40678
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I79d21be8f9832635e1c13e2fb1b604b5817ba351
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Greg Sheremeta <gsher...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to