diff --git a/css/modals.css b/css/modals.css
index f5740ae..3548831 100644
--- a/css/modals.css
+++ b/css/modals.css
@@ -42,3 +42,7 @@
.selectFiles div .controls {
margin-left: 30px;
}
+
+.selectFiles div.recursivedir {
+ width: 100%;
+}
\ No newline at end of file
diff --git a/index.html b/index.html
index c58e77e..4caa7af 100644
--- a/index.html
+++ b/index.html
@@ -23,7 +23,7 @@
-
+
@@ -1044,7 +1044,7 @@
{{ 'click the text to expand the folder' | translate }}
{{ 'click the text to collapse the folder' | translate }}
-
diff --git a/js/directives/fileselect.js b/js/directives/fileselect.js
index d1f5f61..235fddb 100644
--- a/js/directives/fileselect.js
+++ b/js/directives/fileselect.js
@@ -48,6 +48,13 @@ app.directive("indeterminate", [
}
};
};
+ var passIfIsIndeterminate = function (callback) { // pass through the event from the scope where they sent
+ return function () {
+ if (!elem.prop("indeterminate")) {
+ return callback.apply(this, arguments);
+ }
+ };
+ };
var catchEventOnlyOnce = function (callback) { // only fire once, and stop event's propagation
return function (event) {
callback.apply(this, arguments);
@@ -102,15 +109,13 @@ app.directive("indeterminate", [
var allSelected = (cacheNoSelectedSubInputNumber === 0);
var anySeleted = (cacheSelectedSubInputNumber > 0);
setIndeterminateState(allSelected !== anySeleted); // if at least one is selected, but not all then set input property indeterminate to true
- setModelValueWithSideEffect(allSelected);
+ setModelValueWithSideEffect(allSelected); // change binding model value and trigger onchange event
};
// is not leaf input, Only receive child change and parent change event
- ngModelCtrl.$viewChangeListeners.push(passIfIsLeafChild(function () {
- // emit when property indeterminate is set to false, prevent recursively emitting event from parent to children, children to parent
- if (!elem.prop("indeterminate")) {
- scope.$broadcast("ParentSelectedChange", get());
- }
- }));
+ ngModelCtrl.$viewChangeListeners.push(passIfIsLeafChild(passIfIsIndeterminate(function () {
+ // emit when input property indeterminate is false, prevent recursively emitting event from parent to children, children to parent
+ scope.$broadcast("ParentSelectedChange", get());
+ })));
// reset input state base on children inputs
scope.$on("childSelectedChange", passThroughThisScope(passIfIsLeafChild(updateBaseOnChildrenState)));
}