Fix item selection that requires switching to library root

Broken in c7639f328f
This commit is contained in:
Dan Stillman 2017-10-07 05:05:34 -04:00
parent d4569d3640
commit 773a93f55d
2 changed files with 16 additions and 7 deletions

View File

@ -1180,10 +1180,9 @@ Zotero.CollectionTreeView.prototype.selectItem = Zotero.Promise.coroutine(functi
yield this.selectLibrary(item.libraryID);
}
var itemTreeView = this.itemTreeView;
yield itemTreeView.waitForLoad();
yield this.itemTreeView.waitForLoad();
var selected = yield itemTreeView.selectItem(itemID, expand);
var selected = yield this.itemTreeView.selectItem(itemID, expand);
if (selected) {
return true;
}
@ -1197,9 +1196,9 @@ Zotero.CollectionTreeView.prototype.selectItem = Zotero.Promise.coroutine(functi
yield this.selectLibrary(item.libraryID);
}
yield itemTreeView.waitForLoad();
yield this.itemTreeView.waitForLoad();
return itemTreeView.selectItem(itemID, expand);
return this.itemTreeView.selectItem(itemID, expand);
});

View File

@ -481,8 +481,18 @@ describe("Zotero.CollectionTreeView", function() {
yield win.ZoteroPane.deleteSelectedCollection();
assert.isFalse(cv.getRowIndexByID(id))
})
})
});
describe("#selectItem()", function () {
it("should switch to library root if item isn't in collection", async function () {
var item = await createDataObject('item');
var collection = await createDataObject('collection');
await cv.selectItem(item.id);
await waitForItemsLoad(win);
assert.equal(cv.selection.currentIndex, 0);
assert.sameMembers(zp.itemsView.getSelectedItems(), [item]);
});
});
describe("#drop()", function () {
/**