summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Yatskov <alex@foosoft.net>2017-02-08 20:13:45 -0800
committerAlex Yatskov <alex@foosoft.net>2017-02-08 20:13:45 -0800
commit2e3aec9ba11b15d7ac2b5d99af2dacac88e9c276 (patch)
tree20b47cc94b727e88dd077c29940b89a707265155
parentf3fe0994f52067d7c6d1886b02afd8f0a2a15099 (diff)
fix "url" not being set on kanji cards, add more fields
-rw-r--r--ext/bg/js/options-form.js2
-rw-r--r--ext/fg/js/driver.js6
-rw-r--r--ext/fg/js/frame.js10
3 files changed, 15 insertions, 3 deletions
diff --git a/ext/bg/js/options-form.js b/ext/bg/js/options-form.js
index 4470d105..91c6f140 100644
--- a/ext/bg/js/options-form.js
+++ b/ext/bg/js/options-form.js
@@ -351,7 +351,7 @@ function populateAnkiFields(element, options) {
const markers = {
'terms': ['audio', 'dictionary', 'expression', 'furigana', 'glossary', 'reading', 'sentence', 'tags', 'url'],
- 'kanji': ['character', 'dictionary', 'glossary', 'kunyomi', 'onyomi', 'url']
+ 'kanji': ['character', 'dictionary', 'glossary', 'kunyomi', 'onyomi', 'sentence', 'tags', 'url']
}[tabId] || {};
return anki().getModelFieldNames(modelName).then(names => {
diff --git a/ext/fg/js/driver.js b/ext/fg/js/driver.js
index 7facda0a..cb7f2ea6 100644
--- a/ext/fg/js/driver.js
+++ b/ext/fg/js/driver.js
@@ -167,7 +167,11 @@ class Driver {
if (definitions.length === 0) {
return false;
} else {
- definitions.forEach(definition => definition.url = window.location.href);
+ const sentence = extractSentence(textSource, this.options.anki.sentenceExt);
+ definitions.forEach(definition => {
+ definition.url = window.location.href;
+ definition.sentence = sentence;
+ });
this.popup.showNextTo(textSource.getRect());
this.popup.showKanjiDefs(definitions, this.options);
diff --git a/ext/fg/js/frame.js b/ext/fg/js/frame.js
index dba59000..df8ca894 100644
--- a/ext/fg/js/frame.js
+++ b/ext/fg/js/frame.js
@@ -49,7 +49,15 @@ class Frame {
$('.kanji-link').click(e => {
e.preventDefault();
- findKanji($(e.target).text()).then(kdefs => this.api_showKanjiDefs({options, definitions: kdefs}));
+ const character = $(e.target).text();
+ findKanji(character).then(kdefs => {
+ kdefs.forEach(kdef => {
+ kdef.url = definitions[0].url;
+ kdef.sentence = definitions[0].sentence;
+ });
+
+ this.api_showKanjiDefs({options, definitions: kdefs});
+ });
});
$('.action-play-audio').click(e => {