Skip to content
Snippets Groups Projects
Commit 7c5c53f5 authored by Piotr Gawron's avatar Piotr Gawron
Browse files

when clicking on SVG no error is thrown

parent 1795b655
No related branches found
No related tags found
1 merge request!290Resolve "Context menu listener breaks when a SVG element is present"
Pipeline #
......@@ -24,7 +24,12 @@ function ContextMenu(params) {
self.MIN_SHOW_TIME = 2000;
self._documentClickListener = function (e) {
if (e.target.className.indexOf("dropdown-link") === -1) {
var className = e.target.className;
if (typeof className === 'string' || className instanceof String) {
if (className.indexOf("dropdown-link") === -1) {
self.hide(e.timeStamp - self.MIN_SHOW_TIME);
}
} else {
self.hide(e.timeStamp - self.MIN_SHOW_TIME);
}
};
......
......@@ -8,25 +8,25 @@ var chai = require('chai');
var assert = chai.assert;
var logger = require('../logger');
describe('ContextMenu', function() {
describe('ContextMenu', function () {
it('constructor', function() {
it('constructor', function () {
var map = helper.createCustomMap();
new ContextMenu({
element : testDiv,
customMap : map
element: testDiv,
customMap: map
});
assert.equal(logger.getWarnings().length, 0);
});
it('open', function() {
it('open', function () {
var map = helper.createCustomMap();
var menu = new ContextMenu({
element : testDiv,
customMap : map
element: testDiv,
customMap: map
});
var event = document.createEvent('MouseEvent');
......@@ -34,16 +34,31 @@ describe('ContextMenu', function() {
assert.equal(logger.getWarnings().length, 0);
});
it('hide', function() {
it('hide', function () {
var map = helper.createCustomMap();
var menu = new ContextMenu({
element : testDiv,
customMap : map
element: testDiv,
customMap: map
});
menu.hide();
assert.equal(logger.getWarnings().length, 0);
return menu.destroy();
});
it('documentClickListener', function () {
var map = helper.createCustomMap();
var menu = new ContextMenu({
element: testDiv,
customMap: map
});
menu._documentClickListener({target: {className: {}}});
return menu.destroy();
});
});
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment