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>
pull/21833/head
Šimon Brandner 2021-05-06 16:40:33 +02:00
parent 683aec1066
commit bb9803a94e
No known key found for this signature in database
GPG Key ID: 9760693FDD98A790
1 changed files with 2 additions and 4 deletions

View File

@ -108,8 +108,6 @@ export default class ImageView extends React.Component<IProps, IState> {
window.addEventListener("resize", this.calculateZoom); window.addEventListener("resize", this.calculateZoom);
// After the image loads for the first time we want to calculate the zoom // After the image loads for the first time we want to calculate the zoom
this.image.current.addEventListener("load", this.calculateZoom); this.image.current.addEventListener("load", this.calculateZoom);
// Try to precalculate the zoom from width and height props
this.calculateZoom();
} }
componentWillUnmount() { componentWillUnmount() {
@ -122,8 +120,8 @@ export default class ImageView extends React.Component<IProps, IState> {
const image = this.image.current; const image = this.image.current;
const imageWrapper = this.imageWrapper.current; const imageWrapper = this.imageWrapper.current;
const width = this.props.width || image.naturalWidth; const width = image.naturalWidth;
const height = this.props.height || image.naturalHeight; const height = image.naturalHeight;
const zoomX = imageWrapper.clientWidth / width; const zoomX = imageWrapper.clientWidth / width;
const zoomY = imageWrapper.clientHeight / height; const zoomY = imageWrapper.clientHeight / height;