diff --git a/web/chat/tooltip-provider.js b/web/chat/tooltip-provider.js
--- a/web/chat/tooltip-provider.js
+++ b/web/chat/tooltip-provider.js
@@ -18,6 +18,7 @@
 export type RenderTooltipResult = {
   +onMouseLeaveCallback: () => mixed,
   +clearTooltip: () => mixed,
+  +updateTooltip: React.Node => mixed,
 };
 
 type TooltipContextType = {
@@ -30,6 +31,7 @@
     renderTooltip: () => ({
       onMouseLeaveCallback: () => {},
       clearTooltip: () => {},
+      updateTooltip: () => {},
     }),
     clearTooltip: () => {},
   },
@@ -88,6 +90,11 @@
           tooltipCancelTimer.current = newTimer;
         },
         clearTooltip: () => clearTooltip(newNodeSymbol),
+        updateTooltip: (node: React.Node) => {
+          if (newNodeSymbol === tooltipSymbol.current) {
+            setTooltipNode(node);
+          }
+        },
       };
     },
     [clearTooltip],