Commit Graph

1997 Commits

Author SHA1 Message Date
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
a40f3b1c9f add missing disableHistory 2019-12-01 06:32:17 +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
e3d96eb67d fix yomichan menu on Firefox Android 2019-11-29 02:58:17 +02:00
siikamiika
8a94d186c3 fix context type inconsistencies 2019-11-29 01:36:14 +02:00
siikamiika
71a117c267 clear Display history on search page lookup 2019-11-28 23:52:15 +02:00
siikamiika
1dd88763de clear Display history on new lookup 2019-11-28 18:24:24 +02:00
siikamiika
1f2734863f Display history navigation buttons fixed position 2019-11-28 18:06:24 +02:00
siikamiika
2e04f752a5 fix clicking on query parser 2019-11-28 16:08:19 +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
63a775ebca Add missing semicolon 2019-11-26 22:06:27 -05:00
toasted-nutbread
df9e697fca Remove trailing commas 2019-11-26 22:06:27 -05:00
toasted-nutbread
acb70f126c Update unused arguments 2019-11-26 22:06:27 -05:00
toasted-nutbread
ef833d2bea Use const rather than let where possible 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
1daed12290 Comment empty blocks 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
a14b820a19 Move utilInvoke into api.js, rename to _apiInvoke 2019-11-26 17:23:55 -05:00
toasted-nutbread
d71bd056e8 Use consistent event handler notation 2019-11-26 17:18:17 -05:00
toasted-nutbread
7f9a73135d Remove utilAsync 2019-11-26 17:18:17 -05:00
toasted-nutbread
0ebf676305 Update WanaKana to v4.0.2
Resolves #290
2019-11-26 12:46:41 -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
toasted-nutbread
cfa16ce675 Include sentence in context on search page 2019-11-26 11:34:06 -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
820beb7c93 Fix incorrect opacity check 2019-11-25 21:04:34 -05:00
toasted-nutbread
9dc03f6d47 Remove wanakana reference from float.html 2019-11-25 13:34:56 -05:00
toasted-nutbread
91c54e1853 Remove JQuery from the context popup window 2019-11-24 11:46:29 -05:00
toasted-nutbread
10b33dbd20 Optimize toggle on the context popup window
Remove bootstrap-toggle dependency
2019-11-24 11:42:27 -05: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
toasted-nutbread
eef05f6a64 Add accept type for dictionary import 2019-11-24 10:47:07 -05:00
siikamiika
89c6ef54b0 always return a promise from Mecab.invoke 2019-11-24 02:34:16 +02:00
siikamiika
43fad608fb remove popup from background page
Not supported on all browsers
2019-11-23 19:25:11 +02:00
siikamiika
7bf2c8048d add mecab version check 2019-11-23 19:18:29 +02:00
siikamiika
2577d4054e fix scanning parser 2019-11-23 18:08:22 +02:00
siikamiika
cc8221c6ea add reading modes 2019-11-23 17:50:46 +02:00
siikamiika
f625321650 refactor selected parser refreshing 2019-11-23 17:50:46 +02:00
siikamiika
933fd77957 remove async 2019-11-23 17:50:46 +02:00
siikamiika
707b039927 store local copy of selected parser
Options don't update early enough even after awaiting
2019-11-23 17:50:46 +02:00
siikamiika
0d6e0edc31 remove height hack and use overflow-y: scroll 2019-11-23 17:50:46 +02:00
siikamiika
f6f19dc9de typo 2019-11-23 17:50:46 +02:00
siikamiika
9dff658640 add parser selection 2019-11-23 17:50:46 +02:00
siikamiika
84f30113e4 give names to complex slices 2019-11-23 17:50:46 +02:00
siikamiika
b02a30a2fd explicit checks in while and if 2019-11-23 17:50:46 +02:00
siikamiika
1f2eee449e mecab refactoring and bugfix 2019-11-23 17:50:46 +02:00
siikamiika
f97877a209 promise improvements 2019-11-23 17:50:46 +02:00
siikamiika
b336ab3a9a use const 2019-11-23 17:49:25 +02:00
siikamiika
8d9a635d5c remove dead code 2019-11-23 17:48:03 +02:00
siikamiika
c1d24208d3 start mecab only after enabling the setting 2019-11-23 17:45:44 +02:00
siikamiika
955e131f96 add parser selection options 2019-11-23 17:45:44 +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
1bf48d24ef change mecab path
https://github.com/siikamiika/yomichan-mecab-installer
2019-11-23 17:45:44 +02:00
siikamiika
515345ba0a remove code duplication 2019-11-23 17:45:44 +02:00
siikamiika
b0c924d4bd fix mecab variable 2019-11-23 17:45:44 +02:00
siikamiika
bc66f254ea click & text selection improvements on search page 2019-11-23 17:45:44 +02:00
siikamiika
c78ca36f3d switch to mousemove events in query parser 2019-11-23 17:45:44 +02:00
siikamiika
8825c481b5 respect text selection option in query parser 2019-11-23 17:45:44 +02:00
siikamiika
5a3e8c819c optimize mouseover scanning in query parser 2019-11-23 17:45:44 +02:00
siikamiika
41020289ab add mecab support 2019-11-23 17:45:44 +02:00
siikamiika
3881457e4e use handlebars templates for query parser 2019-11-23 17:45:44 +02:00
siikamiika
e6a1b78164 use correct source text 2019-11-23 17:44:31 +02:00
siikamiika
408aa73cce fix default params for term clicking 2019-11-23 17:43:30 +02:00
siikamiika
627e16d44b improve text preview 2019-11-23 17:43:30 +02:00
siikamiika
530b95895b remove unused css 2019-11-23 17:40:52 +02:00
siikamiika
d19f447b80 fix stem length checking
Starting from the end and stopping at first match doesn't guarantee
correctness. Starting from the beginning does.
2019-11-23 17:40:52 +02:00
siikamiika
c35a05cd62 add kana to text 2019-11-23 17:40:52 +02:00
toasted-nutbread
b4c6fa2d37 Improve usability of domain profile condition 2019-11-23 10:28:37 -05:00
siikamiika
f63e8e4be0 add simple query parser 2019-11-23 16:56:10 +02:00
toasted-nutbread
baf0325f62 Fix missing details 2019-11-18 21:55:06 -05:00
Alex Yatskov
b1659522b3
Merge pull request #274 from toasted-nutbread/lookup-wildcards
Lookup wildcards
2019-11-13 18:51:50 -08:00
siikamiika
7d9d45ae10 close popups on search page when query changes 2019-11-13 21:19:01 +02:00
siikamiika
29c38b06b2 only paste Japanese text from clipboard 2019-11-13 13:51:47 +02:00
toasted-nutbread
db4a303365 Fix dictionary settings not using the current profile 2019-11-12 20:13:25 -05:00
toasted-nutbread
72e7a42c8d Fix settings not being saved correctly 2019-11-12 20:01:55 -05:00
toasted-nutbread
7333873244 Add support for wildcards 2019-11-10 14:02:43 -05:00
toasted-nutbread
3a225c3f91 Add details field to apiTermsFind 2019-11-10 14:02:43 -05:00
toasted-nutbread
7093d8f06e Simplify how definition count is limited 2019-11-10 14:02:43 -05:00
toasted-nutbread
58c0997999 Give findKanji the same API as findTerms 2019-11-10 14:02:43 -05:00
toasted-nutbread
af1662acad Update how apiTermsFind works 2019-11-10 14:02:43 -05:00
toasted-nutbread
ae10bb7096 Simplify dictTermsSort 2019-11-10 14:02:43 -05:00
toasted-nutbread
fe82913991 Rename function 2019-11-10 14:02:43 -05:00
toasted-nutbread
a9ab774a3f Move function 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
157e6f7c75 Optimize DisplaySearch.onKeyDown 2019-11-10 13:40:48 -05:00
toasted-nutbread
120f97be26 Refactor apiOptionsSet 2019-11-10 13:36:35 -05:00
toasted-nutbread
aa92855b37 Fixes for Edge 2019-11-10 13:01:39 -05:00
toasted-nutbread
75883ed885 Remove dexie 2019-11-10 13:01:39 -05:00
toasted-nutbread
e48bfb8f1a Use native indexedDB pointer 2019-11-10 13:01:39 -05:00
toasted-nutbread
183ec6b381 Use native IndexedDB to delete the database 2019-11-10 13:01:39 -05:00
toasted-nutbread
3a1e3392ed Use native IndexedDB to create database and object stores 2019-11-10 13:01:39 -05:00
toasted-nutbread
6c023789d9 Use native IndexedDB for bulkAdd operations 2019-11-10 13:01:39 -05:00
toasted-nutbread
750439ebf0 Use native IndexedDB for database additions 2019-11-10 13:01:39 -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
3e864c44c3 Fixes for Edge 2019-11-09 20:52:16 -05:00
siikamiika
4ac4128388 search page checkbox styling
Change checkboxes to color-inverting icons
2019-11-10 03:15:55 +02:00
toasted-nutbread
184cc4cf28 Allow templates to be tested on the settings page 2019-11-09 16:34:39 -05:00
toasted-nutbread
085881d342 Use HTML templates for anki fields 2019-11-09 14:31:13 -05:00
siikamiika
40c8268fd6 always disable scanning IME checkbox label 2019-11-09 13:01:21 +02:00
siikamiika
cf0bb0a9e2 enable custom CSS on search page 2019-11-09 12:43:22 +02:00
siikamiika
177fad56b5 use scan toggling for stroke order diagram too 2019-11-09 12:28:12 +02:00
siikamiika
25af532ab7 enable expression scan toggling on search page 2019-11-09 12:27:09 +02:00
toasted-nutbread
b59a5b8cdb Add support for some regex functions in handlebars templates 2019-11-08 22:57:20 -05:00
toasted-nutbread
4d7940e8e4 Optimize dictFieldFormat 2019-11-08 22:25:03 -05:00
toasted-nutbread
fa963722a7 Fix seekForward and seekBackward not handling length=0 case correctly 2019-11-08 19:24:33 -05:00
toasted-nutbread
b059609670 Add outdated warning 2019-11-07 20:30:55 -05:00
toasted-nutbread
cad0648cbe Remove unused function 2019-11-07 20:30:55 -05:00
toasted-nutbread
f7700789fe Update dictionary order based on priority 2019-11-07 20:30:55 -05:00
toasted-nutbread
fcb922400a Prevent page exit while database operations are in progress 2019-11-07 20:30:55 -05:00
toasted-nutbread
e5dcb41824 Add support for importing multiple dictionaries at once 2019-11-07 20:30:55 -05:00
toasted-nutbread
e091c7ebe2 Add support for deleting individual dictionaries 2019-11-07 20:30:55 -05:00
toasted-nutbread
e355b83914 Update how nodes are hidden 2019-11-07 20:30:55 -05:00
toasted-nutbread
3d78d5400d Add button and confirmation dialog for database purge 2019-11-07 20:30:55 -05:00
toasted-nutbread
2ab871e7ee Update how dictionaries are displayed on the settings page 2019-11-07 20:30:55 -05:00
toasted-nutbread
79069d5908 Add functions for getting dictionary information 2019-11-07 20:30:55 -05:00
toasted-nutbread
44638b7ceb Simplify how option visibility is changed 2019-11-07 20:30:55 -05:00
91c01e0a7e Update version 2019-11-05 19:03:23 -08:00
toasted-nutbread
a85ec440d6 Fix overlapping popup timers 2019-11-05 19:48:08 -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
75ff05148d Fix autoHideResults not working 2019-11-03 11:06:31 -05:00
toasted-nutbread
7de24dd355 Add favicons 2019-11-02 10:10:03 -04:00
toasted-nutbread
bcffe80a1e Group similar functions together 2019-10-28 17:03:42 -04:00
toasted-nutbread
6d85dae68d Fix some issues with the context menu 2019-10-28 17:03:42 -04:00
toasted-nutbread
d2644c0776 Style update 2019-10-28 17:03:42 -04:00
toasted-nutbread
c365101ec2 Reset preventions earlier 2019-10-28 17:03:42 -04:00
toasted-nutbread
e542f38110 Check pendingLookup earlier 2019-10-28 17:03:42 -04:00
toasted-nutbread
9703e123bf Remove setPrimaryTouch 2019-10-28 17:03:42 -04:00
toasted-nutbread
80eb357527 Simplify touch event implementation 2019-10-28 17:03:42 -04:00
toasted-nutbread
131dc8397d Make selectionContainsPoint static 2019-10-28 17:03:42 -04:00
toasted-nutbread
a648e05091 Improve naming 2019-10-28 17:03:42 -04:00
toasted-nutbread
9178636613 Remove setters 2019-10-28 17:03:42 -04:00
toasted-nutbread
c74c466c36 Remove unused variable 2019-10-28 17:03:42 -04:00
toasted-nutbread
f2dec4ca20 Remove searchFromTouch 2019-10-28 17:03:42 -04:00
toasted-nutbread
8c5240d7a6 Simplify how touch events use onAfterSearch 2019-10-28 17:03:42 -04:00
toasted-nutbread
e91bcf5f55 Rename textSourceLast to textSourceCurrent 2019-10-28 17:03:42 -04:00
toasted-nutbread
be27781c15 Update how definitions are searched for 2019-10-28 17:03:42 -04:00
toasted-nutbread
f927f806ba Move check 2019-10-28 17:03:42 -04:00
toasted-nutbread
1f0a434e96 Remove unused vars 2019-10-28 17:03:42 -04:00
toasted-nutbread
dcb6f68826 Don't pass null textSource into searchSource 2019-10-28 17:03:42 -04:00
toasted-nutbread
185963899b Use promiseTimeout 2019-10-28 17:03:42 -04:00
toasted-nutbread
d608657495 Move onError catch into searchAt 2019-10-28 17:03:42 -04:00
toasted-nutbread
1039536cfb Create promise version of setTimeout 2019-10-28 17:03:42 -04:00
siikamiika
f6d3f739a8 improve search page checkbox usability
Disable text selection and make the entire area clickable, including
whitespace
2019-10-28 01:13:05 +02:00
siikamiika
a31ee0a0e9 refactoring 2019-10-28 00:09:36 +02:00
siikamiika
d62d04f806 fix wanakana toggle on empty input 2019-10-27 23:52:16 +02:00
siikamiika
68179607b3 use apiOptionsGet to modify the correct profile 2019-10-27 23:34:50 +02:00
siikamiika
9641747ba1 Revert "modify correct profile apiOptionsSet"
This reverts commit 51c35c9f30.
2019-10-27 23:02:41 +02:00
siikamiika
51c35c9f30 modify correct profile apiOptionsSet 2019-10-27 22:43:20 +02:00
siikamiika
70418202cf make search page checkbox options persist 2019-10-27 20:11:23 +02:00
siikamiika
48776145d6 add workaround to Chrome clipboard.readText
For some reason this doesn't work on Firefox, so keep using the new API
for Firefox
2019-10-27 15:46:27 +02:00
siikamiika
d3f51690f8 make clipboardRead an optional permission 2019-10-27 01:51:18 +03:00
siikamiika
7ee87265cd refactor and tune wanakana toggling 2019-10-27 01:26:17 +03:00
siikamiika
01ffb052e6 simplify search history state handling 2019-10-26 19:32:41 +03:00
siikamiika
bbbd23c842 add button to enable/disable wanakana IME 2019-10-26 19:12:13 +03:00
siikamiika
303205dc12 keep url query in history 2019-10-26 18:42:57 +03:00
siikamiika
704864b7b2 add clipboard monitor to search page
Related to issue #262 about APIs
2019-10-26 18:15:28 +03:00
siikamiika
bebd70b4e2 remember search history 2019-10-26 16:39:43 +03:00
siikamiika
50769feea7 ignore more keys on search page 2019-10-26 15:15:12 +03:00
siikamiika
9132814ccf focus and scroll to input only when it's needed 2019-10-26 14:30:36 +03:00
siikamiika
fe8eb76928 tweak ignored keys on search page 2019-10-26 03:39:08 +03:00
siikamiika
3a70346eb3 fix various unwanted focus issues on search page
Don't focus input if a modifier or specific keys are pressed
2019-10-26 03:26:24 +03: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
Danny
aeac7bf2a8
Proper spacing for Anki in {furigana-plain}
This should fix #264 

