zulip/static
Austin Riba 5f83bc5cfe lightbox: Replace lightbox_canvas with PanZoom library.
This PR changes how the Pan & Zoom feature of images displayed in the
attachment lightbox are handled.

The existing method of using a canvas element is replaced by the Panzoom
library (timmywil/panzoom). This library is lightweight and has 0
transitive dependencies.

This fixes #20759 where the issue is that the viewport of a zoomed image
was not expanding to fill the available space on the page. Switching to
this new library also solves several other UX issues:

    * Images are no longer blurred when in Pan & Zoom mode.
    * The zoom behavior itself uses focal point zooming: zooming occurs
      where the cursor is on the image instead of at the center of the
      image, reducing the need for extra panning.
    * CSS transitions are used for a more visually pleasing experience
      when switching images, toggling zoom off, etc.
    * The library has the potential to open other file types which
      leaves that option open for us in the future.
2022-02-04 14:58:36 -08:00
..
assets icons: Set font-display: block for icon font. 2021-08-23 15:59:54 -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 policies: Rename "Terms of Use" to "Terms of Service" in DPA. 2022-01-20 13:15:00 -08:00
js lightbox: Replace lightbox_canvas with PanZoom library. 2022-02-04 14:58:36 -08:00
shared js: Avoid _.get. 2022-01-24 15:54:21 -08:00
styles lightbox: Replace lightbox_canvas with PanZoom library. 2022-02-04 14:58:36 -08:00
templates lightbox: Replace lightbox_canvas with PanZoom library. 2022-02-04 14:58:36 -08:00
third typeahead: Fix typeahead for custom selection triggers. 2022-02-02 17:27:08 -08:00
.gitignore dependencies: Replace moment.js with date-fns. 2021-02-05 11:04:32 -08:00