toasted-nutbread
b5015264f2
Include half width and full width characters as Japanese characters
2020-01-24 20:15:25 -05:00
toasted-nutbread
86d96a9036
Update detection of Japanese characters
2020-01-24 20:15:25 -05:00
toasted-nutbread
be2e6e0d93
Optimize jpIsKanji and jpIsKana
2020-01-24 20:15:25 -05:00
toasted-nutbread
73cc64fb5c
Implement new translation options
2020-01-24 20:15:25 -05:00
siikamiika
aa5a044dad
query parser: add reading mode 'none'
2020-01-25 02:56:14 +02:00
toasted-nutbread
8ef57936d7
Add functionality for getting and observing zoom factor
2020-01-22 20:38:21 -05:00
toasted-nutbread
26ea278c29
Improve debug logging
2020-01-21 19:08:56 -05:00
siikamiika
1fd568ab8e
fix term reason selector
2020-01-19 03:04:45 +02:00
toasted-nutbread
9abfd7acde
Always show actions when there is only a single term result
2020-01-16 22:39:26 -05:00
toasted-nutbread
6c344b2740
Fix incorrect selector
2020-01-16 22:39:26 -05:00
toasted-nutbread
d4296a34cc
Fix scroll position when header is visible
2020-01-16 22:39:26 -05:00
toasted-nutbread
7686e56c00
Move display templates into a single file
2020-01-16 22:39:26 -05:00
toasted-nutbread
d512c111f6
Update how content display is changed
2020-01-16 22:39:26 -05:00
toasted-nutbread
97f7df3302
Don't use document fragment
2020-01-16 22:39:26 -05:00
toasted-nutbread
7a6f85879e
Update content assignment to use unique token
2020-01-16 22:39:26 -05:00
toasted-nutbread
dbbcfa5739
Only use Display.setContent
2020-01-16 22:39:26 -05:00
toasted-nutbread
c53947a94a
Only instantiate the first child
2020-01-16 22:39:26 -05:00
toasted-nutbread
24832be636
Update how spinner visibility is controlled
2020-01-16 22:39:26 -05:00
toasted-nutbread
a50e2fb0f1
Fix furigana segmentation
2020-01-16 22:39:26 -05:00
toasted-nutbread
56ee7f8df4
Update display content generation to use HTML templates
2020-01-16 22:39:26 -05:00
siikamiika
8292be92d8
use TextScanner in QueryParser
2020-01-16 23:22:38 +02:00
toasted-nutbread
0d7ccf25b8
Update license info URL
2020-01-01 12:00:31 -05:00
toasted-nutbread
899ef167d1
Update copyright
2020-01-01 12:00:00 -05:00
toasted-nutbread
d2da4f7e62
Add apiOptionsSchemaGet
2019-12-29 12:33:15 -05:00
toasted-nutbread
2519f99f54
Update how orphan state is observed
2019-12-20 13:44:33 -05:00
toasted-nutbread
2a95f1420f
Move optionsUpdate message handler into Yomichan class
2019-12-20 13:36:54 -05:00
toasted-nutbread
e14bd75a4f
Change how getUrl message is handled
2019-12-20 13:15:26 -05:00
toasted-nutbread
cab2a39981
Simplify options passed to docRangeFromPoint
2019-12-17 20:56:32 -05:00
toasted-nutbread
ce51fe7eca
Use a single api.js
2019-12-13 23:11:56 -05:00
toasted-nutbread
4177b63726
Remove redundant getUrl handlers
2019-12-13 23:11:56 -05:00
toasted-nutbread
a9c4ce724c
Update display key handlers
2019-12-13 23:11:56 -05:00
toasted-nutbread
a2263e5729
Update display message handlers
2019-12-13 23:11:56 -05:00
toasted-nutbread
47feb95842
Add timer class for debugging
2019-12-10 19:40:40 -05:00
toasted-nutbread
bb334acab6
Use substring instead of slice
2019-12-08 16:01:29 -05:00
toasted-nutbread
1659340898
Add support for prefix wildcards
2019-12-07 14:34:35 -05:00
toasted-nutbread
20679255b0
Add class for dispatching custom events
2019-12-07 13:59:47 -05:00
siikamiika
e99c8c40a1
navigate history with wheel only over buttons
2019-12-07 17:41:14 +02:00
siikamiika
f6d0503604
simplify with inheritance
2019-12-06 21:39:29 +02:00
siikamiika
595636c40b
move text selection to TextScanner
2019-12-05 22:48:05 +02:00
siikamiika
e5be42d3de
scan decoupling
2019-12-05 22:12:43 +02:00
siikamiika
02a34bb4bc
initial text scanner extract
2019-12-05 03:58:35 +02:00
siikamiika
d8935b6aa9
fix serialization errors on Chrome
2019-12-04 21:49:51 +02:00
Alex Yatskov
a24146538c
Merge pull request #291 from toasted-nutbread/cloze-fixes
...
Cloze fixes
2019-12-03 14:19:33 -08:00
siikamiika
403b86675d
fix entry scroll index 0 bug
...
Introduced in 4e7d08ff2c
because the
range-limited index value isn't kept in the same scope.
2019-12-01 15:03:37 +02:00
siikamiika
abe70e3b8c
always update current position on term lookup
2019-12-01 06:08:05 +02:00
siikamiika
5929018fac
move Display context to a new class
2019-12-01 05:38:23 +02:00
siikamiika
be23ad7213
remove dead code
2019-11-30 04:59:36 +02:00
siikamiika
ff9510356e
rewrite history as a doubly linked list
2019-11-30 04:49:37 +02:00
siikamiika
8a94d186c3
fix context type inconsistencies
2019-11-29 01:36:14 +02:00
siikamiika
1dd88763de
clear Display history on new lookup
2019-11-28 18:24:24 +02:00
siikamiika
f1ecb4cd39
correct X scroll direction for history navigation
2019-11-28 15:54:55 +02:00
siikamiika
86ff831600
preventDefault correctly
2019-11-28 15:24:00 +02:00
siikamiika
beea89a421
store popped context history in Display
2019-11-28 15:20:18 +02:00
siikamiika
4e7d08ff2c
set current entry even when disableScroll is true
2019-11-28 13:22:47 +02:00
siikamiika
e37ffb6cf5
fix scroll issues in Display.entryScrollIntoView
...
- Save scroll context before scrolling to top
- Explicit null check for scroll param to handle scrolling to y=0
correctly
2019-11-28 12:38:25 +02:00
toasted-nutbread
5a1046bc90
Update arrow-parens to always
2019-11-26 22:06:27 -05:00
toasted-nutbread
acb70f126c
Update unused arguments
2019-11-26 22:06:27 -05:00
toasted-nutbread
527595f79b
Remove unnecessary escapes from regex literals
2019-11-26 22:06:27 -05:00
toasted-nutbread
943350a1f6
Use single quotes
2019-11-26 22:06:27 -05:00
toasted-nutbread
0aed27b66d
Replace hasOwnProperty with simplified hasOwn function
2019-11-26 22:06:27 -05:00
toasted-nutbread
4110a848f5
Move additional utility functions to DOM
2019-11-26 18:59:52 -05:00
toasted-nutbread
96aad50340
Create DOM utility file
2019-11-26 18:59:52 -05:00
siikamiika
c2ff25b0ec
use fallback for ambiguous furigana
...
fixes #281 , fixes #94
2019-11-27 01:20:04 +02:00
toasted-nutbread
50604b25e6
Organize core.js
2019-11-26 17:38:05 -05:00
toasted-nutbread
099847729c
utilIsObject => isObject, move to core.js
2019-11-26 17:33:09 -05:00
toasted-nutbread
7e94fca7c7
Rename extension.js to core.js to better reflect its use
2019-11-26 17:29:52 -05:00
toasted-nutbread
3a7ef6c560
Simplify clozeBuild
2019-11-26 12:35:17 -05:00
toasted-nutbread
afddec66eb
Update cloze.body to use original sentence text
2019-11-26 12:35:17 -05:00
toasted-nutbread
befee9ceca
Pass kanji character to clozeBuild
2019-11-26 12:35:17 -05:00
toasted-nutbread
cb9f9b585a
Update how source terms are navigated
2019-11-26 12:31:20 -05:00
toasted-nutbread
c7cb1b3d9e
Require context for setContentTerms and setContentKanji
2019-11-26 12:31:17 -05:00
siikamiika
3423ed7d67
Merge pull request #279 from siikamiika/query-parser-1
...
Search page query parser
2019-11-26 18:31:35 +02:00
toasted-nutbread
cf18e3b42e
Replace string.substr and string.slice with string.substring
...
Improves semantic clarity, and it's recommended to not use substr.
2019-11-24 11:02:52 -05:00
siikamiika
cc8221c6ea
add reading modes
2019-11-23 17:50:46 +02:00
siikamiika
84f30113e4
give names to complex slices
2019-11-23 17:50:46 +02:00
siikamiika
1700318988
remove unneeded feature
...
Unidic actually has a field for the base form of the input
2019-11-23 17:45:44 +02:00
siikamiika
41020289ab
add mecab support
2019-11-23 17:45:44 +02:00
siikamiika
408aa73cce
fix default params for term clicking
2019-11-23 17:43:30 +02:00
siikamiika
c35a05cd62
add kana to text
2019-11-23 17:40:52 +02:00
siikamiika
f63e8e4be0
add simple query parser
2019-11-23 16:56:10 +02:00
Alex Yatskov
b1659522b3
Merge pull request #274 from toasted-nutbread/lookup-wildcards
...
Lookup wildcards
2019-11-13 18:51:50 -08:00
siikamiika
29c38b06b2
only paste Japanese text from clipboard
2019-11-13 13:51:47 +02:00
toasted-nutbread
3a225c3f91
Add details field to apiTermsFind
2019-11-10 14:02:43 -05:00
toasted-nutbread
d9b4404075
Create functions for the cases of isMouseButton
...
jshint was showing a warning that there was no break statement
after the first case, which there doesn't need to be.
The most straightforward way to fix this without using the unclear
// jshint ignore:line
is to just have two functions.
This change also updates invocations of isMouseButton to use
the exact case function, as this will remove the need to check
the case of mosueEvent.type. This was done because onMouseMove
is invoked at a high frequency.
2019-11-10 14:00:44 -05:00
toasted-nutbread
dad685dba4
Fix overwriting const value
2019-11-10 13:56:06 -05:00
toasted-nutbread
d6cdd693c8
Fix several warnings about name conflicts
2019-11-10 13:55:37 -05:00
toasted-nutbread
6f53030469
Use for of loop instead of forEach
2019-11-10 12:25:28 -05:00
sabs
fd17a0fccd
Remove Download check when resolving Audio data
...
There is a bug (seemingly unreported) in Yomichan where an Anki card
will not contain any audio if the JapanesePod101 audio source trumps
a secondary audio source (e.g. JapanesePod101-alternate) where
the jpod101 source can't find the word requested.
For example, そして has an audio entry in the alternate source but not
the standard source.
(Alternatively, there may be a bug in the jpod101 audioUrlBuilder,
because I've only noticed this problem with hiragana-only expressions.
JPod101 may not host those on the same url scheme any more. I'm not
sure how to fix that, though, and the bug I'm addressing here does
still persist).
The reason this happens is that audioGetFromUrl uses downloaded audio
to effectively check for a 404 (by examining the audio duration), but
that check doesn't happen when an Anki card is being created (i.e.
"download" is set, which I've changed to "willDownload" here).
This change removes that check, but retains the will-download intent
information to prevent attempts to download tts data, which AnkiConnect
cannot do. I've also added a short explanation as to why the download
check happens where it does.
I think the unused audio object will get garbage collected since it's
not referenced again, but I've explicitly unset it as well.
2019-11-09 20:58:09 -05:00
toasted-nutbread
4d7940e8e4
Optimize dictFieldFormat
2019-11-08 22:25:03 -05:00
siikamiika
83460bcdad
refactoring and optimization
2019-11-04 02:15:33 +02:00
siikamiika
f4a987912a
prevent accidental lookup on glossary text select
2019-11-03 18:56:22 +02:00
toasted-nutbread
1039536cfb
Create promise version of setTimeout
2019-10-28 17:03:42 -04:00
siikamiika
a716a52cab
make non-hotkey keys focus input on search page
...
The issue was that scanning on search page introduced a way to lose
focus of the query input, and the new feature that the search page
hotkey focuses an existing search page instead of opening a new one made
it more obvious.
Now every key that isn't a hotkey focuses the query input, and typing
text into the box scrolls it into view in case it wasn't there when
searching.
There is an accessibility issue that this can cause, because now tab
also focuses the query input before it focuses the next element. I
didn't implement a workaround for that because it would have been more
complicated than this simple fix.
Fixes #263
2019-10-26 01:26:56 +03:00
toasted-nutbread
dbec4bffda
Make the search button reuse an open search tab if it exists
2019-10-19 22:28:23 -04:00
toasted-nutbread
598cd32946
Update *show* APIs to unified showContent and setContent
2019-10-17 18:40:43 -04:00
toasted-nutbread
7bae3824e7
Add support for text-to-speech playback
2019-10-13 12:21:19 -04:00
toasted-nutbread
54d4c65854
Rename audioGetFromSources's createAudioObject argument to download
2019-10-13 12:20:56 -04:00
toasted-nutbread
21a2730cde
Add option for text-to-speech
2019-10-13 12:20:56 -04:00
toasted-nutbread
883226b045
Update how custom CSS is applied
2019-10-12 19:00:24 -04:00
toasted-nutbread
c90bc75eb8
Create themes
2019-10-12 19:00:24 -04:00
toasted-nutbread
537d2ef532
Remove Display.dependencies
2019-10-12 15:31:29 -04:00
toasted-nutbread
6da7683552
Don't pass options around for calls to termsShow, kanjiShow, etc.
2019-10-12 15:31:29 -04:00
toasted-nutbread
a5b208fb89
Check if objects are properly initialized before showing content
2019-10-12 15:31:29 -04:00
toasted-nutbread
3e249e19ac
Update Display initialization process
2019-10-12 15:31:29 -04:00
toasted-nutbread
89a8494208
Add function for (de)activating event listeners in Display
2019-10-12 11:25:24 -04:00
toasted-nutbread
50252ec627
Update title with info about what the audio source was
2019-10-10 21:30:38 -04:00
toasted-nutbread
1d516b3b24
Implement audio fallbacks
2019-10-10 21:30:38 -04:00
toasted-nutbread
8ae1da4277
Update audio options format
2019-10-10 21:30:35 -04:00
toasted-nutbread
22b218d172
Pass optionsContext to audioBuildUrl handlers
2019-10-09 22:03:56 -04:00
toasted-nutbread
7ce54864f3
Show the viewer button for anki notes which already exist
2019-10-09 20:31:09 -04:00
toasted-nutbread
c5d6b9452d
Create utility function for logging errors
2019-10-08 22:38:05 -04:00
toasted-nutbread
6a6e200ef9
Update rejections to use Error
2019-10-08 21:44:25 -04:00
toasted-nutbread
88de427184
Throw Error instead of string
2019-10-08 21:32:08 -04:00
toasted-nutbread
9d488e1916
Validate that key is a string
...
On Chrome, when clicking an autocomplete dropdown menu option, a keydown event is generated which is not of type KeyboardEvent.
2019-10-08 19:32:44 -04:00
toasted-nutbread
cd6d4e7ee1
Update how popup visibility works
2019-10-05 21:59:37 -04:00
toasted-nutbread
2255fadf52
Rename Popup.setVisible to setVisibleOverride
2019-10-05 21:40:10 -04:00
toasted-nutbread
7380ada1f1
Simplify onWheel handler
2019-10-02 21:12:24 -04:00
toasted-nutbread
a628610cbd
Use KeyboardEvent.key for onKeyDown handlers
2019-10-02 19:49:52 -04:00
Alex Yatskov
3c3a2c9474
Merge pull request #230 from toasted-nutbread/edge-fixes
...
Use toIterable for cross-window origin objects
2019-09-30 19:54:27 -07:00
toasted-nutbread
8b7558a757
Use toIterable for cross-window origin objects
2019-09-29 15:26:57 -04:00
toasted-nutbread
e358c94882
Clean up event listeners
2019-09-27 21:41:00 -04:00
toasted-nutbread
8db830b468
Change how current entry is indicated
2019-09-27 21:41:00 -04:00
toasted-nutbread
3ca84e3a85
Remove jQuery calls from adderButtonFind and viewerButtonFind
2019-09-27 21:41:00 -04:00
toasted-nutbread
946e577e42
Implement custom window scroll
2019-09-27 21:41:00 -04:00
toasted-nutbread
9fc69395c5
Use raw event listeners
2019-09-27 21:41:00 -04:00
toasted-nutbread
95a7fd81f5
Use raw element references for container and spinner
2019-09-27 21:41:00 -04:00
toasted-nutbread
355fb29c3b
Use entryIndexFind without jQuery
2019-09-27 21:40:59 -04:00
odehjoseph
62b95a656f
Add option to enable Alt+B lookup
2019-09-26 21:33:33 -07:00
toasted-nutbread
6d3037f3d6
Remove destructuring from searchAt, containsPoint, docRangeFromPoint
2019-09-14 14:27:25 -04:00
toasted-nutbread
bc8793eb56
Add a context object for all calls to fetch options
2019-09-10 20:09:33 -04:00
toasted-nutbread
171e3f1097
Add option for enabling deep scanning
2019-09-02 11:43:48 -04:00
toasted-nutbread
ad0dca7bb1
Make the imposter element tracked using TextSourceRange
2019-08-31 14:57:50 -04:00
Alex Yatskov
cd75f5b97d
Merge pull request #188 from toasted-nutbread/edge-support
...
Add support for Edge browser
2019-08-28 19:41:30 -07:00
toasted-nutbread
a39a1fa9e4
Add support for Edge browser
2019-08-26 21:58:03 -04:00
Alex Yatskov
9ec711b780
Merge pull request #176 from toasted-nutbread/selection-touch-scan-disable
...
Don't scan when touching the current selection
2019-08-17 14:12:11 -07:00
Alex Yatskov
8ebac935e8
Merge pull request #182 from toasted-nutbread/anki-screenshot
...
Anki screenshot
2019-08-17 09:05:33 -07:00
toasted-nutbread
c22f8252b9
Handle case where docRangeFromPoint returns null
2019-08-16 17:44:35 -04:00
toasted-nutbread
cd1f367798
Focus if context is falsy or focus field isn't false
2019-08-16 17:36:55 -04:00
toasted-nutbread
3a5b06bd10
Add screenshot settings
2019-08-15 19:56:14 -04:00
toasted-nutbread
0f0adf750c
Add ability to save screenshot to anki cards
2019-08-15 19:39:58 -04:00
toasted-nutbread
345b9c6f9d
Disable focus of popup when using touch
...
Context menu on Firefox will not target the text properly if the focus is on the popup window.
2019-08-09 22:29:14 -04:00
siikamiika
3b07a9000c
add source term button to terms
2019-08-03 19:54:01 +03:00
siikamiika
683bb5b620
scroll back to exact position in source term view
2019-08-03 19:46:54 +03:00
siikamiika
ec1441434f
allow multi level context
2019-08-03 15:50:49 +03:00
siikamiika
afc771de9f
inject doc functions as dependencies
2019-08-03 15:06:28 +03:00
siikamiika
0ee6d05cb1
Revert "use ES6 import and export"
...
This reverts commit 04f4607922
.
2019-08-03 14:57:17 +03:00
siikamiika
04f4607922
use ES6 import and export
2019-08-02 00:04:39 +03:00
siikamiika
e500a647a2
fix term lookup for terms with one gloss only
2019-08-01 20:41:06 +03:00
siikamiika
b8df9896e6
allow looking up terms from within terms
...
resolves #167 , resolves #139 , resolves #75 , resolves #151
2019-08-01 02:20:09 +03:00
guidocella
15b93060c7
Add option to play audio automatically
2017-12-16 19:56:53 +01:00