Note it does not address broken segmentation, just representation
within Anki itself to work properly.
2019-10-23 07:46:43 -04:00
toasted-nutbread
7a3315d75d Use chrome.runtime.getURL instead of chrome.extension.getURL 2019-10-22 20:23:03 -04:00
d32fd1381b increment version for testing 2019-10-20 11:22:50 -07:00
Alex Yatskov
d8f9c2e1d4
Merge pull request #261 from toasted-nutbread/search-button-reuse-tab
Reuse open search tab when clicking search button
2019-10-20 11:06:23 -07:00
Alex Yatskov
6592323855
Merge pull request #259 from toasted-nutbread/database-optimizations2
Database optimizations part 2
2019-10-20 11:04:17 -07:00
toasted-nutbread
362a1ed9e4 Catch exception thrown on Edge 2019-10-20 10:58:22 -04:00
toasted-nutbread
d7dc8ac9cd Add tooltip about middle click behaviour 2019-10-20 10:30:44 -04:00
toasted-nutbread
ce92591b63 Fix window focus not always working 2019-10-19 22:55:32 -04:00
toasted-nutbread
7abc7fd0e7 Use links instead of buttons on context page 2019-10-19 22:54:58 -04:00
toasted-nutbread
205498ef3b Validate chrome.windows exists before usage 2019-10-19 22:45:29 -04:00
toasted-nutbread
ffb6ff9325 Allow multiple options pages to be opened on middle click 2019-10-19 22:34:47 -04:00
toasted-nutbread
d9ae34821c Add support for middle clicks opening new tabs on the context buttons 2019-10-19 22:30:16 -04:00
toasted-nutbread
dbec4bffda Make the search button reuse an open search tab if it exists 2019-10-19 22:28:23 -04:00
Alex Yatskov
03c72e9429
Merge pull request #256 from toasted-nutbread/unlimited-storage
Add unlimited storage permission
2019-10-19 12:01:54 -07:00
toasted-nutbread
eea95eb130 Simplify score to term frequency conversion 2019-10-19 14:18:57 -04:00
toasted-nutbread
96e4bf1735 Use native IndexedDB APIs for findTagForTitle 2019-10-19 13:41:18 -04:00
toasted-nutbread
610c2b9cca Move tagCache out of Database and into Translator 2019-10-19 13:32:05 -04:00
toasted-nutbread
6f5fa6771b Remove unused database functions 2019-10-19 12:44:23 -04:00
toasted-nutbread
97de7883a3 Update getMergedSecondarySearchResults to use findTermsExactBulk 2019-10-19 12:42:26 -04:00
toasted-nutbread
4446cbeabb Create getMergedSecondarySearchResults 2019-10-19 12:28:33 -04:00
toasted-nutbread
96f37fd9dc Create function for body of findTermsMerged's sequencedDefinitions loop 2019-10-19 12:16:38 -04:00
toasted-nutbread
a08cbebeb3 Use findTermsBySequenceBulk instead of findTermsBySequence 2019-10-19 11:34:12 -04:00
toasted-nutbread
a25167df73 Use findKanjiBulk and findKanjiMetaBulk in Translator.findKanji 2019-10-19 10:39:08 -04:00
toasted-nutbread
d212d0aba1 Add additional database bulk methods 2019-10-19 10:19:12 -04:00
toasted-nutbread
9364a7cb4e Create function for creating kanji data and meta 2019-10-18 23:16:33 -04:00
toasted-nutbread
6743b785c9 Remove temp createResult 2019-10-18 23:09:00 -04:00
toasted-nutbread
31ae00d0d3 Add missing validate calls 2019-10-18 23:04:06 -04:00
toasted-nutbread
127a728675 Remove unused functions 2019-10-18 21:58:28 -04:00
toasted-nutbread
a5d7de8e97 Add correction to offset of imposter rect
Necessary when dealing with CSS transforms
2019-10-17 19:30:54 -04:00
toasted-nutbread
8f918c63dc Reposition popup on window resize rather than clear the search
Fixes #107
2019-10-17 18:40:43 -04:00
toasted-nutbread
598cd32946 Update *show* APIs to unified showContent and setContent 2019-10-17 18:40:43 -04:00
toasted-nutbread
779b4af590 Change -teoru endings to be godan verbs 2019-10-16 19:11:45 -04:00
siikamiika
5b98f3ea6e add missing return to fix vertical text mode 2019-10-16 23:49:40 +03:00
toasted-nutbread
16521fec93 Assign first popup on the search page as a depth of 1 2019-10-15 20:23:25 -04:00
toasted-nutbread
173a474d5b Add unlimited storage permission 2019-10-15 19:41:39 -04:00
toasted-nutbread
099909287f Show warning messages if persistant storage fails
Only Firefox seems to support persistent storage properly.
2019-10-15 19:22:30 -04:00
toasted-nutbread
4443ad370e Catch error when trying to persist storage
This happens on Firefox Mobile
2019-10-13 18:41:16 -04:00
toasted-nutbread
693ffebbf7 Make the Options link the first link
Better reflects importance in a top-down list.
2019-10-13 18:38:17 -04:00
toasted-nutbread
437fe4e62e Move anki warnings under anki-general 2019-10-13 18:30:44 -04:00
toasted-nutbread
d42a07dc0b Improve layout of context.html on Firefox Mobile 2019-10-13 18:23:59 -04:00
toasted-nutbread
ba27ea2c9d Center align context popup window buttons 2019-10-13 17:40:51 -04:00
toasted-nutbread
17e2f825f4 Add warning message for Mac users about App Nap 2019-10-13 17:32:28 -04:00
toasted-nutbread
cb236a7430 Add apiGetEnvironmentInfo function 2019-10-13 17:20:55 -04:00
toasted-nutbread
c92fc11fcd Fix getElementWritingMode returning deprecated values on Edge 2019-10-13 16:44:13 -04:00
toasted-nutbread
4f8c84d524 Fix Japanese voice ordering on Firefox for Android 2019-10-13 16:30:31 -04:00
toasted-nutbread
f8e666b70c Fix backend handling errors incorrectly 2019-10-13 16:08:15 -04:00
siikamiika
f3ab7673f9 add css class for dictionary name
Can be used for dictionary specific styling
2019-10-13 21:50:29 +03:00
toasted-nutbread
7bae3824e7 Add support for text-to-speech playback 2019-10-13 12:21:19 -04:00
toasted-nutbread
69b28571bd audioBuildUrl => audioGetUrl and simplify 2019-10-13 12:20:56 -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
1b96e69ea2 Placeholder and improve consistency of stylesheet rule priorities 2019-10-13 12:12:52 -04:00
toasted-nutbread
b34ff7ebe9 Change #yomichan-float to .yomichan-float
Since there can be more than one popup, using a class makes more sense than an ID.
2019-10-13 12:12:52 -04:00
toasted-nutbread
42d67249c9 Update the popup preview to show live updates to outer CSS changes 2019-10-13 12:12:52 -04:00
toasted-nutbread
c9158a37b5 Allow outer popup stylesheets to be injected 2019-10-13 12:12:51 -04:00
toasted-nutbread
3272948284 Adds setting for controlling the outer style of the popup 2019-10-13 12:12:51 -04:00
toasted-nutbread
118f200500 Simplified how the auto theme works 2019-10-13 12:12:51 -04:00
toasted-nutbread
57db18c31b Leave default stylesheet enabled by default 2019-10-12 19:00:24 -04:00
toasted-nutbread
b086fca69f Add separate theme option for outer popup style 2019-10-12 19:00:24 -04:00
toasted-nutbread
1da60aae2d Update live preview custom CSS on input event 2019-10-12 19:00:24 -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
ceaeeb32dd Remove bootstrap styles from float.html 2019-10-12 19:00:21 -04:00
toasted-nutbread
696ea80e06 Add option for popup theme 2019-10-12 15:44:35 -04:00
toasted-nutbread
be7fa57d5c Add support for a popup preview 2019-10-12 15:44:32 -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
8a1637f6b3 Remove .show popup proxy API since it's not used 2019-10-12 15:31:29 -04:00
toasted-nutbread
194615ef21 Make popups store options 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
cc72514ce6 Frontend updates 2019-10-11 23:24:51 -04:00
toasted-nutbread
a6903d68a4 Revert default audio source behaviour
This more closely matches the upgrade process
2019-10-11 23:24:51 -04:00
toasted-nutbread
70bceb5b56 Improve display of storage stats 2019-10-11 19:48:43 -04:00
toasted-nutbread
6014fe5344 Add support for persistent storage 2019-10-11 19:44:13 -04:00
toasted-nutbread
2bfc7e3972 Fix order of {screenshot} tag 2019-10-11 19:44:13 -04:00
55b2c1d8f5 version bump 2019-10-10 19:49:05 -07:00
toasted-nutbread
6208d6c93b Add UI for editing audio playback sources 2019-10-10 21:36:09 -04:00
toasted-nutbread
1dc8bf77ca Add input setting for custom audio source 2019-10-10 21:30:38 -04:00
toasted-nutbread
27c8430915 Implement custom audio source 2019-10-10 21:30:38 -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
8be0ddeb26 Create region for audio options 2019-10-09 22:02:25 -04:00
toasted-nutbread
60a80418d7 Update how audio URLs are constructed 2019-10-09 21:54:58 -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
97f5b7139f Add findNoteIds to AnkiConnect 2019-10-09 20:27:05 -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
bf5d301685 Only use foreground api.js/util.js 2019-10-08 20:01:03 -04:00
toasted-nutbread
1074c33f20 Add support for query parameter in URL on search page 2019-10-08 20:01:03 -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
176f6a248b Fix findTermMetaBulk trying to use undefined row.id 2019-10-07 22:34:40 -04:00
Alex Yatskov
7ccdb9134c
Merge pull request #243 from toasted-nutbread/svg-icons
SVG icons
2019-10-06 21:11:54 -07:00
toasted-nutbread
205c7d88d0 Remove PNG icons 2019-10-06 21:28:43 -04:00
toasted-nutbread
7c826fdd0b Switch from using PNGs to SVGs 2019-10-06 21:28:43 -04:00
toasted-nutbread
69b9cac8af Create SVG icons 2019-10-06 21:28:42 -04:00
c3926c67ad version bump 2019-10-06 09:07:22 -07:00
Alex Yatskov
14a5e3ce20
Merge pull request #238 from toasted-nutbread/deinflector-optimization
Deinflector optimization
2019-10-05 19:49:54 -07:00
Alex Yatskov
4df8662ea9
Merge pull request #234 from toasted-nutbread/remove-frontend-event-listeners
Remove event listeners when scanning is disabled
2019-10-05 19:48:46 -07:00
toasted-nutbread
113cc725c1 Make the window.onresize handler not change focus 2019-10-05 22:11:05 -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
50a47348a7 Optimize internal data structure used by the Deinflector class 2019-10-05 18:28:30 -04:00
toasted-nutbread
30263c3db8 Improve progressive/perfect deinflection rules 2019-10-05 18:21:39 -04:00
toasted-nutbread
c967b7a9f1 Remove event listeners when scanning is disabled 2019-10-05 13:57:33 -04:00
bac237336e version bump 2019-10-05 10:16:33 -07:00
Alex Yatskov
46ab36180f
Merge pull request #233 from toasted-nutbread/static-handlers
Static handlers
2019-10-05 09:20:45 -07:00
Alex Yatskov
440d6a91fd
Merge pull request #235 from toasted-nutbread/teiru-deinflections
Add support for progressive/perfect inflections
2019-10-05 09:19:31 -07:00
Alex Yatskov
a369f8d0a4
Merge pull request #229 from toasted-nutbread/database-optimizations
Database optimizations
2019-10-05 09:18:09 -07:00
toasted-nutbread
457caf2221 Add support for progressive/perfect inflections 2019-10-04 22:11:45 -04:00
toasted-nutbread
fa7ee468c0 Simplify float initialization 2019-10-02 21:12:24 -04:00
toasted-nutbread
7380ada1f1 Simplify onWheel handler 2019-10-02 21:12:24 -04:00
toasted-nutbread
0d6177398d Use static object for api command handlers 2019-10-02 21:12:24 -04:00
toasted-nutbread
10458c63e7 Use static object for backend message handlers 2019-10-02 21:12:23 -04:00
toasted-nutbread
bf382652a7 Use static object for float message handlers 2019-10-02 20:46:35 -04:00
toasted-nutbread
7d15213916 Use static object for frontend message handlers 2019-10-02 20:31:42 -04:00
toasted-nutbread
a628610cbd Use KeyboardEvent.key for onKeyDown handlers 2019-10-02 19:49:52 -04:00
toasted-nutbread
861474d2fc Fix inconsistent return type 2019-10-01 19:05:30 -04:00
Alex Yatskov
fba2bef905
Merge pull request #225 from toasted-nutbread/text-source-range-improvements
TextSourceRange improvements
2019-09-30 19:58:19 -07: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
Alex Yatskov
00d16433e7
Merge pull request #228 from toasted-nutbread/fix-tab-focus-changing
Fix tab focus being changed due to settings changes
2019-09-30 19:53:45 -07:00
toasted-nutbread
44119eea2c Fix deinflections not being handled correctly 2019-09-30 22:09:16 -04:00
toasted-nutbread
25a4dafd73 Fix tab focus being changed due to settings changes 2019-09-29 16:48:28 -04:00
toasted-nutbread
8b7558a757 Use toIterable for cross-window origin objects 2019-09-29 15:26:57 -04:00
toasted-nutbread
e18b8438ae Updated button styles 2019-09-29 12:33:16 -04:00
toasted-nutbread
1286b5115f Use bulk database searches 2019-09-28 22:05:10 -04:00
toasted-nutbread
664a318d7f Use non-async function for cache lookups 2019-09-28 21:54:18 -04:00
toasted-nutbread
a4f8a459de Create common function for creating term object 2019-09-28 21:49:08 -04:00
toasted-nutbread
888075d21a Add instructions for keyboard shortcuts 2019-09-28 16:04:22 -04:00
toasted-nutbread
5dfeca1500 Rename option for clarity 2019-09-28 16:04:22 -04:00
toasted-nutbread
305cf4703b Add info about third-party software licenses 2019-09-28 16:04:22 -04:00
toasted-nutbread
e7702e3bb4 Update URLs 2019-09-28 16:04:22 -04:00
toasted-nutbread
73133294e7 Update copyright years 2019-09-28 16:04:22 -04:00
toasted-nutbread
2a0cc44e6a Add header to settings page 2019-09-28 16:04:22 -04:00
toasted-nutbread
1a8cb78391 Add version information 2019-09-28 16:04:22 -04:00
toasted-nutbread
b42fa9581f Fix some incorrect labels 2019-09-28 16:04:22 -04:00
toasted-nutbread
9b929ffcd4 Add wrapping for usage conditions on small screens 2019-09-28 16:04:22 -04:00
toasted-nutbread
4e0fe1d5fb Limit width of the HTML pages 2019-09-28 16:04:22 -04:00
toasted-nutbread
9217b5c79b Move settings style to separate CSS file 2019-09-28 16:03:51 -04:00
toasted-nutbread
597f658b26 Move glyphicons into span element 2019-09-28 16:03:51 -04:00
toasted-nutbread
e5f24b8f12 Fix paragraph tags 2019-09-28 16:03:51 -04:00
toasted-nutbread
03c52625a9 Refactor seekForward and seekBackward 2019-09-28 11:28:55 -04:00
toasted-nutbread
a5f393fa2c Fix incorrect check 2019-09-28 11:28:15 -04:00
toasted-nutbread
928d7aecd5 Directly return rather than use a temporary variable 2019-09-28 11:28:15 -04:00
toasted-nutbread
8110de514e Change skipped node types to use a switch statement 2019-09-28 11:28:15 -04:00
toasted-nutbread
e358c94882 Clean up event listeners 2019-09-27 21:41:00 -04:00
toasted-nutbread
1a7ad30111 Remove jQuery dependency from float.html and search.html 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
toasted-nutbread
b61fc81012 Remove jQuery usage from search.js 2019-09-27 21:16:10 -04:00
toasted-nutbread
9a243630a5 Improve slide up animation 2019-09-27 21:16:10 -04:00
toasted-nutbread
476a5e873a Remove jQuery usage from float.js 2019-09-27 21:16:10 -04:00
odehjoseph
62b95a656f Add option to enable Alt+B lookup 2019-09-26 21:33:33 -07:00
f5afe590ad version bump 2019-09-23 17:34:18 -07:00
Alex Yatskov
ba2858309e
Merge pull request #218 from toasted-nutbread/settings-profile-conditions
Settings profile conditions
2019-09-23 17:03:00 -07:00
Alex Yatskov
db405ffd24
Merge pull request #219 from toasted-nutbread/fix-null-caret-position
Handle null return value of document.caretPositionFromPoint
2019-09-22 10:06:52 -07:00
toasted-nutbread
f022ee4eca Use a Promise to trigger callback when delay is 0 or less 2019-09-19 19:00:26 -04:00
toasted-nutbread
02927f9004 Handle null return value of document.caretPositionFromPoint 2019-09-18 22:11:18 -04:00
toasted-nutbread
352d214203 Isolate objects to background window 2019-09-18 19:14:04 -04:00
toasted-nutbread
dcfe722ba6 Add support for using optionsContext to select which profile to use 2019-09-18 19:14:04 -04:00
toasted-nutbread
8c4fb28a30 Add support creating profile usage conditions 2019-09-18 19:14:01 -04:00
Alex Yatskov
e3fb9603e2
Merge pull request #209 from toasted-nutbread/settings-profiles
Settings profiles
2019-09-16 18:32:01 -07:00
toasted-nutbread
073420a121 Normalize XHTML document node.nodeNode to upper case 2019-09-15 16:09:46 -04:00
toasted-nutbread
9fb89d8f7d Isolate to background window 2019-09-15 16:04:26 -04:00
toasted-nutbread
8b7e293eae Remove profile without popup when shift key is pressed
Also removes duplicate click listener.
2019-09-15 15:58:19 -04:00
toasted-nutbread
34ddbf25fe Implement profile order changing 2019-09-15 15:58:19 -04:00
toasted-nutbread
1f77506f43 Implement profile copy 2019-09-15 15:58:19 -04:00
toasted-nutbread
c002e1bbd2 Update dictionaries for all profile options 2019-09-15 15:58:19 -04:00
toasted-nutbread
6c571bf828 Add UI for profiles 2019-09-15 15:56:53 -04:00
toasted-nutbread
c8171f5ec7 Add preliminary support for profiles 2019-09-15 15:56:53 -04:00
Alex Yatskov
5877861277
Merge pull request #213 from toasted-nutbread/options-isolation
Isolate options objects created via settings.js
2019-09-15 11:34:34 -07:00
Alex Yatskov
e4fa658295
Merge pull request #212 from toasted-nutbread/frontend-cleanup
Frontend cleanup
2019-09-15 11:33:48 -07:00
Alex Yatskov
4af9fc2b3b
Merge pull request #214 from toasted-nutbread/add-anchor-noopener
URL improvements
2019-09-15 11:32:48 -07:00
Alex Yatskov
88a6128e39
Merge pull request #211 from toasted-nutbread/validate-content-window
Validate contentWindow before focus
2019-09-14 17:31:23 -07:00
Alex Yatskov
2add068ff2
Merge pull request #210 from toasted-nutbread/defer-port-creation
Defer creation of communication port until required
2019-09-14 17:30:52 -07:00
toasted-nutbread
f8aa926f8a Upgrade website URLs to https 2019-09-14 20:18:03 -04:00
toasted-nutbread
ba1875c56a Add rel="noopener" to all anchors with target="_blank" 2019-09-14 19:59:45 -04:00
toasted-nutbread
6358b655ae Isolate options objects created via settings.js
Prevents dead objects created by different windows.
2019-09-14 16:21:41 -04:00
toasted-nutbread
0067dfeacc Remove redundant call of popupTimerClear
Also use explicit null checks rather than truthy checks.
2019-09-14 15:29:43 -04:00
toasted-nutbread
8b1e4d1c6f Return only single element when deepDomScan is not enabled 2019-09-14 14:52:03 -04:00
toasted-nutbread
7dddcb8dca Rename type to cause 2019-09-14 14:31:21 -04:00
toasted-nutbread
6d3037f3d6 Remove destructuring from searchAt, containsPoint, docRangeFromPoint 2019-09-14 14:27:25 -04:00
toasted-nutbread
89941d404c Remove unused variable 2019-09-14 14:11:25 -04:00
toasted-nutbread
721248c821 Remove mouseDownLeft and mouseDownMiddle
MouseEvent.buttons can be used instead.
2019-09-14 14:11:06 -04:00
toasted-nutbread
964de775df Validate contentWindow before focus 2019-09-14 12:02:31 -04:00
toasted-nutbread
304064dae0 Defer creation of communication port until required 2019-09-14 11:58:22 -04:00
toasted-nutbread
bab6a13bfb Fix nested popups being shown if parent is hidden 2019-09-13 18:12:51 -04:00
Alex Yatskov
ec816e6767
Merge pull request #207 from toasted-nutbread/popup-proxy-writing-mode
Add writingMode to PopupProxy* termsShow and kanjiShow
2019-09-12 19:48:22 -07:00
Alex Yatskov
60b32a4a1a
Merge pull request #206 from toasted-nutbread/fix-incorrect-function-name
Replace profileCreateDefaultFieldTemplates with optionsFieldTemplates
2019-09-12 19:47:52 -07:00
toasted-nutbread
76aa30ceba Add writingMode to PopupProxy* termsShow and kanjiShow 2019-09-11 21:29:08 -04:00
toasted-nutbread
c38c7fbda1 Replace profileCreateDefaultFieldTemplates with optionsFieldTemplates 2019-09-11 19:56:13 -04:00
toasted-nutbread
84bd9ff93b Update settings if a different source triggers optionsUpdate 2019-09-10 21:58:53 -04:00
toasted-nutbread
71b700cd22 Add checkbox for options.general.enable 2019-09-10 21:45:43 -04:00
toasted-nutbread
87e513dd77 Fix options reference being changed 2019-09-10 21:44:32 -04:00
toasted-nutbread
1f8c7358cb Create function for setting up form event listeners 2019-09-10 21:43:52 -04:00
toasted-nutbread
36b39e2f65 Create formWrite function 2019-09-10 21:43:51 -04:00
toasted-nutbread
cab39e89c9 Create section for Popup Content Scanning Options 2019-09-10 21:43:51 -04:00
toasted-nutbread
c4e6d7e3d1 Add utility method for checking if a value is a standard object 2019-09-10 20:09:33 -04:00
toasted-nutbread
05ce350792 Use apiOptionsSave instead of optionsSave 2019-09-10 20:09:33 -04:00
toasted-nutbread
4686a31a0a Use apiOptionsGet instead of optionsLoad 2019-09-10 20:09:33 -04:00
toasted-nutbread
99cec1d23f Change how formRead works
The function now modifies values in-place.
2019-09-10 20:09:33 -04:00
toasted-nutbread
8175f80183 Remove calls to apiOptionsGetSync
Use apiOptionsGet everywhere to ensure options is initialized.
2019-09-10 20:09:33 -04:00
toasted-nutbread
1b2a1e50eb Add getOptions function to backend 2019-09-10 20:09:33 -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
99ca60d4c1 Ensure both Popup and PopupProxy have valid depth 2019-09-10 20:09:33 -04:00
toasted-nutbread
aae971a09e Pass options directly to translator.findTerms* 2019-09-10 20:09:33 -04:00
toasted-nutbread
91bc31d758 Change how options updates are handled on the frontend
Only an 'optionsUpdate' signal is now sent to the frontend with empty data. The frontend then responds by performing apiOptionsGet to update the options. This makes it so that there is only a single function which is responsible for requesting options from the backend.
2019-09-10 20:09:33 -04:00
Alex Yatskov
cc53510883
Merge pull request #204 from toasted-nutbread/settings-improvements
Settings improvements
2019-09-08 19:34:39 -07:00
toasted-nutbread
eb98dfb1a8 Simplify logic for how option updates are propagated 2019-09-06 21:23:35 -04:00
toasted-nutbread
7db2c66105 Use consistent structure for params 2019-09-06 21:23:35 -04:00
toasted-nutbread
13b184707b Remove unnecessary functions
apiOptionsSet not required in bg/js/api.js after optionsSave; optionsSave already invokes apiOptionsSet.
apiOptionsSet not required in fg/js/api.js since it's never invoked by the foreground.
optionsSet handler not required in bg/js/backend.js since the message is never sent by the foreground.
2019-09-06 21:23:35 -04:00
toasted-nutbread
35ca0f35dd Create common function for utilBackend().options 2019-09-06 21:23:35 -04:00
toasted-nutbread
a74cdbff1d Change update process 2019-09-06 19:55:58 -04:00
c53263158b version bump 2019-09-05 20:20:23 -07:00
Alex Yatskov
155986db46
Merge pull request #201 from toasted-nutbread/omit-contains-point-check
Omit containsPoint check on searchAt
2019-09-05 19:46:43 -07:00
Alex Yatskov
6dc44e3f33
Merge pull request #202 from toasted-nutbread/temporary-object-optimization
Temporary object optimization
2019-09-05 19:46:14 -07:00
toasted-nutbread
5ddbb0373f Add function to create default options 2019-09-05 20:57:52 -04:00
toasted-nutbread
ec110fa1b7 Add some validation to options loading 2019-09-05 20:57:52 -04:00
toasted-nutbread
1c767711bb Prevent infinite loops for corrupt options 2019-09-05 20:57:52 -04:00
toasted-nutbread
bc7759d94c Add some parameters to field-templates textarea 2019-09-05 20:57:52 -04:00
toasted-nutbread
dbfbf9d12d Use non-bold text for label information
Units, etc.
2019-09-05 18:53:12 -04:00
toasted-nutbread
fb8cb3db43 Collapse two-column options on smaller screens 2019-09-05 18:45:42 -04:00
toasted-nutbread
2e87cd72bc Use consistent styling for all two-column settings 2019-09-05 18:39:28 -04:00
toasted-nutbread
aa77a7896d Group all two-column settings together 2019-09-05 18:30:39 -04:00
toasted-nutbread
5c793180d0 Omit containsPoint check on searchAt
The range returned by docRangeFromPoint is now guaranteed to contain the point due to the addition of isPointInRange checks.
2019-09-03 19:17:50 -04:00
toasted-nutbread
9028b55774 Fix nested popups closing when the mouse leaves the parent's rect 2019-09-03 18:55:55 -04:00
toasted-nutbread
b90dea0e6d Use string.substr instead of string.split 2019-09-02 20:25:30 -04:00
toasted-nutbread
fc4a961412 Replace some instances of Array.concat
.push or .unshift can accomplish the same operation without constructing new arrays.
2019-09-02 20:25:30 -04:00
toasted-nutbread
fad5332488 Move static DOM scanning functions into TextSourceRange 2019-09-02 19:33:52 -04:00
siikamiika
f4b81eff30 fix parent focus issues for Firefox and Chrome 2019-09-02 19:33:52 -04:00
siikamiika
2df9a7f977 change Popup.children to Popup.child 2019-09-02 19:33:52 -04:00
siikamiika
97be029dee focus the site when closing multi-level popups 2019-09-02 19:33:52 -04:00
siikamiika
834f14e808 simplified if statement back to single line 2019-09-02 19:33:52 -04:00
siikamiika
3d28a3a405 prevent closing new child popup on parent mouseout 2019-09-02 19:33:52 -04:00
siikamiika
e4d302e786 focus parent popup on hide instead of blurring 2019-09-02 19:33:52 -04:00
siikamiika
87ff5cb19b make containsPoint async everywhere 2019-09-02 19:33:52 -04:00
toasted-nutbread
71471d08e5 Add option to enable/disable scanning of source expressions in popups 2019-09-02 19:33:52 -04:00
toasted-nutbread
3491affcf1 Update nested initialization parameters passed via message rather than using the URL query string 2019-09-02 19:33:28 -04:00
toasted-nutbread
53aad0bef6 Fix messaging issues when iframes are present in the document 2019-09-02 19:33:28 -04:00
toasted-nutbread
42ec3e2a43 Add support for popup on the search page 2019-09-02 19:33:28 -04:00
toasted-nutbread
1a9348ec27 Add option for maximum nested popup depth 2019-09-02 19:32:08 -04:00
toasted-nutbread
5c4614f585 Add support for showing recursive popups 2019-09-02 19:31:42 -04:00
4ac55da7dd version bump 2019-09-02 11:46:00 -07:00
toasted-nutbread
33076e9db9 Fix typo 2019-09-02 11:43:49 -04:00
toasted-nutbread
c0bf6ff033 Fix issues caused by scanning ranges which don't start with a text node
The rects returned by range.getClientRects() could include the entire start element's bounding box.
2019-09-02 11:43:49 -04:00
toasted-nutbread
a2139213c8 Fix issue with whitespace ranges
The size of the rects for these ranges will sometimes be excessively large on Firefox, leading to false positives.
2019-09-02 11:43:49 -04:00
toasted-nutbread
ee59b3ab8b Reduce amount of isPointInRange calls for repeated ranges 2019-09-02 11:43:49 -04:00
toasted-nutbread
171e3f1097 Add option for enabling deep scanning 2019-09-02 11:43:48 -04:00
toasted-nutbread
737a5ee8a8 Allow elements behind other transparent elements to be scanned 2019-09-02 11:43:33 -04:00
toasted-nutbread
d296ebd593 Improve definition of caretRangeFromPoint 2019-09-02 11:41:00 -04:00
toasted-nutbread
548607ea7f Destructure point to {x, y} only once 2019-09-02 11:40:21 -04:00
Alex Yatskov
3c9f7ba152
Merge pull request #196 from toasted-nutbread/vertical-text-popup-position
Vertical text popup position
2019-09-02 08:33:10 -07:00
Alex Yatskov
037363e3a7
Merge pull request #197 from toasted-nutbread/imposter-improvements
Imposter element improvements
2019-09-02 08:30:19 -07:00
toasted-nutbread
e812e76e93 Update deinflect.json 2019-09-01 22:14:32 -04:00
toasted-nutbread
e3d7ec8db7 Create container for imposter element
The container will prevent the imposter element's size from affecting the document's primary scrollbars.
2019-09-01 16:06:22 -04:00
toasted-nutbread
e3e7dad2cc Use important CSS priority for imposter element styles 2019-08-31 15:30:32 -04:00
toasted-nutbread
9b46fe70de Fix imposter issues with <input type="text"> 2019-08-31 15:10:46 -04:00
toasted-nutbread
ad0dca7bb1 Make the imposter element tracked using TextSourceRange 2019-08-31 14:57:50 -04:00
toasted-nutbread
e47e041217 Disable pointer events on hidden imposter 2019-08-31 14:57:50 -04:00
toasted-nutbread
62d66d93f7 Remove rounding 2019-08-31 14:57:50 -04:00
toasted-nutbread
9e9040178d Fix some size and positioning issues related to imposter element 2019-08-31 14:57:49 -04:00
toasted-nutbread
707d2569cc Group options onto the same line 2019-08-31 12:04:32 -04:00
toasted-nutbread
85472d9407 Add option for position of popup for horizontal text 2019-08-31 11:57:09 -04:00
toasted-nutbread
68af0d86c3 Improve popup position for vertical text 2019-08-31 11:57:07 -04:00
Alex Yatskov
3bf8a9ab00
Merge pull request #193 from toasted-nutbread/fix-is-point-in-range
Update isPointInRange to be more accurate
2019-08-29 18:00:36 -07:00
toasted-nutbread
7ba71de5e7 Replace double quotes with single quotes 2019-08-29 20:45:07 -04:00
toasted-nutbread
ea9c5ad867 Update isPointInRange to be more accurate 2019-08-29 20:35:23 -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
toasted-nutbread
c49f3c7838 Suppress messages about unchecked runtime.lastError on Firefox Mobile 2019-08-25 11:09:10 -04:00
toasted-nutbread
a50ce724eb Suppress messages about unchecked runtime.lastError 2019-08-23 15:41:41 -04:00
6c3671b3d9 version bump 2019-08-19 19:40:33 -07:00
b1ed90920d Merge branch 'stable' 2019-08-19 19:39:54 -07:00
b7e3ded74e version bump 2019-08-19 19:33:30 -07:00
siikamiika
39b2456ce9 fix off by one error 2019-08-19 19:47:45 +03:00
1d6eb1c3d9 version bump 2019-08-18 12:29:14 -07:00
521aeee2bc fix manifest to contain proper values for stable version of yomichan 2019-08-17 16:01:54 -07:00
317a7a1538 pr fixes 2019-08-17 15:42:36 -07: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
Alex Yatskov
1d25c8a744
Merge pull request #175 from toasted-nutbread/touch-move-warning-fix
Don't process touchmove events if they can't be canceled
2019-08-17 09:04:23 -07:00
Alex Yatskov
778d1d6e79
Merge pull request #177 from toasted-nutbread/doc-range-from-point-improvements
Doc range from point improvements
2019-08-17 09:04:05 -07:00
toasted-nutbread
c22f8252b9 Handle case where docRangeFromPoint returns null 2019-08-16 17:44:35 -04:00
toasted-nutbread
2edd4183a0 Clean up docRangeFromPoint
Use a cached value for checking if the browser is Firefox.
Only validate and set up document.caretRangeFromPoint once.
Use switch for multiple comparisons on the same value.
2019-08-16 17:44:16 -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
siikamiika
609dbf6a81 ensure that content is iterable 2019-08-15 15:35:23 +03:00
siikamiika
0a9b673e27 reimplement ignored chars inside source.js only 2019-08-15 15:28:30 +03:00
siikamiika
658e5ddff1 ignore zero-width non-joiner
fixes #179
2019-08-14 22:54:42 +03: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
toasted-nutbread
710ffb88fc Don't scan when touching the current selection 2019-08-09 21:45:29 -04:00
toasted-nutbread
70e9f4922b Don't process touchmove events if they can't be canceled
If the event cannot be canceled, the browser will continue to scroll while looking up results, which makes it very difficult to control where the lookup cursor is. Chrome also logs error messages that this is invalid.
2019-08-09 21:38:52 -04:00
e23d4b9a82 version bump 2019-08-04 09:58:38 -07:00
Alex Yatskov
4fd7eeff3e
Merge pull request #174 from siikamiika/fix-firefox-scanning-start-of-line
fix scanning start of line on Firefox
2019-08-03 19:55:26 -07:00
siikamiika
cfb5f0b9e1 fix scanning start of line on Firefox
On many sites, for example Twitter (posts), Yomichan doesn't match any
text from the beginning of the line unless you move the mouse cursor to
the top left corner of the word that starts from the beginning of the
line.

