diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2018-10-16 15:03:57 +1300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-16 15:03:57 +1300 |
commit | e31a15ef90335af31185b4bb711c4c90ac52020a (patch) | |
tree | 8941a74b37791a02f04fb9068a841e75e96beeff /web | |
parent | e43322abed86fc73da470eafe553f87d5e5aa093 (diff) | |
parent | f4b596869e8f5e9af19f18fb33cb146742a8c252 (diff) | |
download | trackermap-web-e31a15ef90335af31185b4bb711c4c90ac52020a.tar.gz trackermap-web-e31a15ef90335af31185b4bb711c4c90ac52020a.tar.bz2 trackermap-web-e31a15ef90335af31185b4bb711c4c90ac52020a.zip |
Merge pull request #707 from gpproton/master
Work around for Firefox select and touch issues
Diffstat (limited to 'web')
-rw-r--r-- | web/app/Application.js | 3 | ||||
-rw-r--r-- | web/app/view/TouchFix62.js | 48 |
2 files changed, 50 insertions, 1 deletions
diff --git a/web/app/Application.js b/web/app/Application.js index a4cbbf22..9b718807 100644 --- a/web/app/Application.js +++ b/web/app/Application.js @@ -21,7 +21,8 @@ Ext.define('Traccar.Application', { requires: [ 'Traccar.Style', - 'Traccar.AttributeFormatter' + 'Traccar.AttributeFormatter', + 'Traccar.view.TouchFix62' ], models: [ diff --git a/web/app/view/TouchFix62.js b/web/app/view/TouchFix62.js new file mode 100644 index 00000000..300d4f70 --- /dev/null +++ b/web/app/view/TouchFix62.js @@ -0,0 +1,48 @@ +/* + * Copyright 2018 Anton Tananaev (anton@traccar.org) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +/* + * Workaround for bug in ExtJs 6.2.0. + * Resolved in current yet unreleased version + */ + +Ext.define('Traccar.view.TouchFix62', { + override: 'Ext.dom.Element' +}, +function () { + var additiveEvents = this.prototype.additiveEvents, + eventMap = this.prototype.eventMap; + if (Ext.supports.TouchEvents && Ext.firefoxVersion >= 52 && Ext.os.is.Desktop) { + eventMap['touchstart'] = 'mousedown'; + eventMap['touchmove'] = 'mousemove'; + eventMap['touchend'] = 'mouseup'; + eventMap['touchcancel'] = 'mouseup'; + eventMap['click'] = 'click'; + eventMap['dblclick'] = 'dblclick'; + additiveEvents['mousedown'] = 'mousedown'; + additiveEvents['mousemove'] = 'mousemove'; + additiveEvents['mouseup'] = 'mouseup'; + additiveEvents['touchstart'] = 'touchstart'; + additiveEvents['touchmove'] = 'touchmove'; + additiveEvents['touchend'] = 'touchend'; + additiveEvents['touchcancel'] = 'touchcancel'; + additiveEvents['pointerdown'] = 'mousedown'; + additiveEvents['pointermove'] = 'mousemove'; + additiveEvents['pointerup'] = 'mouseup'; + additiveEvents['pointercancel'] = 'mouseup'; + } +}); |