function bindSelectorChanged() {
var selection = editor.selection;
- if (itemName == "bullist") {
- selection.selectorChanged('ul > li', function(state, args) {
+ function setActiveItem(name) {
+ return function(state, args) {
var nodeName, i = args.parents.length;
while (i--) {
}
}
- item.active(state && nodeName == "UL");
- });
+ item.active(state && nodeName == name);
+ };
}
- if (itemName == "numlist") {
- selection.selectorChanged('ol > li', function(state, args) {
- var nodeName, i = args.parents.length;
-
- while (i--) {
- nodeName = args.parents[i].nodeName;
- if (nodeName == "OL" || nodeName == "UL") {
- break;
- }
- }
+ if (itemName == "bullist") {
+ selection.selectorChanged('ul > li', setActiveItem("UL"));
+ }
- item.active(state && nodeName == "OL");
- });
+ if (itemName == "numlist") {
+ selection.selectorChanged('ol > li', setActiveItem("OL"));
}
if (item.settings.stateSelector) {
return null;
}
- editor.on('click keyup blur', function() {
+ editor.on('click keyup', function() {
// Needs to be delayed to avoid Chrome img focus out bug
window.setTimeout(function() {
var match;
}, 0);
});
+ editor.on('blur hide', hideAllContextToolbars);
+
editor.on('ObjectResizeStart', function() {
var match = findFrontMostMatch(editor.selection.getNode());