Apparently there were some problems related to the imposter and there
was commit 0cc5566 adding a fix for it, but this seemed to cause
problems and 542cdb2 was added to fix that. It didn't handle all of the
cases, though, so this commit is letting everything through on Firefox.
2019-08-04 01:52:27 +03:00
siikamiika
bf92430ea7 Merge branch 'master' into search-terms-from-terms 2019-08-03 22:18:53 +03: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
1a37342aa0 add doc scripts to search too 2019-08-03 15:09:51 +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
a343fa589e Revert "update supported browser versions for ES6 modules"
This reverts commit 52f9a8f736.
2019-08-03 14:56:45 +03:00
siikamiika
52f9a8f736 update supported browser versions for ES6 modules 2019-08-03 11:52:56 +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
siikamiika
c08bcd7c56 return focus to site after hiding popup 2019-08-01 00:25:31 +03:00
toasted-nutbread
ad897713e6 Add support for custom popup CSS 2019-07-09 18:06:27 -04:00
8b8482d255 version bump 2019-07-01 19:04:23 -07:00
13c48a3980 Merge branch 'testing' of https://github.com/FooSoft/yomichan 2019-06-28 12:20:11 -07:00
Alex Yatskov
672eb55a20
Merge pull request #164 from toasted-nutbread/document-range-fix
Fix docRangeFromPoint sometimes not returning results
2019-06-26 14:17:52 -07:00
toasted-nutbread
2974b592ab Allow popup window to be visible in fullscreen mode
Fixes #163
2019-06-22 23:01:49 -04:00
toasted-nutbread
542cdb2df9 Fix docRangeFromPoint sometimes not returning results
If range.getClientRects() has more than 1 result, it is possible that nothing will be returned even when hovering over a valid target.
2019-06-22 21:42:35 -04:00
ca6c732364 Updating ID again for Mozilla 2019-05-19 18:52:08 -07:00
fe4f7b3a82 Create new ID for Mozilla Developer Hub 2019-05-19 18:09:40 -07:00
4f880e0cee Add testing variant 2019-05-19 17:51:31 -07:00
c8be68e205 Version bump 2019-05-19 17:48:58 -07:00
Alex Yatskov
84b990cd80
Merge pull request #140 from KarboniteKream/horizontal-offset
Add horizontal popup offset
2019-05-19 17:43:31 -07:00
toasted-nutbread
f2a5d50959 Database changes automatically update storage stats 2019-05-04 13:02:56 -04:00
toasted-nutbread
d96d4b0658 Passively handle database errors 2019-05-04 13:02:56 -04:00
toasted-nutbread
2328d61a81 Add storage information to settings page 2019-05-04 13:02:56 -04:00
toasted-nutbread
884be644ec Make error loging unintrusive
This alert can show up under normal use circumstances on mobile
2019-05-04 13:02:56 -04:00
toasted-nutbread
c933a55b81 Handle messages with unexpected response format
The response parameter can be undefined
2019-05-04 13:02:56 -04:00
toasted-nutbread
769dc205fb Make extension badge and onCommand optional 2019-05-04 13:02:56 -04:00
toasted-nutbread
d49cbf12ea Add search link and padding to settings page links
This makes the bottom links easier to touch and makes the search page easier to access when there is no extension badge
2019-05-04 13:02:56 -04:00
toasted-nutbread
c7fd17183d Add meta viewport tag to all html pages 2019-05-04 13:02:56 -04:00
Alex Yatskov
c7f8d0874a
Merge pull request #157 from toasted-nutbread/touch-input
Add support for touch input
2019-03-07 11:31:06 -08:00
toasted-nutbread
0b8ae6c53a Update frontend.js 2019-02-20 22:05:07 -05:00
toasted-nutbread
dd52a1c01a Improve handling of null values from caretRangeFromPoint 2019-02-20 21:47:31 -05:00
toasted-nutbread
ee5e47251e Rename normalizeAudioUrl to audioUrlNormalize 2019-02-20 21:16:40 -05:00
toasted-nutbread
b58b91d3fc Fix audio URLs 2019-02-16 22:34:00 -05:00
toasted-nutbread
ba972d8547 Add popup display mode
Allows the popup to be stretched to the full width of the screen, anchored to the top or bottom of the window.
2019-02-14 21:42:59 -05:00
toasted-nutbread
01f611d189 Add support for touch input 2019-02-10 20:44:16 -05:00
toasted-nutbread
7ac7f55436 Use "options_ui" in manifest 2018-12-10 17:23:53 -05:00
toasted-nutbread
33ec369eff Catch exceptions thrown by range.getClientRects()
Firefox dev 65 was throwing an exception
2018-12-10 17:09:06 -05:00
Klemen Košir
99a231a773 Add horizontal popup offset 2018-10-02 23:27:59 +09:00
39cf302eef Merge branch 'master' of https://github.com/FooSoft/yomichan 2018-06-22 19:02:01 -07:00
Gareth Parker
0cc5566886
Fixes for imposter element and range y position
Hides the imposter element once we've finished using it and checks the y position for the range against the point given
2018-06-08 22:48:26 +01:00
68cdd7d85b Merge branch 'dev' 2018-03-12 13:04:37 -07:00
f659702ba2 workaround chrome options breakage 2018-03-12 13:04:08 -07:00
guidocella
15b93060c7 Add option to play audio automatically 2017-12-16 19:56:53 +01:00
siikamiika
1682850970 merged mode: expand termTags earlier
Fixes errors with main dictionary other than JMdict
2017-11-09 17:25:28 +02:00
5f6830c7dd fixing broken anki template 2017-11-08 17:18:16 -08:00
siikamiika
0c3e10a822 merged mode: remove whitespace between expressions 2017-11-06 04:38:01 +02:00
dcef7ce377 version bump 2017-11-04 08:18:26 -07:00
fd1f448ab6 update settings page 2017-10-29 12:22:21 -07:00
c08dc6e00a add dictionary update nag screen 2017-10-29 12:20:56 -07:00
d6603fd031 include sequence property in header data 2017-10-29 10:59:50 -07:00
c62cc01642 simplify database interface 2017-10-29 10:42:39 -07:00
7d29e5b533 cleanup of settings page 2017-10-29 10:18:15 -07:00
0b602925ab cleanup 2017-10-28 08:11:33 -07:00
Alex Yatskov
25ae2e475a Merge pull request #95 from siikamiika/feature-merge-similar-results
Feature: result grouping by main dictionary sequence (along with some other changes)
2017-10-26 09:58:32 -07:00
siikamiika
ab1e2b3d5d settings: move main dictionary below Dictionaries, styling 2017-10-26 10:31:59 +03:00
siikamiika
e063a315d4 settings: add missing const 2017-10-26 10:20:48 +03:00
siikamiika
de28190f5a merged mode: restore whitespace between frequencies 2017-10-26 10:18:28 +03:00
siikamiika
ee80fa5331 merged mode: restore whitespace between termTags 2017-10-25 00:58:11 +03:00
siikamiika
f828043838 terms.html: fix whitespace issues in merged mode 2017-10-24 23:50:33 +03:00