Skip to content
This repository was archived by the owner on Sep 6, 2021. It is now read-only.

Commit 151f3c1

Browse files
committed
Handle clicking on the label too
1 parent 04e0ec0 commit 151f3c1

1 file changed

Lines changed: 25 additions & 5 deletions

File tree

src/project/ProjectManager.js

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -670,9 +670,20 @@ define(function (require, exports, module) {
670670
// install scroller shadows
671671
ViewUtils.addScrollerShadow(_projectTree.get(0));
672672

673-
_projectTree
674-
.off("click.jstree", "li > ins")
675-
.on("click.jstree", "li > ins", function (event) {
673+
var findEventHandler = function (type, namespace, selector) {
674+
var events = $._data(_projectTree[0], "events"),
675+
eventsForType = events ? events[type] : null,
676+
event = eventsForType ? _.find(eventsForType, function (e) {
677+
return e.namespace === namespace && e.selector === selector;
678+
}) : null,
679+
eventHandler = event ? event.handler : null;
680+
if (!eventHandler) {
681+
console.error(type + "." + namespace + " " + selector + " handler not found!");
682+
}
683+
return eventHandler;
684+
};
685+
var createCustomHandler = function(originalHandler) {
686+
return function (event) {
676687
var $node = $(event.target).parent("li");
677688
if (event.ctrlKey || event.metaKey) {
678689
if (event.altKey) {
@@ -692,8 +703,17 @@ define(function (require, exports, module) {
692703
}
693704
}
694705
// original behaviour
695-
_projectTree.jstree("toggle_node", $node);
696-
})
706+
originalHandler.apply(this, arguments);
707+
};
708+
};
709+
var originalHrefHandler = findEventHandler("click", "jstree", "a");
710+
var originalInsHandler = findEventHandler("click", "jstree", "li > ins");
711+
712+
_projectTree
713+
.off("click.jstree", "a")
714+
.on("click.jstree", "a", createCustomHandler(originalHrefHandler))
715+
.off("click.jstree", "li > ins")
716+
.on("click.jstree", "li > ins", createCustomHandler(originalInsHandler))
697717
.unbind("dblclick.jstree")
698718
.bind("dblclick.jstree", function (event) {
699719
var entry = $(event.target).closest("li").data("entry");

0 commit comments

Comments
 (0)