mirror of
https://github.com/zulip/zulip.git
synced 2025-11-07 23:43:43 +00:00
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.
52 lines
2.0 KiB
Python
52 lines
2.0 KiB
Python
import os
|
|
|
|
ZULIP_VERSION = "5.0-dev+git"
|
|
|
|
# Add information on number of commits and commit hash to version, if available
|
|
zulip_git_version_file = os.path.join(
|
|
os.path.dirname(os.path.abspath(__file__)), "zulip-git-version"
|
|
)
|
|
lines = [ZULIP_VERSION, ""]
|
|
if os.path.exists(zulip_git_version_file):
|
|
with open(zulip_git_version_file) as f:
|
|
lines = f.readlines() + ["", ""]
|
|
ZULIP_VERSION = lines.pop(0).strip()
|
|
ZULIP_MERGE_BASE = lines.pop(0).strip()
|
|
|
|
LATEST_MAJOR_VERSION = "4.0"
|
|
LATEST_RELEASE_VERSION = "4.9"
|
|
LATEST_RELEASE_ANNOUNCEMENT = "https://blog.zulip.com/2021/05/13/zulip-4-0-released/"
|
|
|
|
# Versions of the desktop app below DESKTOP_MINIMUM_VERSION will be
|
|
# prevented from connecting to the Zulip server. Versions above
|
|
# DESKTOP_MINIMUM_VERSION but below DESKTOP_WARNING_VERSION will have
|
|
# a banner at the top of the page asking the user to upgrade.
|
|
DESKTOP_MINIMUM_VERSION = "5.2.0"
|
|
DESKTOP_WARNING_VERSION = "5.4.3"
|
|
|
|
# Bump the API_FEATURE_LEVEL whenever an API change is made
|
|
# that clients might want to condition on. If we forget at
|
|
# the time we make the change, then bump it later as soon
|
|
# as we notice; clients using API_FEATURE_LEVEL will just not
|
|
# use the new feature/API until the bump.
|
|
#
|
|
# Changes should be accompanied by documentation explaining what the
|
|
# new level means in templates/zerver/api/changelog.md, as well as
|
|
# "**Changes**" entries in the endpoint's documentation in `zulip.yaml`.
|
|
API_FEATURE_LEVEL = 115
|
|
|
|
# Bump the minor PROVISION_VERSION to indicate that folks should provision
|
|
# only when going from an old version of the code to a newer version. Bump
|
|
# the major version to indicate that folks should provision in both
|
|
# directions.
|
|
|
|
# Typically,
|
|
# * adding a dependency only requires a minor version bump;
|
|
# * removing a dependency requires a major version bump;
|
|
# * upgrading a dependency requires a major version bump, unless the
|
|
# upgraded dependency is backwards compatible with all of our
|
|
# historical commits sharing the same major version, in which case a
|
|
# minor version bump suffices.
|
|
|
|
PROVISION_VERSION = "173.4"
|