Commit Graph

2866 Commits

Author SHA1 Message Date
toasted-nutbread
de5d3ec3ad
Remove _onMessage (#1265) 2021-01-17 18:43:16 -05:00
toasted-nutbread
04d53e5642
Optimize hotkey registration (#1264) 2021-01-17 17:05:06 -05:00
toasted-nutbread
14b4aee07d
Hotkey forwarding support (#1263)
* Add support for allowing HotkeyHandler to forward hotkeys

* Update hotkey registration

* Pass HotkeyHandler instance into Display* constructor

* Implement hotkey forwarding
2021-01-17 16:55:45 -05:00
toasted-nutbread
be590004fe
Text scanner improvements (#1261)
* Add support for allowing TextScanner.search to force focus

* Simplify query parser searched event forwarding

* Defer fallback creation

* Simplify event listeners

* Change type to pointerType

* Change cause to eventType

* Change empty to passive; make .search function passive

* Remove unused input index
2021-01-17 11:43:05 -05:00
toasted-nutbread
5d9d96996e
Optimize hotkey handler to not hook any events if cannot do anything (#1260) 2021-01-16 23:07:21 -05:00
toasted-nutbread
a39eede04b
If scopes are now empty but weren't previously, add all valid scopes (#1259) 2021-01-16 22:37:58 -05:00
toasted-nutbread
86e4e53372
Update keyboard shortcut controller (#1258)
* Change attribute

* Update hidden style

* Hide scope checkboxes when they are not supported for that action
2021-01-16 22:31:30 -05:00
toasted-nutbread
30ce81b36c
Update TextScanner.search to return the event details object (#1257) 2021-01-16 21:53:52 -05:00
toasted-nutbread
0cbbe48694
Add check to ignore hotkey registrations with null key (#1256) 2021-01-16 21:52:32 -05:00
toasted-nutbread
5c57015a79
TextSource* API update (#1255)
* Add collapse function to TextSource*

* Add isConnected getter to TextSource*
2021-01-16 21:50:50 -05:00
toasted-nutbread
d89f23261c
Update default settings page (#1254)
* Update settings v2 to be the default for existing users

* Update information on the old settings page

* Update information on the new settings page

* Update tests
2021-01-16 16:55:40 -05:00
toasted-nutbread
bd89c92c37
Clarify Anki card type dropdown (#1253) 2021-01-16 16:24:06 -05:00
toasted-nutbread
b560019af4
Shorten options upgrade list (#1252) 2021-01-16 15:35:21 -05:00
toasted-nutbread
b234294540
Stroke count marker (#1251)
* Add stroke-count definition

* Update options

* Update documentation

* Add helper
2021-01-16 15:29:42 -05:00
toasted-nutbread
0ac3577119
Refactor hotkey handling (#1250)
* Create HotkeyHandler

* Update Display to use HotkeyHandler
2021-01-16 14:54:35 -05:00
toasted-nutbread
f7c3b0010c
Update extension shortcuts (#1246)
* Update commands

* Add command to open the popup window
2021-01-16 11:33:34 -05:00
toasted-nutbread
8766744aa4
Popup window options (#1245)
* Add popupWindow options

* Add toBoolean converter

* Add settings

* Use new options

* Add test link

* Fix window state not working

* Make the window section advanced only
2021-01-16 10:22:24 -05:00
toasted-nutbread
dc4d659184
Update hotkey issues (#1244)
* Scroll to the bottom when adding inputs

* Skip if empty action
2021-01-15 21:19:22 -05:00
toasted-nutbread
1c5e53a7ac
Add hotkeys to change dictionary (#1243)
* Add nextEntryDifferentDictionary and previousEntryDifferentDictionary hotkeys

* Update settings
2021-01-15 21:11:09 -05:00
toasted-nutbread
0a1664ba29
Separate close hotkey (#1242)
* Add focusSearchBox hotkey

* Update close hotkey action

* Update hotkeys
2021-01-15 20:19:56 -05:00
toasted-nutbread
9f202313c7
Fix note context on settings page (#1241) 2021-01-15 17:30:43 -05:00
toasted-nutbread
1dcfbf6ba6
Support suspending new anki cards (#1240)
* Add new option: anki.suspendNewCards

* Update Anki APIs

* Suspend card based on options

* Add setting

* Disable wrap for toggle property
2021-01-14 22:42:11 -05:00
toasted-nutbread
d9f5d21d15
Fix profile conditions issues (#1239)
* Add an event for when the number of profile conditions changes

* Update count

* Fix stale data being used

* Add "Remove group" option
2021-01-14 22:01:01 -05:00
toasted-nutbread
29b6c98e9f
Clarify some settings descriptions (#1238)
* Clarify the meaning of the 'None' option; rename to 'No key'

* Clarify Auto-hide search popup

* Clarify Scan delay

* Move Support inputs for devices with touch screens; make advanced
2021-01-14 21:33:41 -05:00
toasted-nutbread
a97fbcde83
Add reset input to profile condition (#1237)
* Add _setType and _setOperator

* Add reset value menu option
2021-01-14 21:18:22 -05:00
toasted-nutbread
84d3af0f8d
Hotkeys (#1236)
* Set up hotkey inputs

* Improve key display

* Add setInput

* Add KeyboardShortcutController

* Update how display handles hotkeys
2021-01-14 20:56:18 -05:00
toasted-nutbread
39741bf1d2
Convert getDefaultOptions to a utility function (#1235) 2021-01-14 19:14:29 -05:00
toasted-nutbread
c1e4741f22
Use code instead of key (#1234)
* Update KeyboardMouseInputField to use .code instead of .key

* Update Display to use .code instead of .key

* Remove unused function
2021-01-14 19:08:05 -05:00
toasted-nutbread
33aeae4110
Search key handling refactor (#1233)
* Move super invocation

* Move active element check

* Simplify key handling

* Remove unused
2021-01-14 18:30:16 -05:00
toasted-nutbread
351d9b2e8e
Update KeyboardMouseInputField (#1232)
* Assign missing type

* Update KeyboardMouseInputField to use an array instead of a string

* Use "modifiers" instead of "value" or "inputs"

* Simplify

* Add support for using keys

* Use bool args instead of a string
2021-01-14 17:54:09 -05:00
toasted-nutbread
5ae3acf6ff
Anki note data abstraction (#1228)
* Create AnkiNoteData

* Create AnkiNoteDataDefinitionProxyHandler

* Update media injection

* Create AnkiNoteDataDefinitionSecondaryProperties

* Update note context format

* Expose url and cloze on definition

* Simplify for understandability

* Remove unused _createNoteData

* Update public object

* Remove trims on sentence, since it should already be trimmed

* Fix unused global
2021-01-12 22:47:07 -05:00
toasted-nutbread
b7c9fa1057
Refactor note document title (#1227)
* Pass url into setContent

* Update where url is checked from

* Add documentTitle to state information

* Update how _getNoteContext gets the document title

* Update how url is fetched for options context

* Pass document title in to 'searched' event
2021-01-12 18:04:26 -05:00
toasted-nutbread
983e2c7936
Refactor text scanner options context generation (#1225)
* Refactor how options context is created and updated

* Udpate TextScanner/QueryParser to use getSearchContext instead of getOptionsContext
2021-01-11 23:13:35 -05:00
toasted-nutbread
5e87a490f7
Refactor display anki functions (#1224)
* Refactor note adding/viewing functions

* Move _addDefinition

* Update where anki field templates are assigned

* Update _createNote to not include options/templates arguments

* Simplify getAnkiNoteInfo to not require duplicateScope
2021-01-11 18:37:07 -05:00
toasted-nutbread
4ed9493645
Refactor anki note building (#1223)
* Move TemplateRendererProxy creation into AnkiNoteBuilder

* Simplify _stringReplaceAsync

* Organize note generation

* Rename API

* Make the template rendering function more generic
2021-01-10 19:28:50 -05:00
toasted-nutbread
25080ac82e
Change popupActionBarLocation to top (#1222) 2021-01-10 16:49:40 -05:00
toasted-nutbread
7f07b905ab
Update how navigation sidebar visibility is controlled (#1221) 2021-01-10 16:48:31 -05:00
toasted-nutbread
1614335bb0
Fix profile panel not being able to be closed due to hidden sidebar (#1220) 2021-01-10 16:06:00 -05:00
toasted-nutbread
b1ce650aa7
Fix typo (#1218) 2021-01-10 14:47:22 -05:00
toasted-nutbread
f6a38f40dc
Customizable sentence parsing (#1217)
* Add new sentenceParsing options

* Update TextScanner.setOptions

* Assign terminator/quote maps

* Pass sentence parsing info to extractSentence

* Simplify setting

* Add setting for enableTerminationCharacters

* Create new settings for sentence termination characters
2021-01-10 14:43:06 -05:00
toasted-nutbread
083da93142
Refactor sentence parsing (#1215)
* Rename sentenceExtent with sentenceScanExtent

* Update TextScanner.setOptions

* Change function argument order

* Rename quote map variables

* Fix edge case quote handling

* Update terminator maps to support character inclusion
2021-01-09 23:10:55 -05:00
toasted-nutbread
da1e1e5c5b
Sentence parsing options (#1214)
* Rename options.anki.sentenceExt to options.sentenceParsing.scanExtent

* Create sentence parsing icon

* Create new sentence parsing section
2021-01-09 21:25:04 -05:00
toasted-nutbread
d698911bc9
Refactor sentence scanning (#1213)
* Update tests

* Update extractSentence implementation

* Remove old extractSentence implementation

* Optimize maps/sets
2021-01-09 19:02:51 -05:00
toasted-nutbread
11e9eb2295
Add links to settings v2 headings (#1212) 2021-01-09 16:39:30 -05:00
toasted-nutbread
67d21d4988
Use ruby tag for frequency disambiguation (#1211) 2021-01-09 16:07:47 -05:00
toasted-nutbread
5b58a9aeef
Update term tags display and fix a layout issue (#1208)
* Fix layout issue with term expression display

* Update display of term tags

* Update tag notification to include disambiguation information
2021-01-09 16:02:03 -05:00
toasted-nutbread
06d23f59d8
Improve frequency display (#1209)
* Disable old frequencies

* Update layout

* Implement new frequency display

* Update count info
2021-01-09 10:41:17 -05:00
toasted-nutbread
b20622b2c8
Core refactor (#1207)
* Copy set intersection functions

* Remove unused functions

* Simplify url check

* Remove parseUrl

* Simplify stringReverse

* Remove hasOwn due to infrequent use

* Rename errorToJson/jsonToError to de/serializeError

For clarity on intended use.

* Fix time argument on timeout

* Add missing return value

* Throw an error for unexpected argument values

* Add documentation comments
2021-01-07 21:36:20 -05:00
toasted-nutbread
7d706df66b
Update DictionaryDataUtil to be able to be used in a sandbox frame (#1206) 2021-01-07 20:24:22 -05:00
toasted-nutbread
3760b22a25
Fix AnkiCardController using stale data (#1204) 2021-01-06 18:16:51 -05:00
toasted-nutbread
8c92c1cbc2
Refactor anki note generation (#1202)
* Create _injectAnkiNoteMedia function

* Remove unused code path

* Simplify modeOptions
2021-01-03 19:40:12 -05:00
toasted-nutbread
63971776a5
CSS lint (#1201)
* Use single quotes instead of double

* Install stylelint

* Set up config

* Update package/tests

* Fix lint issues

* Update CSS rules
2021-01-03 15:30:38 -05:00
toasted-nutbread
d50d7a4a3a
Update permissions pages with info about MV3 permissions (#1200) 2021-01-03 15:29:29 -05:00
toasted-nutbread
8e304b83c6
Translator regex replacements (#1199)
* Add support for regex replacements during the translation process

* Allow assignment of textReplacements

* Rename

* Set up test data

* Write expected data

* Set up options

* Prevent infinite loop if regex matches empty string

* Implement setting controller

* Add support for testing pattern replacements
2021-01-03 12:12:55 -05:00
toasted-nutbread
eda8534e19
Group templates near their relevant modal definitions (#1198) 2021-01-02 20:30:11 -05:00
toasted-nutbread
41f6de3e3a
Simplify collapseEmphaticOptions options (#1196) 2021-01-01 23:16:44 -05:00
toasted-nutbread
a02891e52c
Update copyright year (#1194)
* Update copyright year

* Remove redundant Author info
2021-01-01 14:50:41 -05:00
toasted-nutbread
41e8f056cc Update version 2020-12-31 17:42:37 -05:00
toasted-nutbread
f808e6acde
Improve contrast of dark theme tag text color (#1192) 2020-12-31 17:26:10 -05:00
toasted-nutbread
369e4e40f4
Fix kanji selection area being on top of tags (#1191) 2020-12-31 15:07:45 -05:00
toasted-nutbread
155b2b27f6
Fix some issues with the display layout (#1190) 2020-12-31 14:58:48 -05:00
toasted-nutbread
889240311b
Improve tag scanning behaviour (#1189)
* Update include/exclude selectors for Display._definitionTextScanner

* Fix missing condition
2020-12-31 14:21:50 -05:00
toasted-nutbread
1b4ba1fb00
Simplify glossary layout setting (#1188)
* Add conditionalConvert transform

* Convert glossaryLayoutMode option to a toggle
2020-12-31 13:38:51 -05:00
toasted-nutbread
1ac4e979e4
Improve settings transforms (#1187) 2020-12-31 13:10:23 -05:00
toasted-nutbread
6c46afedf7
Fix incorrect body height on pitch accents preview page (#1186) 2020-12-31 11:16:50 -05:00
toasted-nutbread
32f233acfd
Fix display notification close button style (#1185) 2020-12-30 23:00:52 -05:00
toasted-nutbread
4650f0b542
Translator frequency data improvements (#1184)
* Specify if a frequency has a specific reading

* Make frequency data creation more standardized

* Update test data
2020-12-30 15:12:08 -05:00
toasted-nutbread
0f3b9ec7fc
Fix overlay panel animations for different action bar locations (#1183) 2020-12-30 13:49:48 -05:00
toasted-nutbread
9f2da58bfd
Simplify CSS rule (#1182) 2020-12-30 13:35:25 -05:00
toasted-nutbread
a8454568b1
Improve wrapping layout for small resolutions (#1181) 2020-12-30 13:32:41 -05:00
toasted-nutbread
973dfc581a
Improve location of Anki error message (#1180) 2020-12-30 12:39:33 -05:00
toasted-nutbread
4d76356c2b
Add section heading comments (#1179) 2020-12-30 11:42:10 -05:00
toasted-nutbread
ad90bad057
Display profile panel (#1178)
* Expose Display.displayGenerator

* Update search when assigning options context

* Don't clear selection unless the popup changes

* Merge search styles

* Create panel for changing the profile
2020-12-29 23:38:44 -05:00
toasted-nutbread
ae36cccc36
Fix button styles for action bar buttons (#1177)
* Fix button styles for action bar buttons

* Fix button colors
2020-12-29 22:22:56 -05:00
toasted-nutbread
38709e2191
Fix various issues with some styles (#1176) 2020-12-29 21:52:04 -05:00
toasted-nutbread
773d67e75a
Split material css (#1175)
* Separate material styles into a separate file

* Improve action button styles

* Rename --font-size-default to --font-size

* Remove px units

* Remove some material vars

* Fix some variable names

* Define variables

* Remove --shadow-vertical

* Revert name change

* Move var

* Rename var

* Update vars

* Remove redundant vars

* Update search styles

* Update styles

* Update colors

* Update variable names

* Include material.css on float.html page
2020-12-29 21:33:57 -05:00
toasted-nutbread
a23c94fb02
Fix modals not being hidden by default on the welcome page (#1174) 2020-12-29 14:29:24 -05:00
toasted-nutbread
2cd429fdfd
Rename PopupElement to PanelElement; split classes into separate files (#1173) 2020-12-29 00:06:51 -05:00
toasted-nutbread
5c970fc404
Remove top link code (#1172) 2020-12-28 23:06:53 -05:00
toasted-nutbread
524c0b2b20
Improve element hiding (#1171)
* Use multi-line definition for transition

* Update how PopupElement visibility is controlled
2020-12-28 23:00:03 -05:00
toasted-nutbread
cb8015faed
Improve crispness of icons used on settings v2 page (#1170) 2020-12-28 22:57:17 -05:00
toasted-nutbread
49be22210d
Remove "Top" link from settings v2 page (#1169) 2020-12-28 22:55:42 -05:00
toasted-nutbread
7536f1df25
Change global.useSettingsV2 default value to true (#1168) 2020-12-28 22:54:12 -05:00
toasted-nutbread
b6038c87b6
Improve document focus control (#1167)
* Improve styles for #content-scroll-focus

* Create new class to manage and control document focus

* Use new focus class

* Add a check to prevent redundant .blur calls
2020-12-28 17:41:59 -05:00
toasted-nutbread
c03340c4aa
Change popupCurrentIndicatorMode default to triangle (#1161) 2020-12-22 18:22:14 -05:00
toasted-nutbread
d0adf2ca15
Add window settings (#1160)
* Add window icon

* Move some options to a new "Window" section
2020-12-22 18:18:30 -05:00
toasted-nutbread
bb902c76e8
Move scanning options higher up (#1159) 2020-12-22 17:14:47 -05:00
toasted-nutbread
a354becd51
Furigana distribution improvements (#1157)
* Improve furigana when reading kana is not an exact match

* Simplify group structure

* Return consistent type

* Add more tests

* Remove redundant isAmbiguous assignment

* Simplify group usage

* Add helper function

* Optimize returned arrays

* Use variable

* Remove s(p)lice calls

* Reduce number of convertKatakanaToHiragana calls

* Optimize text length access

* Optimize reading substring

* Move segmentize to a separate function

* Use var

* Use _createFuriganaSegment

* Optimize distributeFuriganaInflected
2020-12-22 11:02:19 -05:00
toasted-nutbread
b083e9f08f
Fix missing data-setting target for scanning.enablePopupSearch (#1156) 2020-12-21 19:22:05 -05:00
toasted-nutbread
8203f11e89
Improve settings item button styles (#1155)
* Improve styles for settings-item-button

* Add hover/active styles to settings-item-button

* Use consistent phrasing for setting buttons and include ellipsis
2020-12-21 19:21:03 -05:00
toasted-nutbread
18043babeb
Improve query parser scanning (#1154)
* Improve how the search page updates after settings have changed

* Always update the history on the first scan of the query parser
2020-12-21 19:19:59 -05:00
toasted-nutbread
9dd2a9c98e
Fix Display._definitionTextScanner not ignoring certain elements (#1153) 2020-12-21 19:18:39 -05:00
toasted-nutbread
abc017545c
Update the popup preview to always be visible on the settings v2 page (#1151) 2020-12-20 22:16:38 -05:00
toasted-nutbread
abfe066d7e
Fix description of scanning.autoHideResults setting (#1150) 2020-12-20 22:09:16 -05:00
toasted-nutbread
3ef1b9ebb2
Settings v2 modal size toggle (#1149)
* Add collapse/expand icons

* Update header layout

* Allow size animation

* Add styles for modal header buttons

* Support action buttons

* Update modals to support size changing
2020-12-20 19:59:39 -05:00
toasted-nutbread
8747a29f9f
Settings v2 headings improvements (#1148)
* Improve spacing on h2

* Add icons to headings

* Clarify font-size
2020-12-20 16:03:07 -05:00
toasted-nutbread
f5ae0f1f3d
Settings v2 icon improvements (#1147)
* Update navigation icons

* Improve outline layout, fixing badge indicators

* Change attribute value

* Update icon buttons

* Update settings page
2020-12-20 15:43:10 -05:00
toasted-nutbread
4f6309842f
Dictionary display updates (#1146)
* Display dictionary-list as flex

* Move styles

* Move enabled toggle

* Update details

* Disable sorting based on priority

* Update styles

* Update title color when disabled

* Update display style of secondary search dictionaries
2020-12-20 13:59:30 -05:00
toasted-nutbread
7dd06e1a64
Indicate if first Anki card field is invalid (#1145)
* Add AnkiNoteBuilder.containsAnyMarker

* Flag first field as invalid when there is no marker
2020-12-20 12:20:29 -05:00
toasted-nutbread
113e3b68b8
Improve styles for invalid inputs (#1143) 2020-12-20 11:27:05 -05:00