Skip to content

Commit fb424ad

Browse files
JS-493: Double click doesn't work on mobile
1 parent cbde4c0 commit fb424ad

File tree

1 file changed

+20
-13
lines changed

1 file changed

+20
-13
lines changed

lib/web/magnifier/magnify.js

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -611,8 +611,17 @@ define([
611611
}
612612
}
613613

614-
$image.unbind('dblclick');
615-
$image.dblclick(dblClickHandler);
614+
if (isTouchEnabled) {
615+
$image.off('tap');
616+
$image.on('tap', function (e) {
617+
if (e.originalEvent.originalEvent.touches.length === 0) {
618+
detectDoubleTap(e);
619+
}
620+
});
621+
} else {
622+
$image.unbind('dblclick');
623+
$image.dblclick(dblClickHandler);
624+
}
616625

617626
if (gallery.fullScreen) {
618627
toggleZoomButtons($image, isTouchEnabled, checkForVideo(fotorama.activeFrame.$stageFrame));
@@ -781,13 +790,6 @@ define([
781790
}
782791
});
783792

784-
isTouchEnabled && $image.off('tap');
785-
isTouchEnabled && $image.on('tap', function (e) {
786-
if (e.originalEvent.originalEvent.touches.length === 0) {
787-
detectDoubleTap(e);
788-
}
789-
});
790-
791793
$(window).resize(function () {
792794
toggleZoomButtons($image, isTouchEnabled, checkForVideo(fotorama.activeFrame.$stageFrame));
793795
calculateMinSize($image);
@@ -930,13 +932,19 @@ define([
930932
})
931933
.on('fotorama:fullscreenenter fotorama:showend', function (e, fotorama) {
932934
hideMagnifier();
933-
resetVars($(fullscreenImageSelector));
935+
936+
if (!$(fullscreenImageSelector).is($prevImage)) {
937+
resetVars($(fullscreenImageSelector));
938+
}
934939
magnifierFullscreen(fotorama);
935940
mousewheel(e, fotorama, element);
936941

937942
if ($prevImage) {
938943
calculateMinSize($prevImage);
939-
resetVars($prevImage);
944+
945+
if (!$(fullscreenImageSelector).is($prevImage)) {
946+
resetVars($prevImage);
947+
}
940948
}
941949

942950
toggleStandartNavigation();
@@ -948,9 +956,8 @@ define([
948956
magnifierFullscreen(fotorama);
949957
})
950958
.on('fotorama:show', function (e, fotorama) {
951-
$prevImage = $(fullscreenImageSelector);
959+
$prevImage = _.clone($(fullscreenImageSelector));
952960
hideMagnifier();
953-
resetVars($(fullscreenImageSelector));
954961
})
955962
.on('fotorama:fullscreenexit', function (e, fotorama) {
956963
resetVars($(fullscreenImageSelector));

0 commit comments

Comments
 (0)