Skip to content

Commit 8be4beb

Browse files
committed
Stop event propogation when show context menu in hitem
1 parent 0c333fe commit 8be4beb

1 file changed

Lines changed: 13 additions & 12 deletions

File tree

modules/gui/HierarchyPainter.mjs

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1876,21 +1876,21 @@ class HierarchyPainter extends BasePainter {
18761876
/** @summary alternative context menu, used in the object inspector
18771877
* @private */
18781878
direct_contextmenu(evnt, elem) {
1879-
evnt.preventDefault();
18801879
const itemname = d3_select(elem.parentNode.parentNode).attr('item'),
18811880
hitem = this.findItem(itemname);
1882-
if (!hitem)
1881+
if (!hitem || !isFunc(this.fill_context))
18831882
return;
18841883

1885-
if (isFunc(this.fill_context)) {
1886-
createMenu(evnt, this).then(menu => {
1887-
this.fill_context(menu, hitem);
1888-
if (menu.size() > 0) {
1889-
menu.tree_node = elem.parentNode;
1890-
menu.show();
1891-
}
1892-
});
1893-
}
1884+
evnt.preventDefault();
1885+
evnt.stopPropagation();
1886+
1887+
createMenu(evnt, this).then(menu => {
1888+
this.fill_context(menu, hitem);
1889+
if (menu.size() > 0) {
1890+
menu.tree_node = elem.parentNode;
1891+
menu.show();
1892+
}
1893+
});
18941894
}
18951895

18961896
/** @summary Fills settings menu items
@@ -1936,11 +1936,12 @@ class HierarchyPainter extends BasePainter {
19361936
/** @summary Handle context menu in the hierarchy
19371937
* @private */
19381938
tree_contextmenu(evnt, elem) {
1939-
evnt.preventDefault();
19401939
const itemname = d3_select(elem.parentNode.parentNode).attr('item'),
19411940
hitem = this.findItem(itemname);
19421941
if (!hitem)
19431942
return;
1943+
evnt.preventDefault();
1944+
evnt.stopPropagation();
19441945

19451946
const onlineprop = this.getOnlineProp(itemname),
19461947
fileprop = this.getFileProp(itemname);

0 commit comments

Comments
 (0)