summaryrefslogtreecommitdiffstats
path: root/core/js/js.js
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2018-01-03 00:12:54 +0100
committerGitHub <noreply@github.com>2018-01-03 00:12:54 +0100
commit9d43724d455d5c538b000529f223b101fb1b7c9c (patch)
tree00c5d2d10b0ef9af3c6ff7c268d29d274dd558a4 /core/js/js.js
parent7fdd9097bb8cfa4a5d3afe161e1ee2a71da3a8eb (diff)
parentde4028336aca79ab243fc0d1ad3a904d4cc72299 (diff)
downloadnextcloud-server-9d43724d455d5c538b000529f223b101fb1b7c9c.tar.gz
nextcloud-server-9d43724d455d5c538b000529f223b101fb1b7c9c.zip
Merge pull request #7526 from nextcloud/make-possible-for-apps-to-disable-the-navigation-bar-slide-gesture
Make possible for apps to disable the navigation bar slide gesture
Diffstat (limited to 'core/js/js.js')
-rw-r--r--core/js/js.js37
1 files changed, 36 insertions, 1 deletions
diff --git a/core/js/js.js b/core/js/js.js
index 9af80676d5e..a9180663405 100644
--- a/core/js/js.js
+++ b/core/js/js.js
@@ -1612,12 +1612,47 @@ function initCore() {
snapper.close();
});
+ var navigationBarSlideGestureEnabled = false;
+ var navigationBarSlideGestureAllowed = true;
+ var navigationBarSlideGestureEnablePending = false;
+
+ OC.allowNavigationBarSlideGesture = function() {
+ navigationBarSlideGestureAllowed = true;
+
+ if (navigationBarSlideGestureEnablePending) {
+ snapper.enable();
+
+ navigationBarSlideGestureEnabled = true;
+ navigationBarSlideGestureEnablePending = false;
+ }
+ };
+
+ OC.disallowNavigationBarSlideGesture = function() {
+ navigationBarSlideGestureAllowed = false;
+
+ if (navigationBarSlideGestureEnabled) {
+ var endCurrentDrag = true;
+ snapper.disable(endCurrentDrag);
+
+ navigationBarSlideGestureEnabled = false;
+ navigationBarSlideGestureEnablePending = true;
+ }
+ };
+
var toggleSnapperOnSize = function() {
if($(window).width() > 768) {
snapper.close();
snapper.disable();
- } else {
+
+ navigationBarSlideGestureEnabled = false;
+ navigationBarSlideGestureEnablePending = false;
+ } else if (navigationBarSlideGestureAllowed) {
snapper.enable();
+
+ navigationBarSlideGestureEnabled = true;
+ navigationBarSlideGestureEnablePending = false;
+ } else {
+ navigationBarSlideGestureEnablePending = true;
}
};