Commit graph

36 commits

Author SHA1 Message Date
Robin Townsend
17edfec3aa Make it easier to pan images in the lightbox
Previously, if you were dragging an image and your cursor outpaced the
edge of the image as it was moving, panning would abruptly stop. This
moves a few of the lightbox event listeners one level up to the image
wrapper to ensure that all drag movements are detected, even if they
don't end over the image's current position.

Signed-off-by: Robin Townsend <robin@robin.town>
2021-06-05 21:08:44 -04:00
Travis Ralston
6df079a5bd
Merge pull request #6033 from matrix-org/travis/rel-imageview
Add missing 'rel' to image view download button
2021-05-14 08:12:11 -06:00
Jaiwanth
26dd6d5510 Swap rotate left and right buttons
Signed-off-by: Jaiwanth <jaiwanth2011@gmail.com>
2021-05-14 08:26:29 +05:30
Travis Ralston
b9f775d969 Add missing 'rel' to image view download button
We're supposed to have this on every link off-site.
2021-05-13 20:55:14 -06:00
Šimon Brandner
7ad270928a
Simplifie code a bit
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-05-06 16:41:09 +02:00
Šimon Brandner
bb9803a94e
Don't try to use the event's metadata to calc the scale
That has lead to https://github.com/vector-im/element-web/issues/17184

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-05-06 16:40:33 +02:00
Jaiwanth
3eea1b8369 Add cleanup functions for image view 2021-05-04 16:42:22 +05:30
Šimon Brandner
1fcad1a634
Show zoom buttons only if zooming is enabled
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-26 15:47:58 +02:00
Šimon Brandner
53e8b5e6af
Merge branch 'image-view-zoom' of https://github.com/SimonBrandner/matrix-react-sdk into image-view-zoom 2021-04-26 15:01:47 +02:00
Šimon Brandner
3547d1f93b
Change cursor to default
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-26 15:01:06 +02:00
Šimon Brandner
e374fcfe91
Fix spelling 2021-04-26 13:49:29 +02:00
Šimon Brandner
dbca370497
Try to precalculate the zoom from width and height props
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-26 13:48:14 +02:00
Šimon Brandner
b741b3112a
If the image is small don't scale
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-26 13:47:06 +02:00
Šimon Brandner
33107a1f47
Fall back to natural height and width
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-26 13:30:14 +02:00
Šimon Brandner
c1a4204ad3
Use a ref instead of that ugly thing
Sometimes I do really weird things and don't know why :D

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-26 13:11:41 +02:00
Šimon Brandner
0e312977e3
Rework zooming
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-24 10:36:53 +02:00
Šimon Brandner
90f2423eb7
Fix zoom step and coeficient
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-24 10:35:25 +02:00
Šimon Brandner
bcc6e5c5d5
Add some comments
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-24 09:41:46 +02:00
Šimon Brandner
9b7a9fc865
Use MAX_SCALE for maxZoom
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-24 09:24:25 +02:00
Šimon Brandner
dcc060f6f7
Use correct cursor when we can't zoom
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-24 09:00:15 +02:00
Šimon Brandner
e0e9ccbf95
Remove logline
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-24 08:38:13 +02:00
Šimon Brandner
57b34f8dbc
Get rid of onWindowResize()
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-24 08:37:51 +02:00
Šimon Brandner
f8af9831a9
Don't use percanteages
I was an idiot to use them in the first place

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-24 08:35:45 +02:00
Šimon Brandner
4523b8c7b8
Add dynamic maxZoom and wire it all up
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-24 08:32:28 +02:00
Šimon Brandner
dad7a22055
Initial code for dynamic minZoom
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-24 08:03:39 +02:00
Šimon Brandner
2e6397d8aa
Wire up normalizeWheelEvent()
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-22 14:56:35 +02:00
Šimon Brandner
2e31355741
Don't do anything if we didn't press the left button
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-15 08:10:03 +02:00
Šimon Brandner
72d8e6ccca
Decrease ZOOM_COEFFICIENT
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-15 08:09:14 +02:00
Šimon Brandner
f9fde3670d
Set target to _blank
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-13 08:15:42 +02:00
Šimon Brandner
b1091a22a3
Don't render context menu button if mxEvent is missing
The button is useless and doesn't work if we're viewing an avatar

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-13 08:11:09 +02:00
Šimon Brandner
86dd81cda0
Fix rotation animation when rotating 360 deg
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-09 08:16:52 +02:00
Šimon Brandner
90f9d20f45
Add comment about refs to functional components
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-09 08:03:10 +02:00
Šimon Brandner
4a40f67e75
Make private
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-09 08:02:38 +02:00
Šimon Brandner
cb02c39d7f
Add name to copyright
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-09 08:01:14 +02:00
Šimon Brandner
88a881baec
ZOOM_DISTANCE into a const
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-03 16:19:22 +02:00
Šimon Brandner
fd8e785a5e
Why don't I convert this to Typescript while I am here?
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-04-03 16:14:27 +02:00
Renamed from src/components/views/elements/ImageView.js (Browse further)