Changes to action system:

- Change selected to not start at global root - fixes key handler only working for 1 app
 - Add depth limit for finding action / object (depth first search)
 - Use depth limit when looking for top level application action/object to avoid crossing apps
This commit is contained in:
Nathan Gray
2014-01-18 11:21:53 +00:00
parent 7879e7ac2e
commit 35c70fea93
5 changed files with 53 additions and 28 deletions

View File

@ -327,14 +327,16 @@ var et2_dataview_selectionManager = Class.extend(
}
function getElementRelatively (_step) {
var count = self._total;
// Get a reasonable number of iterations - not all
var total = Math.max(1,Math.min(Object.keys(self._indexMap).length,50));
var count = total;
var element = null;
var idx = _entry.idx;
while(element == null && count > 0 && idx <= self._total)
while(element == null && count > 0 && idx <= total)
{
count--;
element = getIndexAO(Math.max(0,
Math.min(self._total - 1, idx += _step)));
Math.min(self._total||total - 1, idx += _step)));
}
return element;
};