Commit Graph

1946 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
toasted-nutbread
443d6d1956
Popup action bar options (#1140)
* Add options for action bar visibility and location

* Add settings

* Update styles

* Expose properties

* Update styles

* Update tests
2020-12-19 20:07:55 -05:00
toasted-nutbread
af9b4d2b93
Update termTags for termGrouped mode to include all definition tags (#1138)
* Update termTags for termGrouped mode to include all definition tags

* Update tests
2020-12-19 16:47:32 -05:00
toasted-nutbread
1b1b24ab35
Entry indicator update (#1134)
* Move entry current indicator rules

* Simplify rules

* Add popupCurrentIndicatorMode option

* Add option to settings page

* Expose popupCurrentIndicatorMode

* Restore asterisk current indicator

* Implement dot

* Update action button vars

* Fix tests

* Add none option

* Add triangle option
2020-12-19 15:42:44 -05:00
toasted-nutbread
2fa9b91515
Add support for using declarativeNetRequest (#1127) 2020-12-18 17:18:00 -05:00
toasted-nutbread
05d4049f16
DOMParser replacement (#561)
* Add script to build library files

* Add built parse5 library

* Add new SimpleDOMParser which uses parse5

* Update license info

* Update MV3 build to use the new SimpleDOMParser

* Update file exclusions

* Hide/clarify license info for MV2 builds
2020-12-18 17:06:30 -05:00
toasted-nutbread
9beb659b17
Manifest version CSS rules (#1126)
* Add CSS rules for hiding content based on manifest version

* Organize other rules
2020-12-18 17:00:34 -05:00
toasted-nutbread
51223abfa6
Set up initial manifest v3 support (#605) 2020-12-18 15:54:05 -05:00
toasted-nutbread
5d8ac70395
Display an indication when Anki field order/existence doesn't match (#1119) 2020-12-18 12:05:33 -05:00
toasted-nutbread
c728448a4d
Maximum clipboard search length (#1118)
* Add maximumClipboardSearchLength an option

* Add setting

* Add limits

* Update tests
2020-12-18 11:24:43 -05:00
toasted-nutbread
bf34905012
Improve display tags (#1117)
* Update tag style

* Add styles/HTML for notifications

* Add DisplayNotification class

* Add support for tag notifications

* Simplify notification content
2020-12-18 09:43:54 -05:00
toasted-nutbread
c3e772fadc
Include permissions info in backup files (#1116) 2020-12-16 22:26:19 -05:00
toasted-nutbread
26dd0270d9
Create function to create a new DOM parser (#1114) 2020-12-14 23:05:04 -05:00
toasted-nutbread
7926821c48
Rename SimpleDOMParser to NativeSimpleDOMParser (#1113) 2020-12-14 22:56:38 -05:00
toasted-nutbread
e29c752793
Simplify URL normalization (#1112) 2020-12-14 22:39:03 -05:00
toasted-nutbread
96e68be0fa
Refactor tab creation to improve errors (#1110) 2020-12-13 16:09:11 -05:00
toasted-nutbread
dabe5fa899
Update info (#1108)
* Show language

* Show extension manifest name + version
2020-12-13 12:46:36 -05:00
toasted-nutbread
14b9e0621b
Updated welcome page (#1107)
* Make storage controller optional

* Make more elements optional

* Update styles

* Create new welcome page

* Update URL for welcome guide

* Remove old guide

* Fix unused global
2020-12-13 12:32:43 -05:00
toasted-nutbread
5d2edda753
Fix storage stats update error during dictionary deletion (#1106) 2020-12-13 11:29:32 -05:00
toasted-nutbread
5948229176
Add info page (#1102)
* Add api.getAnkiConnectVersion

* Enable basic functionality when certain features/elements aren't present

* Add info page

* Update information links

* Update info link on the settings v2 page
2020-12-12 14:57:24 -05:00
toasted-nutbread
92cfd31c0f
Fix global declarations check (#1101)
* Fix getSubstringCount not properly checking word boundaries

* Remove unused global declarations
2020-12-12 14:47:17 -05:00
toasted-nutbread
cb0699ecd4
Add initialization script for generic internal pages (#1099) 2020-12-12 12:38:21 -05:00
toasted-nutbread
e9027457ab
Add permissions page and documentation (#1098) 2020-12-12 12:35:56 -05:00
toasted-nutbread
ddb71af6bd
Add zuru deinflections (#1091)
* Update deinflector rule types

* Add deinflection rules for zuru verbs

* Add tests
2020-12-12 10:17:25 -05:00
toasted-nutbread
8192fdd63c
Update style of legal.html to match settings v2 (#1092) 2020-12-10 17:53:26 -05:00
toasted-nutbread
df9436bc3e
Add classic suru deinflections (#1089)
* Add classic suru deinflections

* Add tests
2020-12-08 22:39:06 -05:00
toasted-nutbread
2be81cbb77
Update/test deinflector (#1087)
* Update formatting

* Add missing rule for progressive/perfect

* Add adnomial -ki rule

* Update rules for irregular verbs

* Organize rules by rulesOut

For the most part, the order is:
  adj-i => v1 => v5 => vs => vk => other

* Add tests
2020-12-08 20:29:42 -05:00
toasted-nutbread
2910685a96
Database test updates (#1086)
* Remove unused

* Create DatabaseVM

* Update sequences in test dictionary

* Update documentation

* Add second valid testing dictionary

* Set up translator tests

* Write expected data
2020-12-08 20:27:36 -05:00
toasted-nutbread
35fbc76df4
Settings v2 testing setup (#1084)
* Add option for using settings v2

* Add options/info about settings v2

* Use settings v2 URL when applicable

* Update tests
2020-12-06 21:17:05 -05:00
toasted-nutbread
88b8191ac2
Settings page v2 (#606)
* Initial setup of settings page v2

* Add security options

* Add layout-aware scanning option

* Fix style

* Set up simple setting bindings

* Convert colors to variables

* Refactor, remove unused

* Set up variables for some size values

* Mark expandable entries with a pointer cursor

* Add scroll top link

* Update sidebar styles

* Update icon button styles

* Fix padding when settings are wrapped

* Update shadow styles

* Use animation timings

* Add support for being able to open the sidebar on small-screen/mobile devices

* Update styles and preview sidebar

* Add ability to expand the preview sidebar

* Scroll to initial target only after advanced setting is set

* Fix rebase issues

* Update z-index of modal

* Use Modal for testing

* Set up modal controller

* Update button styles

* Update modal design

* Update styling of multi-part inputs

* Fix button styles

* Create SettingsDisplayController

* Update scanning inputs

* Use nested option

* Update animation timings

* Update modals to be display:none when not open

* Update included scripts

* Move modal link/input control to SettingsDisplayController

* Simplify event handlers

* Add audio sources options modal

* Allow certain nodes to be selected on click

* Implement top link

* Add environment-specific display styles

* Implement storage info

* Update modal controller

* Remove TODO

* Remove unnecessary <br>

* Add primary dictionary option under result grouping option

* Simplify transform

* Update styles for short inputs

* Add toggleable status footer

* Update modal styles

* Fix more-toggle elements sometimes affecting wrong targets

* Add selector-observer.js reference

* Add support for dynamically-generated more-toggle elements

* Rename result grouping modes and add descriptions

* Update icon button style

* Add a no-more-only class

* Use absolute URLs

* Add kebab-menu icon button

* Update text styles

* Add disabled styles

* Update toggle styles to support default pointer when disabled

* Update modal.js reference

* Disable box shadow for disabled buttons

* Add support for menus, use menus for audio source removal

* Disable pointer events when a modal is closing

* Update the escape key to close menus before closing modals

* Add support for dictionary modals

* Remove debug log

* Remove redundant spinner

* Update nested option visibility

* Add support for import/export/reset

* Update URL

* Reorganize

* Add comments

* Fix toggle highlight not working

* Add radio style

* Fix dictionary separator line

* Add mouse icon

* Add support for an icon button container with input height

* Update profile selects

* Add support for editing profiles and profile conditions

* Enable overflow scrolling for popup menus

* Add support for input suffix buttons

* Style updates

* Implement Anki card controls

* Improve dictionary information

* Punctuation

* Add support for Anki card templates

* Add support for using the tab key

* Add support for custom CSS modal

* Add support for simple scanning inputs

* Simplify

* Don't exit modals/menus when pressing escape while an input is focused

* Add checkbox styles

* Set up advanced scanning inpugs

* Reorganize

* Add outer theme option

* Add controller for nested popups

* Update scannings inputs

* Set up settings for touch/pen inputs

* Add modal for input prevention

* Update label styles

* Options updates

* Update duplicate scope options

* Only show quality when format is JPEG

* Add auto-scaling options

* Update navigation options

* Rearrange options

* Fix icon

* Add group for popup-size

* Update styles for inputs

* Update description

* Update appearance of checkboxes, toggles, and radios

* Add more advanced popup options

* Add debug option

* Add pitch accent display options

* Update input fields

* Add conjugation

* Update guide link

* Update and simplify primary/secondary dictionaries

* Update link

* Un-nest a setting

* Update wordings

* Use consistent styling for lists

* Fix custom CSS modal fade affecting the layout

* Fix z-index of the top link

* Disable word wrap on some text

* Disable highlight color

* Update FAB positioning and sizing

* Update button spacing

* Remove preview frame controller code

* Remove welcome.html

* Update seconds units

* Use all appearance styles

* Add option for anki.checkForDuplicates

* Rearrange options

* Fix redundant margin assignment

* Move scanning.enableOnSearchPage option such that it is not nested

* Organize/update options
2020-12-06 20:37:19 -05:00
toasted-nutbread
ae9a20e0de
Json schema improvements (#1078)
* Test multipleOf

* Refactor defaulting

* Use default if invalid for non-object/array properties

* Add tests
2020-11-30 18:56:28 -05:00
toasted-nutbread
34451ebf71
JapaneseUtil normalization (#1076)
* Use JapaneseUtil as a class which is manually instantiated

* Use alias function for toKana
2020-11-29 13:09:02 -05:00
toasted-nutbread
a8cd03cbec
Fix outer CSS being incorrectly injected (#1075) 2020-11-29 12:00:41 -05:00
toasted-nutbread
008ffdb6bf
Frequencies marker (#1074)
* Update japanese.js tests

* Simplify fallback/early exit

* Add overloads to furigana and furiganaPlain handlebars helper functions

* Expose unique expression/reading arrays (and subsequently counts)

* Add {frequencies} marker
2020-11-28 14:30:50 -05:00
toasted-nutbread
94d63f4f87
Display style updates (#1072)
* Add variables for tag styles

* Add variable for compact list separator

* Improve compactness of pitch accents

* Improve kanji link styles

* Improve coloring for lists

* Move styles

* Update styles for lists

* Move conditional styles

* Simplify definitions

* Remove unused styles

* Cleanup

* Use strings for dataset properties

* Don't always collapse pitch accents
2020-11-27 15:22:06 -05:00
toasted-nutbread
8449322e1c
Fix kanji note creation (#1069)
* Fix kanji note creation

* Move try/catch for consistency

* Move audio normalization
2020-11-26 22:53:58 -05:00
toasted-nutbread
3f7c76dbc7
Yomichan popup styles refactor (#1067)
* Rename classes yomichan-float to yomichan-popup

* Use attributes instead of classes

* Refactor

* Update popup outer scaling

* Update outer theme usage

* Move client.css to popup-outer.css in /mixed
2020-11-26 14:13:53 -05:00
toasted-nutbread
92e9f69c80
Popup style updates (#1066)
* Replace compactGlossaries option with new glossaryLayoutMode option

* Update attributes

* Update attributes

* Update color definitions

* Fix default theme scrollbar
2020-11-25 23:22:05 -05:00
toasted-nutbread
496af0b5f2
Fix incorrect frequency field being used (#1059) 2020-11-24 11:55:25 -05:00
toasted-nutbread
de299c64ae
Display updates (#1057)
* Fix history assignment on the search page

* Use clear instead of assigned

* Simplify definitions assignment

* Organize

* Fix query not being cleared

* Fix media loading

* Fix potential issue with options not being assigned

* Catch error when frameId is null, causing infinite loop

* Fix frontend construction parameters
2020-11-24 11:54:08 -05:00
toasted-nutbread
068b1eef71
Text scanner improvements (#1056)
* Only ignore nodes on non-web pages

* Fix issue where options might not be assigned on nested frontends

* Refactor default TextScanner options

* Add option to enable search only on click

* Simplify restore state assignment

* Update options context passing

* Fix empty title

* Use TextScanner to scan content inside of Display

* Rename ignoreNodes to excludeSelector(s)

* Fix options update incorrectly triggering a re-search

* Fix copy throwing an error on the search page

* Replace _onSearchQueryUpdated with _search

* Use include selector instead of exclude selector
2020-11-23 20:31:48 -05:00
toasted-nutbread
01ff7436ee
Popup setup refactoring (#1054)
* Pass childrenSupported as a parameter to Frontend/Popup constructors

* Remove setChildrenSupported

* Use event listener instead of function override

* Update options order

* Expand options and use object for clarity

* Fix childrenSupported not being fully propagated
2020-11-23 15:23:47 -05:00
toasted-nutbread
2971f262f9
Merge float into display (#1053)
* Update audio play delay

* Move frame endpoint to Display

* Move _invokeOwner and close implementation

* Move browser info assignment

* Move window message handler setup

* Move copy implementation

* Move document title function

* Move extension unload handler

* Move close handler

* Move history event handlers

* Remove DisplayFloat

* Remove unused

* Organize

* Move event listeners into prepare
2020-11-22 15:29:51 -05:00
toasted-nutbread
7234cce4ae
Refactor nested popup/frontend setup (#1052) 2020-11-22 11:19:21 -05:00
toasted-nutbread
7b6a4c4e36
More display updates (#1050)
* Use grid for layout

* Add data-count attribute

* Fix scroll issues during focus

* Add index to entries

* Simplify audio playback
2020-11-21 21:17:39 -05:00
toasted-nutbread
73cb2c763c
Update indentation (#1047) 2020-11-20 22:57:14 -05:00
toasted-nutbread
181ade93d6
Display scroll fixes (#1046)
* Update focus when internal focus is changed

* Update scroll layout
2020-11-20 22:42:49 -05:00
toasted-nutbread
1216926fbd
Hide profile button if only one profile exists (#1045) 2020-11-19 18:49:30 -05:00
toasted-nutbread
e5255a03e6
Context popup improvements (#1039)
* Refactor context-main.js

* Simplify tags

* Use flex layout

* Use image masks for icons, update styles

* Remove old classes

* Add profile button

* Add support for profile selection

* Add title

* Swap the options and search link order

* Fix title
2020-11-19 18:37:02 -05:00
toasted-nutbread
1588f6210c
Display and query parser layout (#1043)
* Update query parser text assignment

* Update how padding is used

* Hide query parser container by default
2020-11-18 20:15:30 -05:00
toasted-nutbread
e9075e24e1
Update progress indicator styles (#1042) 2020-11-18 20:06:02 -05:00
toasted-nutbread
a48ac37815
Use an overridable property to control progress indicator visibility (#1041) 2020-11-17 19:40:19 -05:00
toasted-nutbread
ea7b8621c3
Update layout to have better sizing properties (#1040) 2020-11-16 20:41:12 -05:00
toasted-nutbread
37ea7e2c9a
Add support for dark theme scrollbar colors (#1038) 2020-11-15 14:39:37 -05:00
toasted-nutbread
e4f28b31ce
Move "Enable native popups" option and make advanced (#1037) 2020-11-15 14:16:11 -05:00
toasted-nutbread
d66a5e3b87
Fix settings resetting not initializing dictionary settings properly (#1036) 2020-11-15 14:14:52 -05:00
toasted-nutbread
4b1c7b1e26
Display layout updates (#1032)
* Fix display scroll not always using the right position

* Update display layout and scroll method

* Fix border size
2020-11-14 18:12:06 -05:00
toasted-nutbread
af16643f35
Display styles update (#1030)
* Make section comments into single line comments

* Update :before/:after to be ::before/::after

* Organize and compact CSS

* Remove obsolete style

* Add padding var

* Use calc and var for layout units and common values

* Update search page styles
2020-11-14 15:23:20 -05:00
toasted-nutbread
50a1fbfb9f
Display updates (#1029)
* Simplify expression creation

* Add attribute indicating whether the reading is the same or not

* Update kanji debug info

* Remove some unnecessary null checks

* Simplify iterable check

* Update float and search HTML to be more consistent
2020-11-14 13:42:50 -05:00
toasted-nutbread
112f08a13e
Fix term details not using the expanded tags (#1028) 2020-11-14 12:09:14 -05:00
toasted-nutbread
20f3d09aa4
Clear cached definition when rendering a template (#1022) 2020-11-12 20:35:11 -05:00
toasted-nutbread
ec021964b7
Compact tags refactor (#1021)
* Update translator to flag redundant tags instead of remove

* Update how compact tags are shown in the popup

* Pass compactTags option to note builder

* Update options templates

* Add options upgrade

* Add options upgrade test
2020-11-12 20:34:11 -05:00
toasted-nutbread
eb8069a494
Options context updates (#1017)
* Update event order

* Update inputs

* Add type and cause to input info

* Update input info args

* Simplify arguments

* Update argument name

* Change order
2020-11-08 22:55:43 -05:00
toasted-nutbread
3a23f081d1
Frontend options override refactor (#1016)
* Update how options context overriding works

* Make function private
2020-11-08 22:49:40 -05:00