Skip to content

Commit

Permalink
Add fireActivate option to ext-persist (default: true)
Browse files Browse the repository at this point in the history
Close #479
  • Loading branch information
mar10 committed Aug 23, 2015
1 parent 2f077a5 commit 96e94ad
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 9 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
* [Changed] Documented `iconClass` callback and changed signature from
`iconClass(node)` to `iconClass(event, data)`
* [Improved] Add `highlight` and `fuzzy` options to ext-filter
* [Improved] Add `fireActivate` option to ext-persist (default: true)
* [Fixed] #475 Font color while editing node title with bootstrap skin

# 2.11.0 / 2015-07-26
Expand Down
15 changes: 8 additions & 7 deletions demo/sample-ext-persist.html
Original file line number Diff line number Diff line change
Expand Up @@ -39,25 +39,26 @@
},
persist: {
expandLazy: true,
// overrideSource: false, // true: cookie takes precedence over `source` data attributes.
// fireActivate: false, // false: suppress `activate` event after active node was restored
// overrideSource: false, // true: cookie takes precedence over `source` data attributes.
store: "auto" // 'cookie', 'local': use localStore, 'session': sessionStore
},
// don't use this in production code:
ajax: {
debugDelay: [200, 1000]
},
init: function(event, data) {
data.tree.debug("init", data);
data.tree.debug(event.type, data);
},
restore: function(event, data) {
data.tree.debug("restore", data);
data.tree.debug(event.type, data);
},
activate: function(event, data) {
// alert("activate " + data.node);
data.node.debug(event.type, data);
},
loadChildren: function(event, data) {
data.node.debug(event.type, data);
},
// loadChildren: function(event, data) {
// data.node.debug("loadChildren", data);
// },
postProcess: function(event, data) {
// Create predictable, **unique** keys, which we need for our lazy
// persistence example. This is only required for this demo,
Expand Down
9 changes: 7 additions & 2 deletions src/jquery.fancytree.persist.js
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,7 @@ $.ui.fancytree.registerExtension({
secure: false
},
expandLazy: false, // true: recursively expand and load lazy nodes
fireActivate: true, // false: suppress `activate` event after active node was restored
overrideSource: true, // true: cookie takes precedence over `source` data attributes.
store: "auto", // 'cookie': force cookie, 'local': force localStore, 'session': force sessionStore
types: "active expanded focus selected"
Expand Down Expand Up @@ -234,7 +235,8 @@ $.ui.fancytree.registerExtension({
// Bind init-handler to apply cookie state
tree.$div.bind("fancytreeinit", function(event){
var cookie, dfd, i, keyList, node,
prevFocus = local._data(local.cookiePrefix + FOCUS); // record this before node.setActive() overrides it;
prevFocus = local._data(local.cookiePrefix + FOCUS), // record this before node.setActive() overrides it;
noEvents = instOpts.fireActivate === false;

// tree.debug("document.cookie:", document.cookie);

Expand Down Expand Up @@ -288,7 +290,10 @@ $.ui.fancytree.registerExtension({
node.debug("persist: set active", cookie);
// We only want to set the focus if the container
// had the keyboard focus before
node.setActive(true, {noFocus: true});
node.setActive(true, {
noFocus: true,
noEvents: noEvents
});
}
}
}
Expand Down

0 comments on commit 96e94ad

Please sign in to comment.