Skip to content
This repository was archived by the owner on Oct 22, 2020. It is now read-only.

Commit 2b983ce

Browse files
committed
Minor efficiency tweaks
1 parent e2c3c1c commit 2b983ce

File tree

1 file changed

+15
-10
lines changed

1 file changed

+15
-10
lines changed

angular.tree.js

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -136,25 +136,30 @@
136136
if (tree.trackSelection) {
137137
treeElem.bind('click', function (evt) {
138138
var selectedItemElem = findParentListItem(evt.target);
139+
var selectedItemScope = selectedItemElem ? selectedItemElem.scope() : null;
139140

140141
if (evt.metaKey && tree.multiple) {
141-
if (selectedItemElem) {
142-
selectedItemElem.scope().$apply(function () {
143-
tree.selected(selectedItemElem.scope(), ! selectedItemElem.scope().$selected);
142+
if (selectedItemScope) {
143+
selectedItemScope.$apply(function () {
144+
tree.selected(selectedItemScope, ! selectedItemScope.$selected);
144145
});
145146
}
146147
} else {
147148
descendNodes(treeElem, function (listElem, itemElem) {
148-
if ((! selectedItemElem || itemElem[0] !== selectedItemElem[0]) && itemElem.scope().$selected) {
149-
itemElem.scope().$apply(function () {
150-
tree.selected(itemElem.scope(), false);
151-
});
149+
if (! selectedItemElem || itemElem[0] !== selectedItemElem[0]) {
150+
var itemScope = itemElem.scope();
151+
152+
if (itemScope.$selected) {
153+
itemScope.$apply(function () {
154+
tree.selected(itemScope, false);
155+
});
156+
}
152157
}
153158
});
154159

155-
if (selectedItemElem && ! selectedItemElem.scope().$selected) {
156-
selectedItemElem.scope().$apply(function () {
157-
tree.selected(selectedItemElem.scope(), true);
160+
if (selectedItemScope && ! selectedItemScope.$selected) {
161+
selectedItemScope.$apply(function () {
162+
tree.selected(selectedItemScope, true);
158163
});
159164
}
160165
}

0 commit comments

Comments
 (0)