Commit Graph

3412 Commits

Author SHA1 Message Date
toasted-nutbread
437b588411
Fix case where "ready" message is received before frame "load" event (#1822) 2021-07-10 21:37:37 -04:00
toasted-nutbread
d897fb553d
Improve error when card has missing content (#1818) 2021-07-09 20:26:20 -04:00
toasted-nutbread
7a1570885e
Simplify get media structure (#1817)
* Remove format argument of getMedia

* Implement escaping
2021-07-09 20:14:05 -04:00
toasted-nutbread
22f048e527
Update Anki field marker menu (#1816)
* Update anki field marker menu to have less vertical padding

* Update positioning of field marker menu
2021-07-09 18:21:29 -04:00
toasted-nutbread
d446484947
Remove old settings main.js (#1815) 2021-07-09 18:09:15 -04:00
toasted-nutbread
8c68fa4d94
Anki text furigana parsing and {sentence-furigana} marker (#1814)
* Add support for textFurigana media

* Add readingMode parameter

* Implement readingMode

* Add {sentence-furigana} marker

* Fallback to sentence if furigana isn't available

* Update test data
2021-07-09 17:48:27 -04:00
toasted-nutbread
0d16709547
JapaneseUtil updates (#1813)
* Rename test file

* Use shorthand

* Add support checking functions

* Remove convertReading from JapaneseUtil
2021-07-09 17:31:16 -04:00
toasted-nutbread
daa44a8389
Fix an issue with reordering dictionary settings (#1812) 2021-07-09 16:06:12 -04:00
toasted-nutbread
24ec22b2e1
Text parse updates (#1811)
* Expose more settings to QueryParser

* Rename textParse to parseText

* Refactor

* Convert reading inside QueryParser rather than Backend

* Remove use of readingMode from backend

* Rename

* Update parseText args

* Simplify

* Update results

* Move use of optionsContext

* Run mecab and internal parser in parallel

* Added "dictionary-reading" reading mode

* Update romaji conversion case
2021-07-09 16:05:57 -04:00
toasted-nutbread
315dc425e4
Anki card selected text (#1809)
* Add support for injecting the text selection into Anki cards

* Add selection-text

* Upgrade to add {selection-text}

* Update descriptions

* Update test data
2021-07-07 20:00:30 -04:00
toasted-nutbread
9935e154f1
Update options-util tests and comment (#1806) 2021-07-06 22:59:24 -04:00
toasted-nutbread
1088c17503
Add support for injecting dictionary media into Anki cards (#1805) 2021-07-06 22:00:18 -04:00
toasted-nutbread
8d1596cdf8
Fix incorrect resultOutputMode (#1804) 2021-07-06 21:49:57 -04:00
toasted-nutbread
df72c3927b
Fix function names (#1803) 2021-07-06 20:07:13 -04:00
toasted-nutbread
e88d63fc6d
Template renderer media updates (#1802)
* Add TemplateRendererMediaProvider to abstract media-related functionality

* Update representation of injected media

* Update templates

* Update upgrade file

* Update tests

* Update test data

* Force media to be an object

* Update test data
2021-07-06 19:43:53 -04:00
toasted-nutbread
e155132085
OptionsUtil and tests updates (#1801)
* Update OptionsUtil.update to support an optional targetVersion param

* Update Anki template updates to have an explicit target version
2021-07-05 23:24:06 -04:00
toasted-nutbread
54808d4a2d
Pass requirements to note generation (#1800)
* Update structure

* Pass requirements to _createNote

* Show an error for requirements that weren't fulfilled
2021-07-05 16:59:30 -04:00
toasted-nutbread
da13a2ebff
DisplayAnki note requirements (#1799)
* Update how errors are collected from _formatField

* Expose requirements
2021-07-05 15:08:11 -04:00
toasted-nutbread
0491de12d4
Store anki note details (#1798)
* Update error handling of _areDictionaryEntriesAddable

* Store note details

* Remove promise after use

* Rename function

* Clear stored details

* Rename function

* Rename function
2021-07-05 14:41:11 -04:00
toasted-nutbread
b8478857aa
Refactor DisplayAnki.setupEntriesComplete params and implementation (#1794) 2021-07-04 11:11:05 -04:00
r00ster
e6a9aef2d5
Add a missing "of" (#1793) 2021-07-04 10:32:00 -04:00
toasted-nutbread
468c923277
Update the note context object generation process to ensure consistency (#1792) 2021-07-03 20:09:22 -04:00
toasted-nutbread
ea47cb8248
DisplayAnki (#1791)
* Remove anki functionality from display

* Rename function

* Display API updates

* Use DisplayAnki

* TODO
2021-07-03 19:32:11 -04:00
toasted-nutbread
82b7ebfa58
Remove uniqueness check for requirements (#1790) 2021-07-03 11:35:03 -04:00
toasted-nutbread
f7d177e6d0
Refactor createNote (#1789)
* Update createNote to return a wrapper object

* Update how createNote creates errors
2021-07-03 11:30:48 -04:00
toasted-nutbread
d7c934cae8
Fix simple glossary HTML not being escaped (#1788) 2021-07-03 10:46:51 -04:00
toasted-nutbread
ca97e38bd2
Anki support for structured-content (#1786)
* Update how glossary text is formatted

* Update structured content and image generation

* Pass root data to _createStructuredContentGenerator

* Implement media URLs

* Update documentation

* Update options util

* Apply styles to content

* Improve HTML normalization

* Update DatabaseVM.fetch function

* Update test

* Update test data
2021-07-02 22:46:38 -04:00
toasted-nutbread
a4715935cb
More CssStyleApplier updates (#1785)
* Update eslint rules for css-style-applier.js

* Don't use chrome.runtime.getURL

* Update CSP to allow inline styles
2021-07-02 22:12:02 -04:00
toasted-nutbread
56b2462f13
CssStyleApplier updates (#1784)
* Remove debug log

* Remove style attribute if empty

* Remove data-* attributes
2021-07-02 18:28:29 -04:00
toasted-nutbread
9c8f32d53f Update version 2021-06-30 20:43:39 -04:00
toasted-nutbread
558084ec13
Merge the Sentence Parsing section into the Text Parsing section (#1781) 2021-06-29 22:34:10 -04:00
toasted-nutbread
ace46503be
Make Display.authenticateMessageData private (#1780) 2021-06-29 22:17:14 -04:00
toasted-nutbread
deb2a742ed
Update dictionary image link color (#1778) 2021-06-28 22:19:55 -04:00
toasted-nutbread
1f1a958a71
Update CSS rules for images (#1777) 2021-06-28 22:12:17 -04:00
toasted-nutbread
9f3d267e24
Fix incorrect aspect ratio of structured-content images (#1776) 2021-06-28 21:46:54 -04:00
toasted-nutbread
1794c94844
Add separation before template-renderer-frame-main.js (#1774) 2021-06-27 19:29:22 -04:00
toasted-nutbread
1ba19adfe2
Add CssStyleApplier class (#1773) 2021-06-27 19:21:27 -04:00
toasted-nutbread
32d5fccc36
Template renderer init update (#1772)
* Update TemplateRendererFrameApi to post a 'ready' message

* Wait for 'ready' message rather than using 'load' event
2021-06-27 18:16:21 -04:00
toasted-nutbread
002da9fba8
Structured content style json (#1771)
* Install css

* Remove unnecessary rule

* Create CSS overrides file

* Create script to generate CSS JSON file

* Generate JSON

* Add test
2021-06-27 17:57:00 -04:00
toasted-nutbread
24ef820ba8
Update structured content CSS styles (#1770) 2021-06-27 15:01:35 -04:00
toasted-nutbread
94819e0ec3
Move structured content CSS into a separate file (#1769) 2021-06-27 11:46:16 -04:00
toasted-nutbread
6b8cd5e623
Template patcher updates (#1766)
* Don't append anything if the additions is empty

* Simplify update list
2021-06-26 23:55:06 -04:00
toasted-nutbread
8eb9c94f8a
Template renderer internal data update (#1764)
* Add cleanup callbacks

* Move requirements

* Add custom data
2021-06-26 17:43:07 -04:00
toasted-nutbread
f9167c8fdd
Template rendering updates (#1762)
* Remove unused function

* Update template rendering return value
2021-06-26 17:05:55 -04:00
toasted-nutbread
f497cb2a07
Remove unused template (#1761) 2021-06-26 15:52:00 -04:00
toasted-nutbread
e5284988e2
Structured content generation updates (#1760)
* Simplify _createElement, fix misuse of classList

* Don't use templates to generate image content

* Omit templates
2021-06-26 15:49:23 -04:00
toasted-nutbread
f389b3c232
Fix missing error logging when logging debug info (#1758) 2021-06-26 15:27:33 -04:00
toasted-nutbread
8d1d428ed4
Move structured-content generation code into a separate file (#1757) 2021-06-26 14:40:37 -04:00
toasted-nutbread
435af3a485
Improve what info is logged when debugging a definition (#1756) 2021-06-26 14:10:18 -04:00
toasted-nutbread
845070b817
Translator sorting updates (#1755)
* Update when definition sorting takes place

* Update test data

* Change order of sorting
2021-06-26 12:37:38 -04:00
toasted-nutbread
6e0a367afc
Translator data format updates (#1754)
* Add {dictionaryIndex, dictionaryPriority} to definitions

* Add score to definitions

* Add id to definition

* Use definition id instead of ids array

* Remove ids array

* Update docs

* Update test data
2021-06-26 11:57:09 -04:00
toasted-nutbread
5756885fa9
Structured content updates (#1753)
* Update schema

* Update content generation

* Update styles

* Update test data

* Update style names
2021-06-25 17:24:29 -04:00
toasted-nutbread
cf70b3de64
Fix search input focus not working properly (#1752) 2021-06-25 16:49:47 -04:00
toasted-nutbread
4d5e85ff09
Update dependencies (#1749)
* Update dependencies

* Remove unnecessary readonly attribute

* Run npm audit fix
2021-06-24 19:59:52 -04:00
toasted-nutbread
ef4ea2271b
Fix handling of document.body as <frameset> (#1748) 2021-06-24 19:18:33 -04:00
toasted-nutbread
1878b118fb
Fix an incorrect return value of the EventDispatcher.off function (#1747) 2021-06-24 19:15:09 -04:00
toasted-nutbread
7ae964c830
Structured content updates (#1733)
* Add support for imageRendering

* Make crisp-edges appearance on Firefox more similar to Chrome

* Refactor

* Add background option

* Move data-image-rendering attribute

* Restructure

* Organize

* Add support for appearance

* Update test dictionary

* Update tests
2021-06-06 14:47:48 -04:00
toasted-nutbread
3a095b1f6c
Improve secondary definitions (#1731)
* Improve secondary search definitions

* Simplify
2021-06-05 23:17:13 -04:00
toasted-nutbread
d87515ec12
Translator id updates (#1730)
* Allow unsequenced definitions to be added to multiple groups

* Update translator data to store multiple IDs

* Update Anki note data

* Update test data

* Update docs
2021-06-05 22:27:58 -04:00
toasted-nutbread
057283245e
Add support for definitionless main dictionary (#1729) 2021-06-05 13:35:23 -04:00
toasted-nutbread
57fb496fbc
Simplify createAudio function (#1728) 2021-06-04 20:17:04 -04:00
toasted-nutbread
c7e6c37095
Fix _getMatchURL missing search and not sanitizing wildcards (#1727) 2021-06-03 19:52:00 -04:00
toasted-nutbread
97d0a158d0 Update version 2021-05-31 22:25:05 -04:00
toasted-nutbread
744f9bb836 Revert "Auto update manifest version (#1724)"
This reverts commit e637408b4a.
2021-05-31 22:24:17 -04:00
toasted-nutbread
e637408b4a
Auto update manifest version (#1724)
* Update manifest to auto-fill the version based on most recent git tag

* Install git in the CI pipeline
2021-05-31 14:20:40 -04:00
toasted-nutbread
6da81d59c3
Update schema descriptions to be less redundant (#1721) 2021-05-30 16:22:25 -04:00
toasted-nutbread
5bf82a5b81
Primary audio fixes (#1719)
* Fix case when subIndex is not assigned

* Fix incorrect assignment of primary card audio

* Improve opacity style

* Improve styles for :focus-visible
2021-05-30 13:29:55 -04:00
toasted-nutbread
cca01e85a3
Improve multiple audio sources (#1718)
* Add url/voice options to audio sources

* Add help for TTS

* Remove old settings

* Update tests

* Update use of audio source URL

* Improve labels for sources with the same type
2021-05-30 12:41:19 -04:00
toasted-nutbread
efd35de67f
Refactor display audio options (#1717)
* Update how options are updated and stored in DisplayAudio

* Add source list

* Improve menus for custom json

* Clear cache after options update

* Move function

* Update public API

* Simplify playing audio from a specific source

* Simplify audio list

* Refactor audio source usage

* Refactoring

* Refactor argument names

* Fix incorrect source usage

* Remove unused

* Remove return value

* Simplify details

* Simplify Anki card audio details

* Update the data that is passed to AudioDownloader

* Simplify schema handling

* Remove unnecessary details
2021-05-30 12:15:07 -04:00
toasted-nutbread
0f0e80aadb
Refactor AudioController (#1715)
* Remove unused checks/code

* Refactor audio controller into AudioController and AudioSourceEntry
2021-05-27 22:16:34 -04:00
toasted-nutbread
52aa92208c
Fix set/deleteProperty not allowing array splicing (#1713)
* Fix set/deleteProperty not allowing array splicing

* Update tests
2021-05-26 21:08:24 -04:00
toasted-nutbread
8ed712512b
Add some help popups for custom audio sources (#1712) 2021-05-26 20:40:53 -04:00
toasted-nutbread
0232325f96
Refactor json audio source (#1711)
* Move sources to the end of audio options object

* Add custom-json audio source type

* Add support for downloading custom-json

* Remove customSourceType
2021-05-26 20:38:15 -04:00
toasted-nutbread
900bceda47
Fix json schema array properties (#1709)
* Fix proxy array properties being handled incorrectly

* Add tests to check array properties
2021-05-24 18:53:42 -04:00
toasted-nutbread
54e102f343
Json schema ref support (#1708)
* Add basic support for JSON schema $ref

* Add tests
2021-05-23 15:49:25 -04:00
toasted-nutbread
8e330d54d6
Fix popup preview disappearing after changing a setting (#1707) 2021-05-23 14:30:31 -04:00
toasted-nutbread
5188e49cd4
Clean up settings v1 code from PopupPreviewController (#1706)
* Clean up settings v1 code from PopupPreviewController

* Remove unused global
2021-05-23 13:36:43 -04:00
toasted-nutbread
24d43c123d
Fix incorrect selector causing invalid headword index to be used (#1705) 2021-05-23 13:20:38 -04:00
toasted-nutbread
41c0132c59
Improve support for sandboxed iframes (#1704)
* Add more tests

* Improve handling of errors from setupFrame

* Passively handle errors when contentDocument is null
2021-05-23 12:29:54 -04:00
toasted-nutbread
d182e55527
Rename internal JSON schema functions to match new return type (#1699) 2021-05-22 18:01:16 -04:00
toasted-nutbread
d7cf019b4a
Json schema improvements (#1698)
* Simplify schema multi-push/pop

* Reverse order of schema path

* Reverse order of value path

* Simplify schema path structure

* Rename for better clarity
2021-05-22 17:56:44 -04:00
toasted-nutbread
d16739a83a
Json schema validation improvements (#1697)
* Create new JsonSchema class

* Add proxy handler

* Update tests

* Update validation scripts

* Update backend

* Update audio downloader

* Update options util

* Update dictionary importer

* Update json schema file reference

* Remove old json-schema.js

* Rename new json-schema.js

* Update file names

* Rename class
2021-05-22 15:45:20 -04:00
toasted-nutbread
1096bbfa33
Update schema tests (#1693)
* Update helper functions

* Rename file

* Update deleteProperty

* Add some basic proxy tests
2021-05-22 14:01:32 -04:00
toasted-nutbread
be23acf499
Structured content image size units (#1692)
* Add support for sizeUnits on image content

* Update test data
2021-05-20 19:33:08 -04:00
toasted-nutbread
6184bcb812
Selection clear improvements (#1690)
* Update selection clear process

* Clean up old clearSelection API

* Update clear order

* Add clear event handling
2021-05-19 20:09:37 -04:00
toasted-nutbread
eddd028864
Add support for definitions with structured content (#1689)
* Add structured content to schema

* Add support for generating custom content

* Update importer

* Update test data

* Add verticalAlign property
2021-05-19 18:24:50 -04:00
toasted-nutbread
f3cf4d10c7
Dictionary image display refactoring (#1687)
* Generalize image definition generation

* Enable optional aspect ratio

* Move styles

* Update styles

* Add more options for collapsing images

* Add image options for collapsing

* Improve layout for images that are collapsed
2021-05-18 17:41:27 -04:00
toasted-nutbread
76276e78da
Expose search query to anki template renderer (#1686)
* Expose query and fullQuery to Anki context

* Add {search-query} marker

* Update test data

* Update tests

* Wrap search query in multiLine
2021-05-17 20:18:37 -04:00
toasted-nutbread
12451eaf61
Fix repeated dictionary image importing (#1685) 2021-05-16 20:11:32 -04:00
toasted-nutbread
76c29134b3
Revert "Add support for custom text type generation (#1683)" (#1684)
This reverts commit 39cabc4db6.
2021-05-16 19:52:08 -04:00
toasted-nutbread
39cabc4db6
Add support for custom text type generation (#1683) 2021-05-16 15:52:39 -04:00
toasted-nutbread
66d048832f
Sentence termination character mode (#1682)
* Change enableTerminationCharacters to terminationCharacterMode

* Update settings

* Update sentence extraction

* Update tests

* Add tests
2021-05-16 15:24:38 -04:00
toasted-nutbread
41ee167dfd
Add support for generic && and || operations for settings transforms (#1681) 2021-05-16 10:01:57 -04:00
toasted-nutbread
916dcd6bab
Update the search button tooltip to describe Shift+click functionality (#1679) 2021-05-15 16:40:56 -04:00
toasted-nutbread
2c752fd89d
Popup action search (#1678)
* Set up search page in the action popup

* Fix a style causing incorrect overflow

* Fix error when trying to take a screenshot

* Fix popup size on Firefox
2021-05-15 16:30:33 -04:00
toasted-nutbread
bc6fb4e7d7
Fix incorrect _updateClipboardMonitorEnabled invocation (#1677) 2021-05-15 15:31:54 -04:00
toasted-nutbread
8442a8ba22
Add SearchPersistentStateController (#1676) 2021-05-15 15:11:42 -04:00
toasted-nutbread
de6db32aa6
Improve source term exact match count (#1674)
* Update sourceTermExactMatchCount to be based on headword count

* Update tests
2021-05-14 19:26:27 -04:00
toasted-nutbread
ff9dafc6f7
Restore the Anki on macOS warning from the old settings page (#1673) 2021-05-14 19:26:19 -04:00
toasted-nutbread
e7d349c3ec
Improve the behaviour of the "Move to..." action (#1667) 2021-05-11 18:11:10 -04:00
toasted-nutbread
de57d73826
Improve overflow wrap (#1663) 2021-05-10 20:02:06 -04:00
toasted-nutbread
892b908615
Update welcome page settings to match the settings page (#1662) 2021-05-10 19:41:04 -04:00
toasted-nutbread
ecf2ccf633
Change mobile extension page label from "Help" to "Information" (#1661) 2021-05-10 19:07:09 -04:00
toasted-nutbread
b50f5e1cf6
Improve internal page overflow (#1660)
* Improve overflow of internal pages

* Improve wrapping of the Origin: example text
2021-05-10 19:06:07 -04:00
toasted-nutbread
7b14cb3ab0
Remove more legacy settings page selectors (#1659) 2021-05-10 18:16:01 -04:00
toasted-nutbread
376a28326b
Fix invalid node/selectors being used in the dictionary delete process (#1658) 2021-05-10 18:04:08 -04:00
210f633dcc Update version 2021-05-08 21:14:54 -07:00
toasted-nutbread
f935623f35
Fix secondary search dictionary options layout (#1654) 2021-05-08 15:18:41 -04:00
toasted-nutbread
289bdc1622
Improve term grouping (#1653)
* Rename _addUniqueStrings to _addUniqueSimple

* Update definition merging to not depend the sequence number

* Improve naming

* Update AnkiNoteDataCreator

* Update docs

* Remove fields that no longer exist

* Update test data
2021-05-08 13:16:56 -04:00
toasted-nutbread
32f5544021
Add "Move to" menu option for moving dictionary options to a specific location (#1651)
* Add "Move to" option

* Fix IDs
2021-05-02 21:04:39 -04:00
toasted-nutbread
a8b602834f
Fix the "Prefix wildcard searches supported" toggle having incorrect state (#1650) 2021-05-02 10:15:47 -04:00
toasted-nutbread
46f60619d5
Display fixes (#1648)
* Fix incorrect tabId/frameId being used

* Only enable nested popups if the tabId is valid

* Remove unused APIs
2021-05-01 17:30:17 -04:00
toasted-nutbread
c514bbc4fb
Flags profile conditions (#1647)
* Generalize modifier keys

* Optimize bindings

* Add support for flags

* Add clipboard flag

* Update tests

* Add tests
2021-05-01 15:54:31 -04:00
toasted-nutbread
8bf6ff92f9
Increase the default scanning length to 16 (#1646) 2021-05-01 12:23:39 -04:00
toasted-nutbread
c433819c1b
Update search tags to always be displayed in a consistent manner (#1645) 2021-05-01 11:53:56 -04:00
toasted-nutbread
8ee470caa0
Remove the mouseover tags that are shown in merge mode (#1644) 2021-05-01 11:41:10 -04:00
toasted-nutbread
919c59a776 Update version 2021-04-30 18:23:40 -04:00
toasted-nutbread
0b554c936a
Add support for reordering dictionary options (#1641) 2021-04-30 18:15:32 -04:00
toasted-nutbread
076e201225
Improve dictionary options (#1640)
* Update dictionary options layout

* Update extras

* Improve display when no dictionaries are installed

* Implement "All" toggle

* Move modal

* Update welcome page

* Remove resizer button

* Fix ordering

* Fix extra closing tag
2021-04-30 18:01:16 -04:00
toasted-nutbread
d77d8e44e0
Replace collapsable with collapsible (#1639) 2021-04-30 17:59:20 -04:00
soriac
ba3f7b3e96
Show any custom tags on words that have anki cards created (#1628)
* Proof-of-concept for showing card tags (#1626)

* Resolved most PR comments:
- Added a snackbar notification when clicking tag button
- Replaced magnifying glass icon with new tag icon
- Button now contains a span w/icon, to use text color
- Removed unnecessary attributes from button
- Backend now returns full noteInfos object
- Frontend now handles filtering tags

* Add options to show/hide tag button & filter tags

* Do not show tags button if, after filtering, we have zero tags.

* Change tags option to enums, optimize tags intersection check & fix code style.

* Update options-util.js to include new tag options.

* Fix wording on new tag setting.

* Add CSS to remove hidden buttons from the display layout.

* getAnkiNoteInfo extra parameter for additional info.

* Add new tag option to tests.

* Remove unnecessary changes related to anki tags option.

* Code style fixes.
2021-04-30 17:57:53 -04:00
toasted-nutbread
69a739f00a
Use childNodes instead of children (#1638) 2021-04-28 22:07:11 -04:00
toasted-nutbread
0a7def1c01
Fix triangle current selection indicator using incorrect rule (#1637) 2021-04-28 21:57:56 -04:00
toasted-nutbread
40b29cb0d3
Add pitch categories template helper (#1636)
* Move utility function

* Expose dictionary entry as a hidden property for internal use

* Add pitchCategories helper
2021-04-28 21:57:49 -04:00
toasted-nutbread
512391346b
Translator alphanumeric improvement (#1635)
* Simplify alphanumeric check

* Update option name for clarity
2021-04-28 21:17:05 -04:00
toasted-nutbread
763c6c76aa
Add scanTextAtCaret option (#1632) 2021-04-26 21:11:43 -04:00
toasted-nutbread
6f5ad490fb
Add support for restoring the selection after using scanSelectedText (#1631) 2021-04-26 21:05:46 -04:00
toasted-nutbread
59f788be39
Enable showIframePopupsInRootFrame by default for new installs (#1630) 2021-04-26 20:07:27 -04:00
toasted-nutbread
38ed4dc5c7
Improve kifuku detection to not include suru nouns (#1621) 2021-04-26 20:00:03 -04:00
toasted-nutbread
83e73800b0
Add tag icon (#1629) 2021-04-26 19:59:49 -04:00
toasted-nutbread
f022febfe9
Fix incorrect return type causing an error (#1623) 2021-04-21 18:11:43 -04:00
toasted-nutbread
b40cfe0458
Translator refactoring for consistency (#1619)
* Remove unused argument

* Improve naming in _groupDictionaryEntriesByHeadword

More consistent with _getRelatedDictionaryEntries.
2021-04-18 18:15:58 -04:00
toasted-nutbread
03dd1dc6ff
Remove redundant dictionary entry sequence (#1618)
* Remove sequence/sequenceDictionary from dictionary entry objects

* Expose isPrimary on definitions

* Update sequence

* Update test data
2021-04-18 18:11:09 -04:00
toasted-nutbread
f9774b4ce9
Improve dictionary sequence info (#1617)
* Ensure negative sequence is always -1

* Expose sequence on definition objects

* Update how sequence is exposed for definitions

* Update test data

* Update TS docs
2021-04-18 18:08:02 -04:00
toasted-nutbread
609d4fe334
Replace furigana with reading (#1614)
* Use "reading" instead of "furigana" for reading distribution

* Update tests
2021-04-13 20:32:24 -04:00
toasted-nutbread
bbf47865ff
Improve AnkiController to indicate when the model/deck is invalid (#1611) 2021-04-12 20:20:14 -04:00
toasted-nutbread
20d60a2ba7
Initial safari compatibility (#1609)
* Update environment info to return the 'safari' browser

* Fix popup display on Safari

* Update environment assignment

* Add data-loading-stalled property when loading takes longer than expected

* Add notification when loading has stalled

* Allow getDictionaryInfo invocation on non-privileged contexts

* Update _validatePrivilegedMessageSender

* Don't listen to 'voiceschanged' event unless addEventListener is present

Also expose an event
2021-04-10 23:55:11 -04:00
toasted-nutbread
b23c4bff4b
Use consistent window size properties to improve popup positioning (#1607) 2021-04-09 18:17:02 -04:00
toasted-nutbread
331b164900
Remove settings-old.css (#1604) 2021-04-08 22:55:09 -04:00
toasted-nutbread
51c9bef032
Add PermissionsOriginController (#1603) 2021-04-08 22:52:28 -04:00
toasted-nutbread
c2aa51fdbb
Minor updates to settings styles (#1601) 2021-04-08 22:04:11 -04:00
toasted-nutbread
c73ee13086
More terminology updates (#1600)
* Update terminology

* Update display

* Rename expression-list to headword-list

* Rename expression-current-indicator

* Rename expression classes

* Update dictionary entry container

* Rename glossary => gloss

* Rename heading

* Rename gloss classes to gloss-content
2021-04-08 19:59:55 -04:00
toasted-nutbread
e444141511
Fix autofocus sometimes not working on the search page (#1597) 2021-04-07 19:07:42 -04:00
toasted-nutbread
e14b52ef84
Update dictionary entry terminology (#1592)
* Update terminology

* Update terminology in display.js

* Update terminology in display-audio.js

* Update terminology in text-scanner.js

* Update terminology in backend.js

* Update terminology in mecab.js

* Update terminology in audio-downloader.js

* Update terminology in translator-vm.js

* Update terminology in dictionary-data-util.js

* Update terminology in dictionary-database.js

* Update terminology in japanese-util.js

* Change/upgrade {expression} to {term}

* Update terminology in test-japanese.js

* Update terminology in test-database.js

* Update terminology in anki-templates-controller.js

* Update terminology in anki-note-builder.js

* Update terminology in backend.js

* Update terminology in text-scanner.js

* Update terminology in display.js

* Update terminology in display.js
2021-04-04 16:22:35 -04:00
toasted-nutbread
b8bedd5185
Improve term dictionary entry sequence (#1591)
* Improve sequence for merged entries and add sequenceDictionary

* Update docs

* Expose sequence in definitions

* Expose sequence in root definition

* Update test data
2021-04-03 15:41:44 -04:00
toasted-nutbread
8de1e9b3d8
Update logged data name to dictionaryEntry (#1590) 2021-04-03 15:23:55 -04:00
toasted-nutbread
4d5db960d2
Fix debug log of Anki note data using old format (#1589) 2021-04-03 15:18:52 -04:00
toasted-nutbread
0e26d9a667
Remove code for old settings page (#1588) 2021-04-03 13:32:53 -04:00
toasted-nutbread
a9fe2d03b2
Update dictionary settings structure (#1587)
* Update dictionary settings structure to use an array instead of an object

* Update ensureDictionarySettings implementation

* Remove some usage of ObjectPropertyAccessor
2021-04-03 13:02:49 -04:00
toasted-nutbread
0d2d342cd3
Fix selectability of kanji text (#1586) 2021-04-03 11:39:46 -04:00
toasted-nutbread
dabda86259
Optimize template renderer (#1585)
* Add renderMulti

* Batch template rendering

* Update tests
2021-04-02 19:09:21 -04:00
toasted-nutbread
8179846e38
Refactor template rendering (#1583)
* Update _errorToJson to _serializeError

* Remove async

* Refactor render

* Simplify _getModifiedData

* Rename data => commonData

* Rename templates => template for consistency

* Improve errors check

* Update tests
2021-04-02 12:42:06 -04:00
toasted-nutbread
36b7e34cce Update version 2021-04-01 19:17:53 -04:00
toasted-nutbread
c66fe71ee0 Remove debug statements (#1582) 2021-04-01 19:17:53 -04:00
toasted-nutbread
5d7309ed54
Log Anki data (#1579)
* Remove unused modifierPost

* Add _getModifier

* Add _getModifiedData

* Add getModifiedData

* Add getRenderingData

* Update logging to also log anki note data

* Fix dangling comma
2021-03-31 20:07:11 -04:00
toasted-nutbread
da612bbdd7
Fix missing document title on the search page (#1578) 2021-03-31 19:58:33 -04:00
toasted-nutbread
f4af3f31ef
Make secondary dictionary option controllers more consistent (#1577) 2021-03-31 18:53:08 -04:00
toasted-nutbread
bdec71976a
Fix dictionary settings being missing after importing settings (#1576) 2021-03-31 18:32:17 -04:00
toasted-nutbread
bcbd413e57
Definition collapsing when overflowing (#1575)
* Add double-down-chevron.svg

* Add options

* Update dictionary importers

* Update settings

* Add support for collapsible definitions

* Improve case when there is a very small amount of overflow

* Fix incorrect enabled state of newly imported dictionaries
2021-03-31 18:17:28 -04:00
toasted-nutbread
cbcfdcacaf
Fix incorrect state assignment when unbinding wanakana (#1573) 2021-03-29 18:46:32 -04:00
toasted-nutbread
f58b4962f1
Remove repeated disambiguations (#1572) 2021-03-28 16:04:55 -04:00
toasted-nutbread
b4d6a5d3b4
Toggle option hotkey (#1571)
* Set up toggleOption hotkey action settings

* Update styles

* Disable spell check and autocomplete

* Add OptionToggleHotkeyHandler

* Improve auto-close behaviour
2021-03-28 14:04:20 -04:00
toasted-nutbread
98994d0b65
Add playAudioFromSource hotkey (#1570) 2021-03-28 11:27:37 -04:00
toasted-nutbread
1664cc75f1
Shimau inflection (#1569)
* Add deinflection rule

* Update tests
2021-03-28 00:19:47 -04:00
toasted-nutbread
5be2362350
-chimau inflection (#1568)
* Update inflections

* Update tests
2021-03-28 00:05:45 -04:00
toasted-nutbread
34f8d8a812
Add a modal to confirm hotkey reset (#1567) 2021-03-27 23:03:06 -04:00
toasted-nutbread
8fe0e5fdf5
Add reset argument menu item (#1566) 2021-03-27 22:56:48 -04:00
toasted-nutbread
2098d2faae
Hotkey arguments (#1565)
* Update display

* Move scope definitions

* Update scopes button after changing action

* Don't show menu if empty

* Improve scope updating

* Update style

* Simplify

* Add argument to settings

* Update convertToNumber implementation

* Add support for arguments

* Pass argument to action handler

* Update hotkey action definitions

* Remove x3 options
2021-03-27 22:30:45 -04:00
toasted-nutbread
422f011fac
Update hotkey settings design (#1564)
* Update PopupMenu event prevention

* Use vars for button padding

* Add button-inner-label style

* Add input-button button

* Update display of scope selection

* Add hidden argument text input field

* Remove unnecessary calls

* Display a strike through the enabled button when no scopes are selected
2021-03-27 13:21:34 -04:00
toasted-nutbread
af768624ac
Update wording on the info page (#1563) 2021-03-26 20:01:04 -04:00
toasted-nutbread
299720d799
Fix definitionDetails using expression instead of term (#1562) 2021-03-26 19:57:57 -04:00
toasted-nutbread
90f7d5ba07
Add part of speech info (#1561)
* Add part of speech info to headwords

* Expose parts of speech to Anki template rendering

* Expose parts of speech

* Update pitch accent categories

* Update docs

* Add part-of-speech

* Update options and tests

* Update markers

* Update test data
2021-03-26 19:50:54 -04:00
toasted-nutbread
482dd8c8d8
Display fixes (#1560)
* Fix _getDefinitionDetailsForNote

* Fix _getExpressionAndReading
2021-03-26 19:31:19 -04:00
toasted-nutbread
a14caaeab9
Add join and concat utility functions for template rendering (#1559) 2021-03-26 19:07:43 -04:00
toasted-nutbread
a756ce85c0
Remove debug log (#1558) 2021-03-25 22:42:24 -04:00
toasted-nutbread
4ddd3ec80c
Fix incorrect sorting (#1557)
* Sort by the maximum length of transformedText instead of deinflectedText

* Update docs

* Update tests
2021-03-25 21:40:27 -04:00
toasted-nutbread
6af0ee26b9
Fix tag disambiguation (#1556)
* Update display generator to use new data format for tag disambiguation

* Add separator for multiple disambiguations
2021-03-25 20:54:39 -04:00
toasted-nutbread
4be5c8fd9f
Refactor Translator and dictionary entry format (#1553)
* Update test data

* Move translator.js

* Create new version of Translator

* Update Backend

* Update DictionaryDataUtil

* Update DisplayGenerator

* Create AnkiNoteDataCreator

* Replace AnkiNoteData with AnkiNoteDataCreator

* Update tests

* Remove AnkiNoteData

* Update test data

* Remove translator-old.js

* Add TypeScript interface definitions for the new translator data format
2021-03-25 19:55:31 -04:00
toasted-nutbread
e7035dcff4
Enable audio menu shift click (#1555)
* Expose modifier keys

* Add updateMenuItems

* Don't close menu if shift key is held

* Add _createMenuItems

* Simplification

* Maintain a list of open popup menus

* Expose expression/reading

* Reuse existing items

* Update menu after a cache update

* Update menu position
2021-03-25 19:22:34 -04:00
toasted-nutbread
0e1845c7ed
Fix case where {tags} returns an error (#1549) 2021-03-23 20:43:38 -04:00
toasted-nutbread
28f97ba40b
Update display results style (#1536)
* Expose resultOutputMode

* Update display styles
2021-03-16 18:48:24 -04:00
toasted-nutbread
8ae78449f2
Fix furigana distribution when source/expression kana differs (#1532)
* Fix furigana distribution when source/expression kana differs

* Add an additional test
2021-03-15 23:02:38 -04:00
toasted-nutbread
9ad9961ca8
Fix error for kanji note data (#1530) 2021-03-15 20:50:18 -04:00
toasted-nutbread
9addd3f6d1
Fix search tab not focusing correctly (#1529) 2021-03-15 18:53:03 -04:00
toasted-nutbread
49b603c756
Remove old settings page (#1524)
* Remove old settings page

* Remove spinner.gif
2021-03-14 22:51:48 -04:00
toasted-nutbread
a52d86a39e
Dictionary database improvements (#1527)
* Update formatting

* Add _findMultiBulk

* Update implementation of findTermsBySequenceBulk

* Update tests

* Generalize query creation

* Remove _findGenericBulk

* Reduce function creation

* Add more bindings

* Simplify findTermsExactBulk implementation

* Update var names

* Update _findMultiBulk to support multiple index queries

* Update findTermsBulk

* Update getMedia implementation

* Pass data arg to getAll and findFirst to avoid having multiple closures
2021-03-14 22:51:20 -04:00
toasted-nutbread
07df1e0117
Fix dictionary image support (#1526)
* Fix content security policy for images

* Add createBlobFromBase64Content to MediaUtil

* Update MediaLoader to use MediaUtil

* Use blob URLs when importing dictionaries

* Update VM's URL to support createObjectURL and revokeObjectURL

* Fix test
2021-03-14 18:41:15 -04:00
toasted-nutbread
52a4d874ea
Make MediaUtil a static class (#1525) 2021-03-14 18:04:19 -04:00
toasted-nutbread
06b02c3cf2
Add css width var (#1523)
* Rename --main-content-size to --content-width

* Add --content-width-search variable
2021-03-13 13:08:50 -05:00
toasted-nutbread
f6b591fd1a
Remove TODO comment from settings.css (#1522) 2021-03-13 13:04:26 -05:00
toasted-nutbread
e1477adeec
Simplify _findFirstBulk (#1521) 2021-03-13 11:42:04 -05:00
toasted-nutbread
a00ed41838
Database API updates (#1520)
* Add Database.findFirst

* Add DictionaryDatabase.findTagMetaBulk
2021-03-13 11:25:10 -05:00
toasted-nutbread
638e5783ac
Fix sorting of non-top-level definitions (#1516) 2021-03-10 20:27:10 -05:00
toasted-nutbread
5fe40d7ec4
Fix tag height (#1515) 2021-03-10 20:27:06 -05:00
toasted-nutbread
800ce9ed9e
Fix incorrect furigana distribution (#1514)
* Improve distributeFuriganaInflected implementation

* Update tests
2021-03-10 20:27:01 -05:00
toasted-nutbread
63de9273b3
Fix permissions changes not being supported on some browsers (#1513) 2021-03-10 20:26:57 -05:00
toasted-nutbread
b1f96a7ca7
Fix previousStyles being recreated for every transparent element (#1512) 2021-03-10 20:26:53 -05:00
toasted-nutbread
4f4990820e
Fix text selection during scanning (#1508)
* Move function

* Add _onSearchClick function

* Move _onSearchClick after event prevention

* Prevent search if selection is changed before a click occurs
2021-03-09 20:01:37 -05:00
toasted-nutbread
c6f4144fda
Clean up translator (#1505)
* Remove unused: _removeUsedDefinitions

* Remove unused: _scoreToTermFrequency

* Remove unused: _getTermTagsScoreSum

* Add RegexUtil

* Update Translator to use RegexUtil

* Update sw.js

* Update tests
2021-03-08 21:01:55 -05:00
toasted-nutbread
643dbfb12a
Refactor term frequency data (#1503)
* Add getTermFrequency

* Update DisplayGenerator to use getTermFrequency

* Remove termFrequency from Translator data

* Backwards compatibility

* Update tests
2021-03-07 20:38:40 -05:00
toasted-nutbread
19f6bf5a3a
Refactor furigana segment data (#1502)
* Remove redundant language assignment

* Segment furigana from DisplayGenerator

* Remove furiganaSegments from translator data

* Add backwards compatibility for furiganaSegments

* Update tests
2021-03-07 17:55:51 -05:00
toasted-nutbread
7793e14e57
Deinflector refactor (#1501)
* Make Deinflector._ruleTypes private

* Add createDeinflection helper

* Remove unnecessary field assignments from Deinflector

Move them to Translator instead
2021-03-07 14:07:26 -05:00
toasted-nutbread
92fe1571ae
Translator data format improvements (#1500)
* Update _createTermDetailsList usage and docs

* Update source of expression/reading/furiganaSegments
2021-03-07 12:18:44 -05:00
toasted-nutbread
49bf562690
Update audio downloader (#1499)
* Update _getInfoJpod101's empty reading check

* Use URLSearchParams instead of a string
2021-03-06 18:26:16 -05:00
toasted-nutbread
16217728af
Improve empty reading handling (#1497)
* Handle empty readings earlier in the definition creation process

* Remove empty reading check

* Remove special handling of empty readings
2021-03-06 15:53:45 -05:00
toasted-nutbread
a65742a884
Fix furigana distribution when reading starts with expression, but has remainder characters (#1496) 2021-03-06 15:49:07 -05:00
toasted-nutbread
aa6a547da7
Add CSS variable to control tag height (#1495) 2021-03-06 15:08:21 -05:00
toasted-nutbread
01f74510f0
Separate display resizer (#1494)
* Make invokeContentOrigin public

* Move display resizer functionality into a new class: DisplayResizer

* Simplify field names

* Use parent frame instead of content origin

* Remove unused
2021-03-06 14:31:23 -05:00
toasted-nutbread
6e00b5d765
Fix multiline copying (#1493)
* Change order

* Update multiline text assignment
2021-03-06 13:41:38 -05:00
toasted-nutbread
4bc53d2348
Use dictionary priority later in the definition sorting algorithm (#1492) 2021-03-06 13:27:20 -05:00
toasted-nutbread
019c8cd4d7
Split dictionary order and index sorting (#1491)
* Refactor expression comparison

* Rename function

* Add dictionary index sorting

* Update test data
2021-03-06 13:04:50 -05:00
toasted-nutbread
e28a89e580
Add workaround for a frequency disambiguation layout issue on Firefox (#1489) 2021-03-05 23:48:38 -05:00
toasted-nutbread
2203202861
Fix missing meta when reading is empty (#1486) 2021-03-05 19:25:31 -05:00
toasted-nutbread
ca4d5a2ac1
Fix text being overwritten when generating the query parser content (#1483) 2021-03-03 18:06:12 -05:00
toasted-nutbread
14717b7579
Fix missing required options (#1482) 2021-03-02 22:51:06 -05:00
toasted-nutbread
65c20382d3
Add clickable web browser settings links (#1481) 2021-03-02 22:46:26 -05:00
toasted-nutbread
3fe825cf30
Request persistent storage on Firefox (#1480) 2021-03-02 22:27:53 -05:00
toasted-nutbread
b0bc7dc08f
Add a toggle for the persistent storage option on the permissions page (#1479) 2021-03-02 22:08:34 -05:00
toasted-nutbread
4208595293
Persistent storage controller (#1478)
* Add PersistentStorageController

* Update DictionaryController

* Update DictionaryImportController

* Update when storage stats are updated
2021-03-02 20:27:51 -05:00
toasted-nutbread
571b865ae5
Fix enter key causing duplicate text when typing using an IME (#1477) 2021-03-02 18:18:31 -05:00
toasted-nutbread
0e705292cc
Remove zero-width space (#1475) 2021-03-01 22:45:03 -05:00
toasted-nutbread
0dab38f0a6
Refactor translator merged mode (#1474)
* Remove sourceDefinitions

* Add id

* Remove related definitions from unsequencedDefinitions

* Add separate _addRelatedDefinitions function

* Add secondary definitions

* Update how secondary definitions are added

* Update expression/reading source

* Move _mergeByGlossary body

* Refactor _createTermDetailsListFromTermInfoMap

* Move _addUniqueTermInfos body

* Rename function

* Organize

* Simplify duplicate check

* Rename relatedDefinitionIds to definitionIds

* Refactor secondary definition adding

* Early exit

* Add matching unsequencedDefinitions to secondaryDefinitions

* Clean

* Fix incorrect condition

* Move _addSecondaryDefinitions call

* Add comments
2021-03-01 22:17:23 -05:00
toasted-nutbread
b477da97d4
Translator refactor (#1473)
* Refactor _groupTerms and add doc comment

* Update where expression/reading is acquired from

* Add doc comment

* Add isPrimary field

* Update test data

* Add definition which has "isPrimary": false definitions
2021-03-01 19:01:30 -05:00
toasted-nutbread
488dc486f1 Update version 2021-02-28 18:28:50 -05:00
toasted-nutbread
90da87f378
Add support for resizing the popup window using touch events (#1471) 2021-02-28 17:13:11 -05:00
toasted-nutbread
c192b4a4c1
Wrap host selection copy in a try-catch (#1470) 2021-02-28 16:51:48 -05:00
toasted-nutbread
8f057c63fe
Improve text parser (#1469)
* Merge ungrouped characters

* Update iteration

* Fix incorrect code point handling

* Simplify text

* Specify language

* Update how parsed status is represented
2021-02-28 16:38:01 -05:00
toasted-nutbread
ec1a8380b5
Fix a poorly handled edge case of the scanning parser (#1468) 2021-02-28 15:44:57 -05:00
toasted-nutbread
1dfcd3e435
Fix missing details causing frequency tags to not be clickable (#1467) 2021-02-28 14:44:44 -05:00
toasted-nutbread
704db45e29
Remove the now-unused hotkey forwarding functionality (#1466) 2021-02-28 14:29:43 -05:00
toasted-nutbread
75d7e5dc32
Fix and improve some CSS vars (#1465) 2021-02-28 14:23:51 -05:00
toasted-nutbread
4806414f95
Text source element scanning improvements (#1464)
* Add api.textHasJapaneseCharacters

* Add support for empty query

* Add support for showing the query parser for TextSourceElement
with content that does not start with Japanese text
2021-02-28 14:18:18 -05:00
toasted-nutbread
6f76645f4c
Use a Set instead of an array (#1463) 2021-02-28 13:33:33 -05:00
toasted-nutbread
445f87ebdb
Get categorization of pitch accents (#1462) 2021-02-28 13:26:34 -05:00
toasted-nutbread
fce2c51709
Add support for scanning the selected value of <select> elements (#1461) 2021-02-28 13:26:23 -05:00
toasted-nutbread
f2d2ba0d25
Add ge deinflect rule (#1458)
* Add -ge rule

* Add tests
2021-02-27 23:26:47 -05:00
toasted-nutbread
990d3611cd
Update color of name tag to not overlap with frequency tag color (#1457) 2021-02-27 23:19:16 -05:00
toasted-nutbread
0decabd768
Improve definition ordering (#1456)
* Update dictionary priority

* Replace dictionaryPriority with dictionaryOrder

* Update tests
2021-02-27 23:11:41 -05:00
toasted-nutbread
e4a4e5f85f
Improve term meta ordering (#1455)
* Update implementation of _buildTermMeta

* Remove old implementation

* Expose dictionaryPriority on frequencies and pitch accents

* Update how meta data is generated; add index

* Update order

* Update names

* Expose expressionIndex as part of pitch/frequency data

* Implement meta sorting

* Update test data
2021-02-27 22:27:00 -05:00
toasted-nutbread
7d6915ec3b
Misc display style updates (#1454)
* Remove unused style

* Update inflection separator
2021-02-27 17:58:28 -05:00
toasted-nutbread
c7caea7203
Improve expression variables (#1453)
* Improve how colors are used for expressions

* Add more color definitions
2021-02-27 17:29:59 -05:00
toasted-nutbread
c4b2e83cb4
Organize display styles (#1452)
* Improve grouping for inflection and expression styles

* kanji-link => expression-kanji-link

* Remove unnecessary entry-header2 and entry-header3

* Move tag list into header for consistency with term definitions

* Move styles

* Add clear
2021-02-27 16:54:15 -05:00
toasted-nutbread
8d3436fca3
Refactor display styles (#1451)
* term-expression => expression

* term-pitch-accent => pitch-accent

* term-reason => inflection, term-reasons => inflection-list

* term-details => expression-list-details

* term-glossary => glossary

* Update tag list classes

* term-definition => definition
2021-02-27 16:32:44 -05:00
toasted-nutbread
c64a8eac1e
Change "Raw term" to "Plain term" (#1450) 2021-02-27 15:29:34 -05:00
toasted-nutbread
2a5aa53411
Refactor expression vars (#1449)
* Group expression styles

* Rename var

* Update var name and style

* Group --kanji* vars

* Rename var

* Rename vars
2021-02-27 15:28:40 -05:00
toasted-nutbread
1a7c264165
Add standalone reading (#1448)
* Add option

* Update display

* Hide redundant readings

* Improve label and description
2021-02-27 14:04:52 -05:00
toasted-nutbread
9e7a76a1f1
Improve dictionary priority (#1447)
* Refactor _sortDefinitions

* Remove use of useDictionaryPriority
2021-02-26 23:55:32 -05:00
toasted-nutbread
0bf0620c35
Improve kana segmentation (#1446)
* Improve edge case furigana distribution for mixed hiragana/katakana

* Update/add tests
2021-02-26 23:23:16 -05:00
toasted-nutbread
b994414b14
Improve Anki card type selection (#1445)
* Update separator line styles

* Add tabs

* Add support for radio select

* Remove old select

* Move out of scroll region

* Fix missing line
2021-02-26 18:15:04 -05:00
toasted-nutbread
782b945905
Header lint (#1444)
* Add eslint-plugin-header

* Add rule for header format

* Add missing header

* Fix header issues
2021-02-25 20:21:05 -05:00