Skip to content

Commit

Permalink
fix(panel): don't process backdrop if disabled
Browse files Browse the repository at this point in the history
fixes #4069
  • Loading branch information
nolimits4web committed Sep 14, 2022
1 parent 7b0aea0 commit c01b23c
Showing 1 changed file with 13 additions and 6 deletions.
19 changes: 13 additions & 6 deletions src/core/components/panel/swipe-panel.js
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ function swipePanel(panel) {
if (!panel.opened) {
panel.insertToRoot();
$el.addClass('panel-in-swipe');
$backdropEl.css('visibility', 'visible');
if ($backdropEl) $backdropEl.css('visibility', 'visible');
$el.trigger('panel:swipeopen');
panel.emit('local::swipeOpen panelSwipeOpen', panel);
}
Expand Down Expand Up @@ -174,22 +174,27 @@ function swipePanel(panel) {
if (effect === 'reveal') {
if (!params.swipeNoFollow) {
$viewEl.transform(`translate3d(${translate}px,0,0)`).transition(0);
$backdropEl.transform(`translate3d(${translate}px,0,0)`).transition(0);
if ($backdropEl) $backdropEl.transform(`translate3d(${translate}px,0,0)`).transition(0);
}

$el.trigger('panel:swipe', Math.abs(translate / panelWidth));
panel.emit('local::swipe panelSwipe', panel, Math.abs(translate / panelWidth));
} else {
if (side === 'left') translate -= panelWidth;
if (!params.swipeNoFollow) {
$backdropEl.transition(0);
backdropOpacity = 1 - Math.abs(translate / panelWidth);
$backdropEl.css({ opacity: backdropOpacity });
if ($backdropEl) {
$backdropEl.transition(0);
$backdropEl.css({ opacity: backdropOpacity });
}

$el.transform(`translate3d(${translate}px,0,0)`).transition(0);
if (effect === 'push') {
const viewTranslate = side === 'left' ? translate + panelWidth : translate - panelWidth;
$viewEl.transform(`translate3d(${viewTranslate}px,0,0)`).transition(0);
$backdropEl.transform(`translate3d(${viewTranslate}px,0,0)`).transition(0);
if ($backdropEl) {
$backdropEl.transform(`translate3d(${viewTranslate}px,0,0)`).transition(0);
}
}
}

Expand Down Expand Up @@ -303,7 +308,9 @@ function swipePanel(panel) {
$el.removeClass('panel-in-swipe');
}
$el.transition('').transform('');
$backdropEl.transform('').transition('').css({ opacity: '', visibility: '' });
if ($backdropEl) {
$backdropEl.transform('').transition('').css({ opacity: '', visibility: '' });
}
}
function handleGestureStart(e) {
isGestureStarted = true;
Expand Down

0 comments on commit c01b23c

Please sign in to comment.