From fc5e6b2b410d6850278dd982990ce42552a3b1b2 Mon Sep 17 00:00:00 2001 From: Shin'ya Ueoka <ueokande@i-beam.org> Date: Sat, 21 Jul 2018 11:17:51 +0900 Subject: Complete open histories and bookmarks --- src/background/usecases/completions.js | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) (limited to 'src/background/usecases') diff --git a/src/background/usecases/completions.js b/src/background/usecases/completions.js index 21049d2..0bc34d1 100644 --- a/src/background/usecases/completions.js +++ b/src/background/usecases/completions.js @@ -27,8 +27,28 @@ export default class CompletionsInteractor { ); } - queryOpen() { - return Promise.resolve(Completions.empty()); + async queryOpen(name, keywords) { + let groups = []; + let histories = await this.completionRepository.queryHistories(keywords); + if (histories.length > 0) { + let items = histories.map(page => new CompletionItem({ + caption: page.title, + content: name + ' ' + page.url, + url: page.url + })); + groups.push(new CompletionGroup('History', items)); + } + + let bookmarks = await this.completionRepository.queryBookmarks(keywords); + if (bookmarks.length > 0) { + let items = bookmarks.map(page => new CompletionItem({ + caption: page.title, + content: name + ' ' + page.url, + url: page.url + })); + groups.push(new CompletionGroup('Bookmarks', items)); + } + return new Completions(groups); } queryBuffer(name, keywords) { -- cgit v1.2.3