zulip/static
Aman Agrawal 3410ff2e64 buddy_tooltips: Destroy tooltips if reference is not visible.
We destroy the tooltips for which `reference` was either removed
from DOM or is hidden.

We only need to do this for tooltips
contained in simplebar containers for which tooltips can
overflow the boundary of the simplebar container.

There are 4 approaches we could have done this:
1. Asked tippy.js maintainers to do this for us.
In https://github.com/atomiks/tippyjs/issues/938 the
maintainer said that it is the responsibility of
the user to do so.

2. Tracked whenever we update the DOM for such elements and hide
tooltips when we were hiding the `reference` elements. This had
various problems like it is hard trigger events when certain elements have
been removed from DOM when `html()` method is used to render
new content.

3. Run an `optimized` periodic job to destroy tooltips when
`reference` elements are hidden. This isn't a good method to
do this since it sucks power and adds latency.

4. Use a `MutationObserver` on the parent element and watch
for changes. This methods seems to work well with no bad
side effects. We use this approach.
2021-04-23 11:59:15 -07:00
..
assets eslint: Forbid CommonJS variables in ES6 modules. 2021-03-23 01:42:43 -07:00
audio notificaiton_sounds: Add some atonal sounds created by @stwime. 2021-02-05 12:28:20 -08:00
generated
html templates: Mark all void tags as self-closing. 2021-04-21 09:49:34 -07:00
images integrations: Add docs for GitHub Actions integration. 2021-04-15 16:42:31 -07:00
js buddy_tooltips: Destroy tooltips if reference is not visible. 2021-04-23 11:59:15 -07:00
shared shared: Bump version to 0.0.5. 2021-04-20 17:19:12 +08:00
styles compose: Replace message-control-button with compose_control_button. 2021-04-19 16:54:10 -07:00
templates settings: Add UI page for managing muted users. 2021-04-21 10:17:44 -07:00
third Revert "markdown: Add support to shorten GitHub links." 2021-04-02 15:52:34 -07:00
.gitignore dependencies: Replace moment.js with date-fns. 2021-02-05 11:04:32 -08:00