Skip to content

Commit 7bf4100

Browse files
committed
add option to disable trackpad gestures
Add a new setting to disable 'Go Back' and 'Go Forward' gestures on trackpads. Also update the settings UI and translations to support this feature.
1 parent a8aa8ae commit 7bf4100

36 files changed

+72
-14
lines changed

js/webviewGestures.js

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
var webviews = require('webviews.js')
2+
var settings = require('util/settings/settings.js')
23

34
var webviewGestures = {
45
showBackArrow: function () {
@@ -93,24 +94,27 @@ function onSwipeGestureLowVelocity () {
9394
}
9495

9596
webviews.callAsync(tabs.getSelected(), 'getZoomFactor', function(err, result) {
96-
const minScrollDistance = 150 * result;
97+
const isTrackpadGesturesEnabled = !settings.get('disableGoBackwardAndGoForwardGestures')
9798

99+
if (isTrackpadGesturesEnabled) {
100+
const minScrollDistance = 150 * result;
98101
if ((leftMouseMove / rightMouseMove > 5) || (rightMouseMove / leftMouseMove > 5)) {
99-
// swipe to the left to go forward
100-
if (leftMouseMove - beginningScrollRight > minScrollDistance && Math.abs(horizontalMouseMove / verticalMouseMove) > 3) {
101-
if (beginningScrollRight < 5) {
102-
resetDistanceCounters()
103-
resetScrollCounters()
104-
webviews.callAsync(tabs.getSelected(), 'goForward')
102+
// swipe to the left to go forward
103+
if (leftMouseMove - beginningScrollRight > minScrollDistance && Math.abs(horizontalMouseMove / verticalMouseMove) > 3) {
104+
if (beginningScrollRight < 5) {
105+
resetDistanceCounters()
106+
resetScrollCounters()
107+
webviews.callAsync(tabs.getSelected(), 'goForward')
108+
}
105109
}
106-
}
107110

108-
// swipe to the right to go backwards
109-
if (rightMouseMove + beginningScrollLeft > minScrollDistance && Math.abs(horizontalMouseMove / verticalMouseMove) > 3) {
110-
if (beginningScrollLeft < 5) {
111-
resetDistanceCounters()
112-
resetScrollCounters()
113-
webviews.goBackIgnoringRedirects(tabs.getSelected())
111+
// swipe to the right to go backwards
112+
if (rightMouseMove + beginningScrollLeft > minScrollDistance && Math.abs(horizontalMouseMove / verticalMouseMove) > 3) {
113+
if (beginningScrollLeft < 5) {
114+
resetDistanceCounters()
115+
resetScrollCounters()
116+
webviews.goBackIgnoringRedirects(tabs.getSelected())
117+
}
114118
}
115119
}
116120
}

localization/languages/ar.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
"settingsLanguageSelection": null, //missing translation
166166
"settingsSeparateTitlebarToggle": "إستعمل شريط عنوان منفصل",
167167
"settingsAutoplayToggle": "تفعيل التشغيل التلقائي",
168+
"settingsDisableGoBackwardAndGoForwardGestures": "تعطيل الإيماءات 'رجوع' و'تقدم' على لوحة التتبع",
168169
"settingsOpenTabsInForegroundToggle": "الإنتقال إلى التبويب الجديد عند فتحه",
169170
"settingsUserscriptsExplanation": {
170171
"unsafeHTML": "يمكن سكريبت المستخدم من تغير سلوك المواقع - <a href=\"https://github.com/minbrowser/min/wiki/userscripts\">معرفة المزيد</a>."

localization/languages/be.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
"settingsLanguageSelection": null, //missing translation
166166
"settingsSeparateTitlebarToggle": "Выкарыстоўваць сістэмны загаловак акна",
167167
"settingsAutoplayToggle": "Уключыць аўтаматычнае прайграванне",
168+
"settingsDisableGoBackwardAndGoForwardGestures": "Адключыць жэсты 'Назад' і 'Наперад' на трэкпадзе",
168169
"settingsOpenTabsInForegroundToggle": "Адкрываць новыя ўкладкі на пярэднім плане",
169170
"settingsUserscriptsExplanation": {
170171
"unsafeHTML": "Карыстальнiцкiя скрыпты дазваляюць змяняць паводзіны сайтаў - <a href=\"https://github.com/minbrowser/min/wiki/userscripts\">даведацца больш</a>."

localization/languages/bn.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
"settingsLanguageSelection": null, //missing translation
166166
"settingsSeparateTitlebarToggle": "পৃথক শিরোনাম বার ব্যবহার করুন",
167167
"settingsAutoplayToggle": null, //missing translation
168+
"settingsDisableGoBackwardAndGoForwardGestures": "ট্র্যাকপ্যাডে 'পেছনে যাওয়া' এবং 'সামনে যাওয়া' নির্দেশক বন্ধ করুন",
168169
"settingsOpenTabsInForegroundToggle": "অগ্রভাগে নতুন ট্যাবগুলি খুলুন",
169170
"settingsUserscriptsExplanation": {
170171
"unsafeHTML": "ব্যবহারকারীর স্ক্রিপ্ট আপনাকে ওয়েবসাইটের আচরণ পরিবর্তন করার অনুমতি দেয় - <a href=\"https://github.com/minbrowser/min/wiki/userscripts\"> আরও শিখুন </a>"

localization/languages/ca.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
"settingsLanguageSelection": null, //missing translation
166166
"settingsSeparateTitlebarToggle": "Utilitzar barra de títol separada",
167167
"settingsAutoplayToggle": "Habilitar Reproducció Automàtica",
168+
"settingsDisableGoBackwardAndGoForwardGestures": "Desactiva els gestos del trackpad de 'Anar enrere' i 'Anar endavant'",
168169
"settingsOpenTabsInForegroundToggle": "Obrir noves pestanyes al primer pla",
169170
"settingsUserscriptsExplanation": {
170171
"unsafeHTML": "Els scripts d'usuari et permeten modificar el comportament dels llocs web - <a href=\"https://github.com/minbrowser/min/wiki/userscripts\">més informació</a>."

localization/languages/cs.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
"settingsLanguageSelection": null, //missing translation
166166
"settingsSeparateTitlebarToggle": "Použít systémové záhlaví okna",
167167
"settingsAutoplayToggle": "Povolit automatické přehrávání",
168+
"settingsDisableGoBackwardAndGoForwardGestures": "Zakázat gesta trackpadu 'Zpět' a 'Vpřed'",
168169
"settingsOpenTabsInForegroundToggle": "Ihned přepínat na nově otevřené karty",
169170
"settingsUserscriptsExplanation": {
170171
"unsafeHTML": "Uživatelské skripty umožňují upravit chování webových stránek - <a href=\"https://github.com/minbrowser/min/wiki/userscripts\">více informací</a>."

localization/languages/de.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
"settingsLanguageSelection": null, //missing translation
166166
"settingsSeparateTitlebarToggle": "Separate Titelleiste nutzen",
167167
"settingsAutoplayToggle": "Automatische Wiedergabe erlauben",
168+
"settingsDisableGoBackwardAndGoForwardGestures": "Deaktivieren Sie 'Zurück' und 'Vorwärts' Trackpad-Gesten",
168169
"settingsOpenTabsInForegroundToggle": "Neue Tabs im Vordergrund öffnen",
169170
"settingsUserscriptsExplanation": {
170171
"unsafeHTML": "Benutzerdefinierte Skripte erlauben es das Verhalten von Webseiten zu modifizieren - <a href=\"https://github.com/minbrowser/min/wiki/userscripts\"> mehr dazu.</a>."

localization/languages/el.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
"settingsLanguageSelection": null, //missing translation
166166
"settingsSeparateTitlebarToggle": "Χρήση ξεχωριστής γραμμής τίτλου",
167167
"settingsAutoplayToggle": "Ενεργοποίηση αυτοαναπαραγωγής",
168+
"settingsDisableGoBackwardAndGoForwardGestures": "Απενεργοποίηση χειρονομιών 'Πίσω' και 'Εμπρός' στο trackpad",
168169
"settingsOpenTabsInForegroundToggle": "Άνοιγμα νέας καρτέλας στο προσκήνιο",
169170
"settingsUserscriptsExplanation": {
170171
"unsafeHTML": "Τα scripts χρηστών σας επιτρέπουν να τροποποιήσετε την συμπεριφορά των ιστοσελίδων - <a href=\"https://github.com/minbrowser/min/wiki/userscripts\">μάθετε περισσότερα</a>."

localization/languages/en-US.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
"settingsLanguageSelection": "Language: ",
166166
"settingsSeparateTitlebarToggle": "Use separate title bar",
167167
"settingsAutoplayToggle": "Enable Autoplay",
168+
"settingsDisableGoBackwardAndGoForwardGestures": "Disable 'Go Back' and 'Go Forward' trackpad gestures",
168169
"settingsOpenTabsInForegroundToggle": "Open new tabs in the foreground",
169170
"settingsUserscriptsExplanation": {
170171
"unsafeHTML": "User scripts allow you to modify the behavior of websites - <a href=\"https://github.com/minbrowser/min/wiki/userscripts\">learn more</a>."

localization/languages/es.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@
165165
"settingsLanguageSelection": null, //missing translation
166166
"settingsSeparateTitlebarToggle": "Separar barra de título", //"Usar barra de título separada"
167167
"settingsAutoplayToggle": "Habilitar reproducción automática",
168+
"settingsDisableGoBackwardAndGoForwardGestures": "Desactivar gestos de trackpad 'Ir Atrás' e 'Ir Adelante'",
168169
"settingsOpenTabsInForegroundToggle": "Abrir nuevas pestañas en primer plano",
169170
"settingsUserscriptsExplanation": {
170171
"unsafeHTML": "Los userscripts te permiten modificar el comportamiento de los sitios web - <a href=\"https://github.com/minbrowser/min/wiki/userscripts\">Más información</a>."

0 commit comments

Comments
 (0)