Merge branch '3.0' of github.com:zotero/zotero into 3.0

This commit is contained in:
Simon Kornblith 2012-02-01 18:23:54 -05:00
commit ff406ba827
2 changed files with 16 additions and 8 deletions

View file

@ -389,7 +389,7 @@ Zotero.Annotate.Path.prototype.fromNode = function(node, offset) {
}
if(!node) throw "Annotate: Path() resolved text offset inappropriately";
while(node && !node === this._document) {
while(node && node !== this._document) {
var number = 1;
var sibling = node.previousSibling;
while(sibling) {
@ -731,10 +731,18 @@ Zotero.Annotations.prototype.save = function() {
// save annotations
for each(var annotation in this.annotations) {
annotation.save();
// Don't drop all annotations if one is broken (due to ~3.0 glitch)
try {
annotation.save();
}
catch(e) {
Zotero.debug(e);
continue;
}
}
Zotero.DB.commitTransaction();
} catch(e) {
Zotero.debug(e);
Zotero.DB.rollbackTransaction();
throw(e);
}
@ -1387,7 +1395,7 @@ Zotero.Highlight.prototype.unhighlight = function(container, offset, path, mode)
// loop through, removing nodes
var node = span.firstChild;
while(span.firstChild && !span.firstChild === textNode) {
while(span.firstChild && span.firstChild !== textNode) {
parentNode.insertBefore(span.removeChild(span.firstChild), span);
}
} else if(mode == 2) {
@ -1437,23 +1445,23 @@ Zotero.Highlight.prototype._highlight = function() {
var onlyOneNode = startNode === endNode;
if(!onlyOneNode && !startNode === ancestor && !endNode === ancestor) {
if(!onlyOneNode && startNode !== ancestor && endNode !== ancestor) {
// highlight nodes after start node in the DOM hierarchy not at ancestor level
while(startNode.parentNode && !startNode.parentNode === ancestor) {
while(startNode.parentNode && startNode.parentNode !== ancestor) {
if(startNode.nextSibling) {
this._highlightSpaceBetween(startNode.nextSibling, startNode.parentNode.lastChild);
}
startNode = startNode.parentNode
}
// highlight nodes after end node in the DOM hierarchy not at ancestor level
while(endNode.parentNode && !endNode.parentNode === ancestor) {
while(endNode.parentNode && endNode.parentNode !== ancestor) {
if(endNode.previousSibling) {
this._highlightSpaceBetween(endNode.parentNode.firstChild, endNode.previousSibling);
}
endNode = endNode.parentNode
}
// highlight nodes between start node and end node at ancestor level
if(!startNode === endNode.previousSibling) {
if(startNode !== endNode.previousSibling) {
this._highlightSpaceBetween(startNode.nextSibling, endNode.previousSibling);
}
}

View file

@ -759,4 +759,4 @@ connector.standaloneOpen = Your database cannot be accessed because Zotero Sta
firstRunGuidance.saveIcon = Zotero can recognize a reference on this page. Click this icon in the address bar to save the reference to your Zotero library.
firstRunGuidance.authorMenu = Zotero lets you specify editors and translators, too. You can turn an author into an editor or translator by selecting from this menu.
firstRunGuidance.quickFormat = Type a title or author to search for a reference. After you've made your selection, click the bubble to add page numbers, prefixes, or suffixes.\n\nIf you prefer the "classic" add citation dialog, you can revert to it in the Zotero preferences.
firstRunGuidance.quickFormat = Type a title or author to search for a reference. After you've made your selection, click the bubble to add page numbers, prefixes, or suffixes.