Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Won't Fix
-
Affects Version/s: EE-3.3.0.GA_P01
-
Fix Version/s: EE-3.3.0.GA_P02
-
Component/s: ACE-Components
-
Labels:None
-
Environment:All
-
Assignee Priority:P3
-
Support Case References:Support case #12719 - https://icesoft.my.salesforce.com/5007000000acbRR
Description
An ace:dataTable has a few ace:tooltip components defined in each of its columns. The table also has a menu which upon selection will update another field in the table. When the menu is selected, the tooltip is no longer shown for the updated column and a refresh is required to have it shown again.
Activity
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
Arturo Zambrano
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Won't Fix [ 2 ] |
Arturo Zambrano
made changes -
Attachment | welcomeICEfaces1.xhtml [ 17108 ] | |
Attachment | welcomeICEfaces2.xhtml [ 17109 ] |
Ken Fyten
made changes -
Assignee | Arturo Zambrano [ artzambrano ] | |
Fix Version/s | EE-3.3.0.GA_P02 [ 11371 ] | |
Affects Version/s | EE-3.3.0.GA_P02 [ 11371 ] | |
Assignee Priority | P3 [ 10012 ] |
Arran Mccullough
made changes -
Field | Original Value | New Value |
---|---|---|
Attachment | Case12719Example.war [ 16980 ] | |
Attachment | Case12719Example.zip [ 16981 ] |
Arran Mccullough
created issue -
The reason why the tooltip doesn't appear after updating the cell's text is simply that the node that originally had the event listener to display the tooltip is removed from the DOM and replaced by a new node without re-applying the tooltip functionality. There's just no way for a basic tooltip to know that it's original triggerer has been removed. Even using ace:ajax rendered attribute wouldn't work to update the tooltip in this case because the tooltip itself doesn't change so there's no update sent in the response that would re-initialize the tooltip.
Fortunately this can be easily fixed at the app level. Two ways are illustrated in the attached files welcomeICEfaces1.xhtml and welcomeICEfaces2.xhtml. In the first one, instead of an h:outputText, an h:panelGroup is used, which contains the tooltip itself, so when the panel group is updated, the tooltip is updated as well. In the second one, the issue is fixed by using the delegate mode. You simply wrap the table in an ace:delegate component and move the tooltip outside the table. Even if the content of the tooltip is static, delegate will work perfectly for this case too.