Commit Graph

1396 Commits

Author SHA1 Message Date
Damien Elmes
0671e7e712 fix mutateNextCardStates being exported into global namespace
https://forums.ankiweb.net/t/v3-custom-scheduler-not-working/12441
2021-08-19 10:21:04 +10:00
hikaru-y
207e4253f1 Use <template> element instead of Range.createContextualFragment()
https://forums.ankiweb.net/t/audio-in-back-template-is-played-on-front-template-on-desktop-2-1-46/12399

Unlike when using <template> element, if a DocumentFragment is created
using Range.createContextualFragment(), <audio>/<video> elements
with `aotoplay` will play immediately even before they are inserted into
the actual document, which will cause audio or video on the answer side
to be played on the question side.
2021-08-18 00:04:02 +09:00
Damien Elmes
c20716660f fix inverted 'skip question when replaying answer' option
I'd intended to add a new string but overlooked it.

https://forums.ankiweb.net/t/bug-always-include-question-side-when-replaying-audio/12273/2
2021-08-15 16:15:14 +10:00
Damien Elmes
5b1c409b19 use alphanumeric keyboard in SpinBoxFloat
https://forums.ankiweb.net/t/error-setting-hard-interval-on-ios/12105/3
2021-08-09 14:15:16 +10:00
Henrik Giesel
73a6d2bd40 Satisfy eslint 2021-08-03 06:12:04 +02:00
Henrik Giesel
b6aa59f2c7 Add tooltip for Toggly sticky icon 2021-08-03 06:02:29 +02:00
Henrik Giesel
d7232212a8 Increase inactive opacity a little for better discoverability 2021-08-03 05:52:57 +02:00
Henrik Giesel
357a6c5cc6 Add toggle sticky shortcuts F9 and Shift+F9 2021-08-03 05:52:07 +02:00
Damien Elmes
87f9bd8021
Merge pull request #1320 from hgiesel/colorpickerplus
Remember last text and highlight color again
2021-08-03 09:07:46 +10:00
Henrik Giesel
4db7cebf62 Remember last text and highlight color again 2021-08-02 23:12:00 +02:00
Damien Elmes
c6c9721c53 update congrats screen periodically; automatically move back to study 2021-08-02 16:05:18 +10:00
Damien Elmes
070f57fcc5 don't hide learning count on congrats screen when learning is overdue
The v3 scheduler will delay the final card from being shown twice in
a row, but the overdue case was being treated the same as the no-learning
case, leading to the message being hidden.
2021-08-02 15:57:09 +10:00
Damien Elmes
141a96e221 fix inability to map fields from larger to smaller notetype
We were using the new item count instead of the old one.

https://forums.ankiweb.net/t/issue-changing-note-type-on-2-1-45/11822
2021-07-31 18:30:50 +10:00
Henrik Giesel
ed496c097f Install Ctrl+Shfit+V paste only on Apple platforms 2021-07-31 03:43:10 +02:00
Henrik Giesel
61e38a8bc9 Remove registerShortcut for Ctrl+C/V/A/X from editor/index.ts 2021-07-30 22:28:40 +02:00
Damien Elmes
355e66e83c export jQuery, not just $
https://github.com/ankitects/anki/pull/1314#issuecomment-889597619
2021-07-30 18:30:37 +10:00
Damien Elmes
a99f6a8514
Merge pull request #1314 from hgiesel/fixjqueryreviewer
Export jquery correctly
2021-07-29 23:26:05 +10:00
Henrik Giesel
7353bca606 Export jquery correctly 2021-07-29 15:18:51 +02:00
Damien Elmes
9c1c298426
Merge pull request #1312 from hgiesel/smalleditorrefactors
Use :host instead of :host-context
2021-07-28 13:19:04 +10:00
Damien Elmes
07c2c7ff62 show warning when trying to indent plain text
https://forums.ankiweb.net/t/2-1-45-release-candidate/11362/55
2021-07-28 12:18:04 +10:00
Damien Elmes
f3b8022a4c add reviewer_extras.js back 2021-07-27 15:13:39 +10:00
Henrik Giesel
e9928f9126 Use :host instead of :host-context 2021-07-26 16:06:50 +02:00
Henrik Giesel
95c8f5a12a Use event object in createShortcut, fix F8 for highlight 2021-07-26 06:15:30 +02:00
Henrik Giesel
66faa4ec25 Rename to text color and text color highlight 2021-07-26 05:28:28 +02:00
Henrik Giesel
b3a7a4ac3d Use new for-loop 2021-07-19 01:34:14 +02:00
Henrik Giesel
eb4550d2d5 Catch hook errors in two ways:
- try/catch for catching synchronous errors
- Promise.allSettled will allow for rejected promises without fast-failing other promises
2021-07-19 01:23:41 +02:00
Damien Elmes
033856c422 expose _queueAction
https://github.com/ankitects/anki/pull/1292#issuecomment-881795577
2021-07-17 12:12:07 +10:00
Damien Elmes
1209cd115a css_browser_selector was logging to the console 2021-07-17 09:25:05 +10:00
Damien Elmes
4861495b49 keep _updateQA exposed for now, as some add-ons use it 2021-07-17 09:11:05 +10:00
Henrik Giesel
1c1181b9e0 Allow any in reviewer/index.ts 2021-07-16 17:28:31 +02:00
Henrik Giesel
f52df75bc2 Add back opacity change 2021-07-16 17:26:04 +02:00
Henrik Giesel
272f2f7d1a Revert to MathJax through script tag 2021-07-16 16:56:57 +02:00
Henrik Giesel
a616d0dfbc Add copyright header 2021-07-16 16:56:57 +02:00
Henrik Giesel
d41530f4cc Satisfy formatter 2021-07-16 16:56:57 +02:00
Henrik Giesel
ac3577455d Satisfy eslint 2021-07-16 16:56:56 +02:00
Henrik Giesel
ddf3adfc8e Remove protobuf important from reiewer (no longer necessary (?)) 2021-07-16 16:56:56 +02:00
Henrik Giesel
d6393ba996 Do not set opacity to 0 in reviewer 2021-07-16 16:56:56 +02:00
Henrik Giesel
05771b7598 Include MathJax over ts/reviewer 2021-07-16 16:56:56 +02:00
Henrik Giesel
c016f0c8d0 Simplify some reviewer code 2021-07-16 16:56:56 +02:00
Henrik Giesel
ee1a1c35fb Create reviewer/images.ts 2021-07-16 16:56:56 +02:00
Henrik Giesel
5cbb582d0b Export jquery via ts/reviewer 2021-07-16 16:56:56 +02:00
Henrik Giesel
68ac505d81 Include css-browser-selector via ts/reviewer 2021-07-16 16:56:56 +02:00
Henrik Giesel
afa8f8a6f0 Export getTypedAnswer 2021-07-16 16:56:56 +02:00
Henrik Giesel
af12756980 Move reviewer to ts/reviewer 2021-07-16 16:56:55 +02:00
Damien Elmes
f458add147 add note about display order using current deck 2021-07-13 15:58:06 +10:00
Damien Elmes
c9ad563f93 move bury options below display order
Causes the timer settings to appear at the bottom left, which is a bit neater.
2021-07-13 15:45:08 +10:00
Damien Elmes
0b9fbd9050
Merge pull request #1286 from ankitects/proto
Split backend.proto into multiple files
2021-07-11 19:53:04 +10:00
Damien Elmes
372a28be29 rename workspace
I'd forgotten that Bazel "helpfully" adds __init__.py files into folders
that match the workspace name, breaking imports.
2021-07-10 23:58:53 +10:00
Damien Elmes
185e9acd22 split out remaining tags, stats, media and rendering 2021-07-10 23:16:18 +10:00
Damien Elmes
35b059ecdb split out sync, search, scheduler & config 2021-07-10 21:33:12 +10:00
Damien Elmes
9e0a295ab9 split out decks, deckconfig, notes, notetypes 2021-07-10 20:44:22 +10:00
Damien Elmes
18851ace47 split out cards and collection 2021-07-10 19:52:31 +10:00
Damien Elmes
616db33c0e refactor protobuf handling for split/import
In order to split backend.proto into a more manageable size, the protobuf
handling needed to be updated. This took more time than I would have
liked, as each language handles protobuf differently:

- The Python Protobuf code ignores "package" directives, and relies
solely on how the files are laid out on disk. While it would have been
nice to keep the generated files in a private subpackage, Protobuf gets
confused if the files are located in a location that does not match
their original .proto layout, so the old approach of storing them in
_backend/ will not work. They now clutter up pylib/anki instead. I'm
rather annoyed by that, but alternatives seem to be having to add an extra
level to the Protobuf path, making the other languages suffer, or trying
to hack around the issue by munging sys.modules.
- Protobufjs fails to expose packages if they don't start with a capital
letter, despite the fact that lowercase packages are the norm in most
languages :-( This required a patch to fix.
- Rust was the easiest, as Prost is relatively straightforward compared
to Google's tools.

The Protobuf files are now stored in /proto/anki, with a separate package
for each file. I've split backend.proto into a few files as a test, but
the majority of that work is still to come.

The Python Protobuf building is a bit of a hack at the moment, hard-coding
"proto" as the top level folder, but it seems to get the job done for now.

Also changed the workspace name, as there seems to be a number of Bazel
repos moving away from the more awkward reverse DNS naming style.
2021-07-10 19:17:05 +10:00
Damien Elmes
1d4b58419e add workaround for protobufjs requiring uppercase package names
I mourn the time lost trying to track this down :-(

https://github.com/protobufjs/protobuf.js/issues/1014

We can't patch the minified file in dist without essentially duplicating
it, so this change also switches from the external file to including
the src file as part of the bundle.
2021-07-10 15:24:01 +10:00
abdo
e2cff97349 Tweak deck options tooltips for RTL languages 2021-07-10 00:45:10 +03:00
Damien Elmes
80b98e0db8 move protobuf into separate folder in preparation for multiple files 2021-07-09 21:02:40 +10:00
hikaru-y
91f68d7665 Set lineWiseCopyCut option to false
Fixes https://forums.ankiweb.net/t/anki-2-1-45-beta/10664/103
Related: https://github.com/codemirror/CodeMirror/issues/3169
2021-07-08 01:19:19 +09:00
Damien Elmes
7141f795fb
Merge pull request #1280 from hgiesel/addonimprov2
Export via components for Deck Options
2021-07-07 09:53:05 +10:00
Damien Elmes
f326000b29
Merge pull request #1279 from hgiesel/addonimprov
Remove disabled / Export via Components
2021-07-07 09:31:00 +10:00
Henrik Giesel
794b9f30dc Export editor globals under anki namespace 2021-07-06 03:48:33 +02:00
Henrik Giesel
ca4d4424e6 Don't use containers components within Container
- dynamic componets will be placed outside of the inner container
2021-07-06 03:43:40 +02:00
Henrik Giesel
2ed2a7baca Export under anki.components 2021-07-06 03:36:02 +02:00
Henrik Giesel
70d74605fa Remove WithShortcut for now - it does not work 2021-07-05 22:32:19 +02:00
Henrik Giesel
adfe6597a5 disabledKey => fieldFocusedKey 2021-07-05 18:15:03 +02:00
Henrik Giesel
9cc0d0a01c Fix issues with sometimes cause assignment of wrong position value 2021-07-05 17:17:58 +02:00
Henrik Giesel
59c5ecd4fc Use Components.svelte instead of exporting from EditorToolbar.svelte 2021-07-05 16:19:03 +02:00
Damien Elmes
46708f536d add comment about the use of linear-gradient
Otherwise one of us is likely to return to the code in a few years,
think it could be made simpler, and then break things again. :-)
2021-07-05 11:09:22 +10:00
hikaru-y
7c5031ab28 Prevent #dupe bgcolor from being carried over when copying text
use 'background-image' instead of 'background-color'
to prevent the background-color from being carried over
when copying text to another field in day mode
2021-07-05 04:11:03 +09:00
Damien Elmes
581c3e2486
Merge pull request #1273 from hgiesel/macshortcuts
Execute Ctrl+C/V/X/A via execCommand in editor
2021-07-04 16:02:52 +10:00
Henrik Giesel
7f7e5c2702 Execute Ctrl+C/V/X/A through execCommand in editor (so we can customize it) 2021-07-03 01:48:49 +02:00
Henrik Giesel
f0e870f1ae Allow non-null assertion in focus-handlers 2021-07-03 01:14:59 +02:00
Henrik Giesel
d11d66ee79 Move selection into editable, if it's not there after focus 2021-07-03 01:00:52 +02:00
Damien Elmes
c01c4b642b
Merge pull request #1266 from hgiesel/renamelib
More uniform file naming
2021-07-02 09:31:52 +10:00
Henrik Giesel
24af5bada3 More uniform file naming
kebap-case for .ts, .scss, .html, and directories
2021-07-01 12:24:16 +02:00
Henrik Giesel
982afca625 Use better cloze button icon 2021-07-01 11:46:39 +02:00
Henrik Giesel
6493adf7ca Refactor WithDropdown to be more versatile and cause less bugs 2021-06-30 14:01:33 +02:00
Damien Elmes
8b55e8610b unpin bootstrap now that 5.0.1 is out
63437f5cde
2021-06-29 11:25:14 +10:00
Damien Elmes
fa070d9da3
Merge pull request #1262 from hgiesel/visibledeckpreset
Make input in TextInputModal in dark mode visible
2021-06-29 11:24:21 +10:00
Henrik Giesel
f4f70c514c Make input in TextInputModal in dark mode visible 2021-06-29 03:20:15 +02:00
Damien Elmes
9d1a755fdc use css columns instead of grid
Alternative approach to #1255

thanks to Hikaru and Henrik for the margin fix, and Matthias for
the initial idea and prototypes!
2021-06-29 11:19:56 +10:00
Damien Elmes
18843e711d disable cloze&math buttons in html mode
Following on from 8a07d3161d
Keeping them active seems to encourage users to experiment:
https://forums.ankiweb.net/t/cloze-deleting-html-svg/11011
2021-06-25 10:31:47 +10:00
Henrik Giesel
4252898c78 Make Codable abstract more over its textarea v codemirror when using fieldHTML 2021-06-24 19:55:50 +02:00
Henrik Giesel
96e4e90a61 Make EditingArea intialize this.fieldHTML, not Editable.fieldHTML 2021-06-24 19:15:07 +02:00
Damien Elmes
e387c1f6f1 mobile fixes for js field
Without the overflow change, the page viewport gets messed up.
And for some reason specifying the font size as 1rem does not work;
it needs to be explicitly set to 16px to prevent zoom in.
2021-06-24 18:06:22 +10:00
Damien Elmes
d94c878ce3 disable smart quotes and capitalization in js field
+ use bootstrap styling
2021-06-24 18:00:06 +10:00
Damien Elmes
0b697f5161 expose scheduler js option in deck config 2021-06-24 14:38:10 +10:00
Damien Elmes
943f2b0287 gear -> revert icon
https://forums.ankiweb.net/t/anki-2-1-45-beta/10664/30
2021-06-24 13:07:03 +10:00
Damien Elmes
1c0e0853b0
Merge pull request #1248 from ankitects/revert-on-right
Move deck options revert button to right; hide when inactive
2021-06-24 13:01:57 +10:00
Henrik Giesel
cedbc35850 Adapt use of createDropdown for editor buttons 2021-06-22 17:31:06 +02:00
Damien Elmes
a7cf5cb5eb move revert button to the right
With a confirmation step now, accidental taps when scrolling shouldn't
be an issue, and it leaves more room for the text.
2021-06-22 09:41:31 +10:00
Damien Elmes
cde63469dc hide revert button when not active 2021-06-22 09:38:28 +10:00
Damien Elmes
c840b8dbb2 fix svelte-check error by tweaking formatting
🤷
2021-06-22 09:27:37 +10:00
Henrik Giesel
08402a2d72 Have swithes be blue when checked in night mode 2021-06-21 22:37:37 +02:00
Henrik Giesel
214c585518 Replace dash with underscore for night_mode_lib 2021-06-21 21:51:15 +02:00
Henrik Giesel
13970425bf Add night_mode_lib as SCSS target 2021-06-21 21:44:23 +02:00
Henrik Giesel
8a2ac57cc5 Always show spinning reverse icon on mobile 2021-06-21 21:35:20 +02:00
Henrik Giesel
e5978d7ffe Remove use of bootstrap-dark.night-mode for deckoptions
The CSS for the Switch component had a conflict regarding background color
Also generally it makes sense to put the CSS into the components
2021-06-21 21:16:40 +02:00
Henrik Giesel
e8a6add60b Position Revert/Gear button on the left of the label
+ Make the reverse arrow spin
2021-06-21 20:48:33 +02:00
Henrik Giesel
4e4683a122 Make gear button show dropdown menu 2021-06-21 20:24:15 +02:00
Henrik Giesel
48b7ae3cd0 Revert button with gear icon, that shows revert dropdown item 2021-06-21 19:11:10 +02:00
Henrik Giesel
292ba665af Associate Switch labels with their respective switches 2021-06-21 18:15:41 +02:00
Henrik Giesel
909502bb0a Put tooltip only on the info badge 2021-06-21 17:48:18 +02:00
Damien Elmes
f92bf490ab remove explicit line-height
It was causing text in dropdowns to be slightly truncated
(eg "Tag Only")
2021-06-21 17:02:48 +02:00
Damien Elmes
ecfa01072b remove left pad on switches 2021-06-21 17:02:48 +02:00
Damien Elmes
207e0126a0 decrease margins in deck options top sticky bar 2021-06-21 17:02:48 +02:00
Henrik Giesel
131d29ae05 Add g-1 class to DeckoptionsPage. Include transitions.scss
* Modal misbehaved before
2021-06-21 17:02:48 +02:00
Henrik Giesel
abca240de7 Disable RevertButton tooltip on touch devices
The tooltip will show after you clicked Revert. There's no sensible way
to show the tooltip, without also triggering the functionality
2021-06-21 17:02:48 +02:00
Henrik Giesel
98c57ce3f8 Make TriggerType an input argument for WithTooltip 2021-06-21 17:02:48 +02:00
Henrik Giesel
62b4b4c12c Increase padding on tooltips + Remove erroneous closing angle bracket 2021-06-21 17:02:48 +02:00
Henrik Giesel
728e2e682b Implement Switch and SwitchRow 2021-06-21 17:02:48 +02:00
Henrik Giesel
9a00ef5a81 Properly dispose of tooltip resources when unmounting 2021-06-21 17:02:48 +02:00
Henrik Giesel
97692e4c28 Reverse RevertButton being on the right side 2021-06-21 17:02:48 +02:00
Henrik Giesel
3227346f53 Alternative solution to markdown tooltips creating bottom margin 2021-06-21 17:02:48 +02:00
Henrik Giesel
3232712748 Update RevertButton to use Badge and WithTooltip 2021-06-21 17:02:48 +02:00
Henrik Giesel
a035679171 Add a tooltip showing delay of a quarter second 2021-06-21 17:02:48 +02:00
Henrik Giesel
880546c895 Add back info circles, remove underlines 2021-06-21 17:02:48 +02:00
Henrik Giesel
44562c3250 Update NotetypeSelector to use Item instead of ButtonToolbarItem 2021-06-21 17:02:48 +02:00
Henrik Giesel
d45e6445cf Fix tooltip regression 2021-06-21 17:02:48 +02:00
Henrik Giesel
af53ccfb36 Have decimal keyboard for SpinBoxFloat 2021-06-21 17:02:48 +02:00
Henrik Giesel
0c49f6c08b Have numeric keyboard for SpinBox 2021-06-21 17:02:48 +02:00
Henrik Giesel
4d7bdbce1f Switch Revert button and input element position 2021-06-21 17:02:48 +02:00
Henrik Giesel
67e0b67d17 Implement WithTooltip 2021-06-21 17:02:48 +02:00
Henrik Giesel
11c5476ae3 Wrap label and HelpPopup into span
Avoids HelpPopup in a differnt column upon label wrapping
2021-06-21 17:02:48 +02:00
Henrik Giesel
21ab484f21 Make revert button horizontal padding smaller 2021-06-21 17:02:48 +02:00
Henrik Giesel
99e7a3c436 Have colors inherit for badges 2021-06-21 17:02:48 +02:00
Henrik Giesel
dba85e7755 Add down-arrow SASS function 2021-06-21 17:02:48 +02:00
Henrik Giesel
65f0e7a4ea Use custom down arrow for both SelectButton and EnumSelector 2021-06-21 17:02:48 +02:00
Henrik Giesel
8d32528e8d Put Col types into col.ts 2021-06-21 17:02:48 +02:00
Henrik Giesel
894c84f4d3 Fix formatting 2021-06-21 17:02:48 +02:00
Henrik Giesel
e030e6f656 Rename SectionItem to just Item and use across option sections 2021-06-21 17:02:46 +02:00
Henrik Giesel
f895919435 Import API from all option sections 2021-06-21 17:01:45 +02:00
Henrik Giesel
2728b5fa63 Add Container.svelte 2021-06-21 17:01:45 +02:00
Henrik Giesel
cf9bba0807 Remove SCSS from ConfigEditor 2021-06-21 17:01:45 +02:00
Henrik Giesel
1bb59198dd Implement CheckBoxRow and SpinBoxFloatRow 2021-06-21 17:01:45 +02:00
Henrik Giesel
5fa850703f Implement EnumSelectorRow and StepsInputRow 2021-06-21 17:01:45 +02:00
Henrik Giesel
bc6907ef8d Implement SpinBoxRow 2021-06-21 17:01:45 +02:00
Henrik Giesel
46b5f6ba65 Add breakpoint for Bury EnumSelector 2021-06-21 17:01:44 +02:00
Henrik Giesel
2e921b95c6 Use Row and Col in favor of ConfigEntry 2021-06-21 17:01:44 +02:00
Henrik Giesel
77ea7f5e6f Remove ConfigEntryFull 2021-06-21 17:01:44 +02:00
Henrik Giesel
6e06f4afd4 Factor RevertButton out of components 2021-06-21 17:01:44 +02:00
Henrik Giesel
c87123a9b1 Change margin and gutters off rows 2021-06-21 17:01:44 +02:00
Henrik Giesel
2d24003e6c Move the remaining Options to new ConfigEntry layout 2021-06-21 17:01:44 +02:00
Henrik Giesel
d099b00918 Update DailyLimits and NewOptions to new format 2021-06-21 17:01:44 +02:00
Henrik Giesel
2a318f4695 Wrap input and revert button into one col 2021-06-21 17:01:44 +02:00
Henrik Giesel
17b39b8ef8 Introduce TitledContainer 2021-06-21 17:01:44 +02:00
Henrik Giesel
70c8b8940d Allow for gutters between rows 2021-06-21 17:01:44 +02:00
Henrik Giesel
da8fdb7719 Vertically align text + Remove bottom margin from alerts 2021-06-21 17:01:44 +02:00
Henrik Giesel
c586107fea Turn icons into Bootstrap badges in deckoptions 2021-06-21 17:01:44 +02:00
Henrik Giesel
23f65f1a95 Start using Bootstrap grid for deckoptions 2021-06-21 17:01:44 +02:00
Henrik Giesel
282de21675 Use Bootstrap containers instead of CSS in base for deckoptions 2021-06-21 17:01:44 +02:00
Henrik Giesel
7dacd9b72f Add container scss to deckoptions-base 2021-06-21 17:01:44 +02:00
Henrik Giesel
b99b12f157 Make API argument required in ConfigEditor 2021-06-21 17:01:44 +02:00
Henrik Giesel
c49ad009d0 Add Section and SectionItem for the deckoptions 2021-06-21 17:01:44 +02:00
Henrik Giesel
da076aa48e Generalize ButtonToolbarItem to SectionItem 2021-06-21 17:01:42 +02:00
Damien Elmes
c6c3b8af4d
Merge pull request #1244 from hgiesel/colorpickersetcolor
Make Color Pickers also format with colors
2021-06-20 15:58:58 +10:00
Damien Elmes
c79f8ba88f in/out -> request/response
The saved characters weren't worth the increased difficulty when
reading, and the fact that we were deviating from protobuf norms.
2021-06-20 15:49:20 +10:00
Henrik Giesel
05fa7daa97 Add type hint in WithColorHelper 2021-06-19 16:31:35 +02:00
Henrik Giesel
29d40fd4ab Make Color Pickers also format with colors 2021-06-19 16:27:09 +02:00
Damien Elmes
f2029b8ba8 support jsdom tests
Alternative would be to switch to jsdom for everything, but TextEncoder
is currently missing from jsdom, and jsdom mode is slower IIRC.
2021-06-19 09:43:09 +10:00
Henrik Giesel
297150a1b6 Cannot create Jest jsdom tests (?) 2021-06-18 20:41:54 +02:00
Damien Elmes
039be57499
Merge pull request #1242 from hgiesel/codable
In-line HTML-Editing for Editor
2021-06-18 17:18:35 +10:00
Henrik Giesel
3320aecdda Satisfy svelte_check 2021-06-18 03:12:02 +02:00
Henrik Giesel
526e87aaef Remove components from editor BUILD.bazel again 2021-06-18 02:59:45 +02:00
Henrik Giesel
bfe2bdecc0 Disable function dropdown when no field selected 2021-06-18 02:51:42 +02:00
Henrik Giesel
767af9e478 Satisfy linter 2021-06-18 02:44:15 +02:00
Henrik Giesel
a3a59f0293 Make text wrapper buttons work with Codable 2021-06-18 02:33:56 +02:00
Henrik Giesel
8a07d3161d Disable Media button for Codable, but keep wrapping and cloze key for now 2021-06-18 02:02:01 +02:00
Henrik Giesel
2322d170fc Disable ColorButtons for Codable 2021-06-18 01:44:15 +02:00
Henrik Giesel
c23665cf63 Allow Tab and Shift+Tab on Codable 2021-06-18 01:32:46 +02:00
Henrik Giesel
28679968f7 Disable FormatBlock buttons for Codable 2021-06-18 01:17:43 +02:00
Henrik Giesel
eeb954535f Disable Bold button in Codable 2021-06-18 00:27:07 +02:00
Henrik Giesel
817dee1a1b Make different onPaste behavior for Editable and Codable 2021-06-17 23:12:15 +02:00
Henrik Giesel
94c789a5bf Have correct enter behavior in for Editable and Codable 2021-06-17 22:02:06 +02:00
Henrik Giesel
f923660fc6 Add autoclosetag addon for CodeMirror 2021-06-17 21:45:11 +02:00
Henrik Giesel
9cbc1c33e7 Make it so you don't have to close the HTML mode for html to be written back 2021-06-17 21:36:56 +02:00
Henrik Giesel
a87f81f00b Only toggle the current field, not all 2021-06-17 20:57:20 +02:00
Henrik Giesel
7266f485d0 Make Codable enter behavior the same as Editable 2021-06-17 20:47:33 +02:00
Henrik Giesel
95dad1abc1 Match and fold tags 2021-06-17 20:27:34 +02:00
Henrik Giesel
447e54d3af Make editable hide correctly when activating codable 2021-06-17 19:08:14 +02:00
Henrik Giesel
d80fc6a397 Successfully add monokai theming 2021-06-17 18:36:12 +02:00
Henrik Giesel
74961ff118 Make DOMParser correctly return innerHTML 2021-06-17 17:52:27 +02:00
Henrik Giesel
4daede2995 Make Codable correctly update the editable state and its button 2021-06-17 17:49:50 +02:00
Henrik Giesel
7f76a98546 Apply the Monokai theme 2021-06-17 17:18:00 +02:00
Henrik Giesel
8a902944a8 Setup toggleHtmlEdit on editingArea 2021-06-17 17:08:33 +02:00
Henrik Giesel
678a5997e9 Connect HtmlEditButton to codable 2021-06-17 15:30:05 +02:00
Henrik Giesel
8b15c81d34 Display CodeMirror in editingArea 2021-06-17 14:44:03 +02:00
Henrik Giesel
709c1be7a0 Add codable element 2021-06-17 13:46:25 +02:00
Damien Elmes
2e53dc63c8
Merge pull request #1230 from RumovZ/fields-check
Check for misplaced or missing clozes when adding and in the editor
2021-06-17 21:26:16 +10:00
Damien Elmes
51de0fdcd1 update js deps; pin marked
marked 2.1.0 fails to run on node 12
2021-06-16 16:47:32 +10:00
RumovZ
0f549d2b82 Merge cloze hint divs into one 2021-06-15 08:43:18 +02:00
RumovZ
d8c3e71105 Add editor hints for cloze errors 2021-06-12 17:35:40 +02:00
hikaru-y
2778398812 Disable color picker buttons when a field is not focused 2021-06-11 23:36:06 +09:00
Damien Elmes
968bd1b27a specific encoding of strings.json
https://forums.ankiweb.net/t/win10-build-error-unicodedecodeerror-gbk-codec-cant-decode-byte-0x91/10714
2021-06-11 20:12:38 +10:00
Damien Elmes
18f8e3743b
Merge pull request #1225 from kelciour/segoe-ui-font-fix
Fix  Segoe UI got replaced with Arial on Windows
2021-06-10 22:29:06 +10:00
Damien Elmes
61e86cc29d new change notetype implementation for the frontend
- changes can now be undone
- the same field can now be mapped to multiple target fields, allowing
fields to be cloned
- the old Qt dialog has been removed
- the old col.models.change() API calls the new code, to avoid
breaking existing consumers. It requires the field map to always
be passed in, but that appears to have been the common case.
- closes #1175
2021-06-10 22:19:24 +10:00
kelciour
44cf5153b1 fix default font family
Probably a regression introduced with fdd162a7b9
2021-06-10 12:07:52 +03:00
Damien Elmes
410660990e add LIFO sorting options for new cards 2021-06-08 14:01:46 +10:00
Damien Elmes
dbfe12edbf use different toolbar size on Mac
see discussion on 984ab9b6fe
2021-06-05 11:28:36 +10:00
Damien Elmes
f348ec7678 tooltip styling fix
Thanks Matthias!

https://forums.ankiweb.net/t/anki-2-1-45-alpha/10061/88
2021-06-04 15:27:27 +10:00
Damien Elmes
984ab9b6fe try toolbar size of 1.85rem
https://forums.ankiweb.net/t/anki-2-1-45-alpha/10061/97
2021-06-04 15:11:34 +10:00
Damien Elmes
3ced63d974 make _vars.scss public 2021-06-04 14:39:53 +10:00
Damien Elmes
578b1b0552
Merge pull request #1213 from RumovZ/new-flags
Add pink, turquoise and purple flags
2021-06-02 11:22:26 +10:00
RumovZ
daa696e703 Tweak flag colors 2021-06-01 18:14:54 +02:00
Damien Elmes
dd1cb0112a
Merge pull request #1211 from hgiesel/bettercolor
Implement new text color / highlight color buttons
2021-06-01 17:55:57 +10:00
Damien Elmes
6eac76bc8a ensure changes to current field are saved before saving deck opts
https://forums.ankiweb.net/t/anki-2-1-45-alpha/10061/70
2021-06-01 15:54:07 +10:00
Damien Elmes
562787bce1 add options to sort reviews by deck
https://forums.ankiweb.net/t/is-studying-subdeck-by-subdeck-broken-in-2-1-44-mac/10458/2
2021-06-01 13:22:39 +10:00
RumovZ
c97c6c6e98 Add violet, turquoise and purple flags 2021-05-31 12:03:30 +02:00
Henrik Giesel
06545d98a4 Change default icon size of IconButtons 2021-05-31 00:31:10 +02:00
Henrik Giesel
94ebeb68d7 Remove rainbow SCSS 2021-05-31 00:20:41 +02:00
Henrik Giesel
aaa210d662 Make ColorPicker buttons halfwidth 2021-05-31 00:17:06 +02:00
Henrik Giesel
8e81a79fbf Implement new ColorPicker 2021-05-30 22:58:40 +02:00
Henrik Giesel
ad1a72495f Implement WithColorHelper.svelte 2021-05-30 21:44:05 +02:00
Henrik Giesel
54609f408a Implement new way to way to display icons in IconButtons
* allows for multiple icons overlay
* allows to make individual icons smaller/bigger
2021-05-30 21:05:16 +02:00
Henrik Giesel
09af4d5ecd Add new color icons 2021-05-30 20:09:09 +02:00
Damien Elmes
bb2026f3f8
Merge pull request #1202 from hgiesel/nowrapdeckoptionstoolbar
Uniformly use properties to Button{Toolbar,Group} for setting button properties
2021-05-29 10:39:11 +10:00
Henrik Giesel
91b16a67d6 Add overflow-x: hidden for SelectButton 2021-05-28 21:33:34 +02:00
Damien Elmes
4c2a598be4 round to whole seconds
the steps are serialized as f32, and the resulting imprecision was
leading to decimal values

closes #1203
2021-05-28 19:34:25 +10:00
Damien Elmes
dcb7dc41de allow running test with 'bazel run jest' 2021-05-28 19:24:58 +10:00
Henrik Giesel
358794c911 Uniformly use variables to Button{Toolbar,Group} for setting button properties
Instead of using WithTheming around ButtonToolbar/ButtonGroup
2021-05-27 17:13:36 +02:00
Damien Elmes
7c5e974ae5 hook up some missing translations in deck options screen 2021-05-26 14:41:18 +10:00
Damien Elmes
5b5b654c33 add option to clone current config 2021-05-26 13:20:24 +10:00
Damien Elmes
1d2e89d206 roll back sass for now to quieten deprecation warnings
https://github.com/twbs/bootstrap/issues/34051
2021-05-26 10:20:34 +10:00
Damien Elmes
0026506543 update ts deps
- prettier's formatting has changed, so files needed to be reformatted
- dart is spitting out deprecation warnings like:

254 │   2: $spacer / 2,
    │      ^^^^^^^^^^^
    ╵
    bazel-out/darwin-fastbuild/bin/ts/sass/bootstrap/_variables.scss 254:6  @import
    ts/sass/button_mixins.scss 2:9                                          @use
    ts/components/ColorPicker.svelte 2:5                                    root stylesheet

DEPRECATION WARNING: Using / for division is deprecated and will be removed in Dart Sass 2.0.0.

Recommendation: math.div($grid-gutter-width, 2)
2021-05-26 09:37:40 +10:00
Damien Elmes
cdc40c1ce4 update rules_nodejs 2021-05-26 09:12:23 +10:00
Henrik Giesel
5761d19c64 Satisfy svelte_check 2021-05-26 08:46:12 +10:00
Henrik Giesel
c074ca9159 Fix TextInputModal preset value 2021-05-26 08:46:12 +10:00
Henrik Giesel
5cc6fc7d9b Use TextInputModal directly from svelte component
* the only important thing is that it is not positioned within elements
  with display: none
* I think we can treat the existence of the modal to be a kind of
  "precondition" that has to be met for the component to be used
2021-05-26 08:46:12 +10:00
Henrik Giesel
412091ae60 Inline some bootstrap-dark styling 2021-05-26 08:40:00 +10:00
Henrik Giesel
5f6bc19389 Use min-{width,height} for legacy buttons 2021-05-25 20:29:42 +02:00
Henrik Giesel
52db2a2585 Restructure legacy scss / remove button_mixin import 2021-05-25 13:57:09 +02:00
Henrik Giesel
cfc9fa359d Base width/height off on --toolbar-size for legacy buttons 2021-05-25 13:29:55 +02:00
Damien Elmes
f4defc2e81
Merge pull request #1190 from kleinerpirat/main
Make legacy buttons look and feel like Svelte buttons
2021-05-25 14:20:47 +10:00
Henrik Giesel
cf223d615a Fix background on DropdownItem + make transitions on buttons quicker 2021-05-24 19:53:30 +02:00
Matthias M
ee23d3781d Restrict inversion to images 2021-05-24 19:46:51 +02:00
Matthias M
c289544390 Adjust active:hover behaviour
so it behaves like Svelte buttons, when clicking and dragging the mouse away from the button.
2021-05-24 13:11:50 +02:00
Matthias M
eedc8274da Use !important instead of :not() selector
!important cannot be used with the radius mixin, so I had to state them explicitly.
2021-05-24 11:21:42 +02:00
Damien Elmes
f91f00a542 mention new limit bound by reviews in tooltip 2021-05-24 19:04:00 +10:00
Matthias M
12e69cb668 Merge branch 'ankitects:main' into main 2021-05-24 10:59:02 +02:00
Matthias M
d74135e481 Revert changes, add exceptions
to keep the PR changes as contained as possible without the use of !important.
2021-05-24 10:37:43 +02:00
Damien Elmes
f56c241702 round floats before comparing against default values
tabbing through the Advanced section was marking things like
'easy bonus' as modified
2021-05-24 18:26:01 +10:00
Damien Elmes
999fe98159 hard-code code color, as the tooltip background is always dark 2021-05-24 18:25:19 +10:00
Damien Elmes
93ace8b96e move v3 options into separate section; more description/section tweaks 2021-05-24 18:25:17 +10:00
Damien Elmes
a361313622
Merge pull request #1183 from hgiesel/keykey
Switch to event.key for keyboard sequences
2021-05-24 10:53:24 +10:00
Matthias M
3813f51627 Remove background-color transition from .button
but keep color, border-color and box-shadow transition as it is.
2021-05-23 19:41:45 +02:00
Matthias M
2e1066fb35 Remove CSS variable button-bg again
The variable is not as useful as I thought, since night mode uses a gradient anyway (and day mode is simply white).
2021-05-23 19:39:57 +02:00
Matthias M
ef476b8fe3 Exclude dropdown items from night mode style
Makes dropdown menu look cleaner.

:not() selector did not work because the color selector button would be affected for some reason.
2021-05-23 15:58:22 +02:00
Matthias M
7cb20b3a9f Remove transition from .linkb to fix blinking 2021-05-23 15:55:22 +02:00
Matthias M
c6b3cb0041 Merge branch 'ankitects:main' into main 2021-05-23 01:45:42 +02:00
Matthias M
a66f7798f9 Add CSS variable --button-bg
might be useful for add-on developers.
2021-05-23 01:18:00 +02:00
Matthias M
aee1a836d1 Make legacy buttons look like Svelte buttons
with extra night mode handling.
2021-05-23 00:50:02 +02:00
Matthias M
9a9f5f8dd8 Invert legacy button content in night mode
for better visibility.
2021-05-22 22:40:21 +02:00
Matthias M
68040fcd24 Remove unnecessary Linux .button styling 2021-05-22 22:33:24 +02:00
Matthias M
5c5be91420 Remove hard-coded values from .button
so that dynamic border-radius gets used instead.
2021-05-22 22:29:50 +02:00
Henrik Giesel
3a18dce03f Prefer event.which over event.{key,code}
It works better with alternative Latin-based keyboard layouts
2021-05-22 17:50:23 +02:00
Damien Elmes
7bf661ee05 fix missing cumulative overlays in graphs 2021-05-22 10:19:13 +10:00
Henrik Giesel
c89c42dc37 Base shortcuts with letters no event.key, with symbols/numbers on event.code 2021-05-21 22:45:55 +02:00
Henrik Giesel
5ef056a23e Make numpad keys also cancel current shortcut sequence 2021-05-21 19:03:06 +02:00
Henrik Giesel
9d212487c6 Capitalize keyboard shortcut letters 2021-05-20 18:46:22 +02:00
Henrik Giesel
ddeae60854 Instead of timeouts, make non-related keypresses cancel shortcut sequences 2021-05-20 18:32:53 +02:00
Henrik Giesel
ae19ed527d Switch to keyboard shortcuts based on event.key 2021-05-20 18:28:59 +02:00
Damien Elmes
84e2cfbe3f add a hack to handle sass resolution in svelte in external workspace 2021-05-20 15:32:06 +10:00
Damien Elmes
e2b2d1e9d8 experiment with bottom border on deck option headings 2021-05-20 14:54:07 +10:00
Damien Elmes
d5f4860f9b fix fields/cards font size & too-large toolbar on high DPI Windows
- enable default_css on editor again, so that the html element
is set to the system font size. If this is bringing in unwanted styling,
maybe we can come up with a different solution that just adjusts the
fonts
- make toolbar size relative to html font size, instead of hard-coding
it
2021-05-20 13:15:17 +10:00
Damien Elmes
5d21383e88 make sticky bar border a bit fainter 2021-05-20 12:49:07 +10:00
Damien Elmes
9789dd2bf9 fix invisible dropdown arrow in night mode; use bootstrap styling in top 2021-05-20 12:43:47 +10:00
Damien Elmes
b9a4908bfb apply the left padding in one place 2021-05-19 20:02:04 +10:00
Damien Elmes
e91ca199fb use standard toolbar colors for legacy items 2021-05-19 19:58:12 +10:00
Damien Elmes
6547af529a fix broken night mode styling
#1172 removed the select styling, but EnumSelector has not been updated
yet
2021-05-19 19:48:31 +10:00
Damien Elmes
df38788e07 move deck name into window title; v-center sticky bar 2021-05-19 19:34:15 +10:00
Damien Elmes
3f0fd548d8 increase toolbar size by 5px and use the default font sizes
Workaround for #1174 for now
2021-05-19 19:23:32 +10:00
Damien Elmes
fdd162a7b9 simplify previous patch
The default 1 rem is fine, but we need to apply the default font size
to the html element instead of the body for the definition of rem to
update.

Fixes #1174
2021-05-19 19:06:20 +10:00
Damien Elmes
b20381afad fix inconsistent font sizes
fixes #1174
2021-05-19 19:00:09 +10:00
Damien Elmes
363548e8a2 indent headings and bold them to match graph style 2021-05-19 17:20:01 +10:00
Damien Elmes
dbc043fd50 tweak left margin, and checkbox top margin 2021-05-19 17:18:28 +10:00
Damien Elmes
19dd739764 left align input boxes; decrease width 2021-05-19 16:41:19 +10:00
Damien Elmes
581480191a show note about old options screen if any add-ons are installed 2021-05-19 16:20:25 +10:00
Damien Elmes
a564399414 disable svelte-check on Windows for now 2021-05-19 11:45:02 +10:00
Henrik Giesel
a13a9e3b40 Add back global CSS for input 2021-05-18 19:30:43 +02:00
Henrik Giesel
efcf1976b5 Allow any in deckoptions/index until typing is provided 2021-05-18 19:21:25 +02:00
Henrik Giesel
2e13d3a21d Make blur a proper event listener 2021-05-18 19:19:05 +02:00
Henrik Giesel
32ca473fd4 Make SaveButton functional 2021-05-18 18:55:22 +02:00
Henrik Giesel
94cdebe59c Make styling on select button behave correctly 2021-05-18 17:50:18 +02:00
Henrik Giesel
e5d11ac547 WIP: Use our components in deckoptions sticky bar 2021-05-18 16:32:29 +02:00
Henrik Giesel
a8b1291f84 Use StickyBar in deckoptions 2021-05-18 14:13:11 +02:00
Damien Elmes
ec4ed9842a update jsdoc
https://github.com/jsdoc/jsdoc/issues/1908
2021-05-18 09:22:57 +10:00
Damien Elmes
9edac805ad support card state mutator in test scheduler
Documentation to come
2021-05-17 16:59:02 +10:00
Damien Elmes
4a85ebeda2 fix review sort order being shown in v2 scheduler options 2021-05-16 21:50:51 +10:00
Damien Elmes
6b53c0c175 support markdown in JS tooltips
`marked` adds about 44k to the bundle size unfortunately :-(
2021-05-16 21:43:58 +10:00
Damien Elmes
13519a929c rework various aspects of the test scheduler
- Daily limits are no longer inherited - each deck limits its own
cards, and the selected deck enforces a maximum limit.
- Fetching of review cards now uses a single query, and sorts in advance.
In collections with a large number of overdue cards and decks, this is
faster than iterating over each deck in turn.
- Include interday learning count in review count & review limit, and
allow them to be buried.
- Warn when parent review limit is lower than child deck in deck options.
- Cap the new card limit to the review limit.
- Add option to control whether new card fetching short-circuits.
2021-05-16 20:23:07 +10:00
Damien Elmes
dbbcb3e38c expose new sorting options in test scheduler options; move things around 2021-05-13 15:23:16 +10:00
Damien Elmes
a1bd6b481d pass sort options into test scheduler
- split new card fetch order and subsequent sort order; use latter
when building queues
- default to spacing siblings when burying is off, with options to
show each sibling in turn, and shuffle the fetched cards
2021-05-13 15:21:20 +10:00
Damien Elmes
63437f5cde roll back bootstrap until 5.0.1 comes out
Modals are currently broken:
https://github.com/twbs/bootstrap/issues/33840
2021-05-11 13:06:03 +10:00
Damien Elmes
220e14bf0f disable broken svelte_check test on Windows for now
Likely caused by a lack of sandboxing on Windows, causing the generated
.d.ts files to be visible to svelte_check, and being picked up in
preference over the .svelte file.
2021-05-08 12:15:49 +10:00
Damien Elmes
010c3da770
Merge pull request #1159 from hgiesel/newapproach
Prefer idiomatic Svelte features over dynamic components
2021-05-08 11:35:31 +10:00
Henrik Giesel
8b0c6ba5df Check for id when inserting dynamic elements
* I'm not sure it behaved, if there were multiple elements
  inserted by different add-ons into the same container
2021-05-07 16:50:17 +02:00
Henrik Giesel
cf38cb334e Fix remaining errors in editor/*.svelte files 2021-05-07 15:10:28 +02:00
Henrik Giesel
6081a02558 Use MouseEvent instead of KeyboardEvent in WithShortcut
* otherwise the disabled button will allow it to pass through
2021-05-07 14:46:08 +02:00
Henrik Giesel
9e747a5744 Rename Detachable.detach to detached 2021-05-07 14:31:08 +02:00
Damien Elmes
83850a1582 update license checker for security issue in dependency 2021-05-07 18:50:25 +10:00
Damien Elmes
397e226f8b update JS deps
Unfortunately we're still stuck with a security alert about underscore,
because the latest jsdoc uses an old underscore, and protobufjs depends
on it.

https://github.com/jsdoc/jsdoc/issues/1908
2021-05-07 18:03:22 +10:00
Damien Elmes
9674860e2b tweak hover css to work with latest js deps 2021-05-07 17:57:28 +10:00
Henrik Giesel
49745e1282 Fix module name formatting 2021-05-07 02:14:54 +02:00
Henrik Giesel
cc02563ca1 Fix Preview tooltip 2021-05-07 02:04:44 +02:00
Henrik Giesel
f50d81f787 Fix unused CSS selector issue in graphs introduced by updating Svelte 2021-05-07 02:04:44 +02:00
Henrik Giesel
15f306950d Use any in toolbar.ts for using context as parameter 2021-05-07 02:04:44 +02:00
Henrik Giesel
81cf2c9bd4 Turn on editor:eslint 2021-05-07 02:04:44 +02:00
Henrik Giesel
d1c99cfb7b Add copyright header 2021-05-07 02:04:44 +02:00
Henrik Giesel
b2eec9c3c3 Add ts-expect-error for module import in EditorToolbar 2021-05-07 02:04:44 +02:00
Henrik Giesel
2112b419f9 Fix ButtonDropdown 2021-05-07 02:04:44 +02:00
Henrik Giesel
193e2f9e60 Make LabelButtons support active notion 2021-05-07 02:04:44 +02:00
Henrik Giesel
0f4d4eb5a9 Only initialize extension apis if necessary 2021-05-07 02:04:44 +02:00
Henrik Giesel
c9368ed98f Add lefttopbtns as AddonButtons 2021-05-07 02:04:44 +02:00
Henrik Giesel
928f486867 Add ButtonToolbarItem as interface for modifying button groups 2021-05-07 02:04:44 +02:00
Henrik Giesel
4a6b3b3786 Clean up ButtonGroup and factor out extension logic 2021-05-07 02:04:44 +02:00
Henrik Giesel
e80f43e8fc Enable setting of PreviewButton and hiding of cloze button again 2021-05-07 02:04:42 +02:00
Henrik Giesel
862905c58a Fix typing issues 2021-05-07 02:03:55 +02:00
Henrik Giesel
9c1936698c Set tooltip for buttons correctly 2021-05-07 02:03:55 +02:00
Henrik Giesel
0371405c23 Use ButtonGroupItem for all buttons in editor 2021-05-07 02:03:55 +02:00
Henrik Giesel
bcb1b5d214 Set ButtonPosition via ButtonGroupItem 2021-05-07 02:03:55 +02:00
Henrik Giesel
e1cc22b9ee Add hiding functionality in ButtonGroup 2021-05-07 02:03:55 +02:00
Henrik Giesel
26f85a0f9d Add API for adding new buttons, updating existing ones in ButtonGroup 2021-05-07 02:03:55 +02:00
Henrik Giesel
413ac6cf63 Fix issue with dropdowns 2021-05-07 02:03:55 +02:00
Henrik Giesel
c1adebf2da Add .dropdown-menu class to DropdownMenu 2021-05-07 02:03:55 +02:00
Henrik Giesel
9d9df2a04b Add back ColorButtons 2021-05-07 02:03:55 +02:00
Henrik Giesel
bd31a19852 Activate FormatBlockButtons 2021-05-07 02:03:55 +02:00
Henrik Giesel
baff3df381 Add all format inline buttons 2021-05-07 02:03:55 +02:00
Henrik Giesel
982c85ded6 Export module functions from EditorToolbar 2021-05-07 02:03:55 +02:00
Henrik Giesel
0baf14dc8b Refactor {CommandIcon,Icon,Square}Button into IconButton and WithState 2021-05-07 02:03:55 +02:00
Henrik Giesel
2f5074bff6 Make StickyBar flex 2021-05-07 02:03:55 +02:00
Henrik Giesel
8aa3f5f2fa Translate ts files in ts/editor to svelte files 2021-05-07 02:03:55 +02:00
Henrik Giesel
47b1cfe804 Rename editor-toolbar to components 2021-05-07 02:03:55 +02:00
Henrik Giesel
59876439e7 Add StickyBar.svelte WithTheming.svelte 2021-05-07 02:03:55 +02:00
Henrik Giesel
4736b1ce1c Move Notetype buttons to using slots instead of dynamic components 2021-05-07 02:03:55 +02:00
Henrik Giesel
6d6c798ca3 Simplify structure of EditorToolbar and ButtonGroup in editor HTML file 2021-05-07 02:03:55 +02:00
Damien Elmes
af2c7c0744 fix missing keyboard modifier translations on Linux/Windows
https://forums.ankiweb.net/t/card-browser-hotkeys-semi-broken/9815
2021-05-07 09:30:06 +10:00
Damien Elmes
4951ef12c9 fix properties missing from generated Svelte .d.ts files
They're currently being set to 'any', as we're not providing the dependencies
to the tsc invocation. Older Anki versions had the same issue, and we'll
want to fix that as well, but for now this at least restores the missing
props.
2021-05-04 18:55:58 +10:00
Damien Elmes
a639048a6b i18n deckoptions; move some options into separate 'advanced' section 2021-04-26 23:34:58 +10:00
Damien Elmes
8475e7829b defer bounds checking in SpinBox to focus loss
The previous behaviour was preventing a backspace to remove the
current text when a minimum of 1 or greater was supplied
2021-04-26 20:17:48 +10:00
Henrik Giesel
268adf1d03 Move EditorToolbar API into EditorToolbar.svelte 2021-04-25 19:15:00 +02:00
Henrik Giesel
f5fba15435 Initialize editor toolbar via function, not web component 2021-04-25 18:32:01 +02:00
Damien Elmes
09629e4e4a add translations for deck option warnings
+ cap maximum recommended review limit to 9999, since we don't allow
the user to set it higher
2021-04-25 23:06:35 +10:00
Damien Elmes
4ab2d0b4a9 subLabel->tooltip 2021-04-25 21:37:21 +10:00
Damien Elmes
ab00da0593 slide warnings in/out 2021-04-25 21:10:53 +10:00
Damien Elmes
56800737e6 use lodash instead of json in RevertButton 2021-04-25 19:34:07 +10:00
Damien Elmes
b7747b6a38 experimental support for extending add-ons screen with Svelte 2021-04-25 19:33:18 +10:00
Damien Elmes
b485b8cbb9 deckconfig->deckoptions 2021-04-25 19:02:30 +10:00
Damien Elmes
d6df6c0f89 RevertIcon->RevertButton 2021-04-25 19:02:30 +10:00
Damien Elmes
e2a4d6041c basic support for add-ons in new deck config screen
- expose the data as a writable store
- currently only supports raw HTML; example to come
- fix changes not marking a deck config as modified
- the data is currently packed into the deckconfig object, but we
may move these to a separate store in the collection config in the
future, like is done with decks/notetypes
2021-04-24 11:08:01 +10:00
Damien Elmes
c71b684a94
Merge pull request #1150 from hgiesel/notetypechoose
Editor Toolbar cleanup
2021-04-24 11:04:24 +10:00
Henrik Giesel
5709183fe1 Prefer slicing and splicing 2021-04-24 01:48:22 +02:00
Henrik Giesel
af5d7cc6a3 Fix typing typo 2021-04-24 01:15:16 +02:00
Henrik Giesel
53bb8c7b28 Add addMenu and updateMenu, avoid using {buttons,menus}Promise outside of class 2021-04-24 01:08:55 +02:00
Henrik Giesel
9f7a187d4a Add mostly working addcards topbar 2021-04-24 00:00:32 +02:00
Henrik Giesel
baeaa29dae Simplify Handling of margins and padding of ButtonGroup & ButtonDropdown 2021-04-23 22:22:53 +02:00
Henrik Giesel
9629d3201b Simplify tag structure in ButtonGroup 2021-04-23 21:42:44 +02:00
Henrik Giesel
8ecd4f8c95 Add simple version of Chooser buttons 2021-04-23 21:25:44 +02:00
Henrik Giesel
48b7cb49f9 Make update algorithm in editor-toolbar/index.ts recursive 2021-04-23 20:50:09 +02:00
Henrik Giesel
6ae368ebac Reduce typing overhead in ts/editor-toolbar/index.ts and export buttonGroup 2021-04-23 19:05:43 +02:00
Henrik Giesel
bda99ee0f1 Add IterableToolbarItem interface for easier typing 2021-04-23 18:53:52 +02:00
Henrik Giesel
7cd779063f Fix regression from 70c3b51b0b
Negative indices were not treated correctly (as offset from end)
2021-04-23 18:21:03 +02:00
Henrik Giesel
d250d39d64 Add withLabel component 2021-04-23 17:20:52 +02:00
Henrik Giesel
4379f1e84f Make dynamicComponents usable for addons, rather than the components directly
rawButton({ html: ... })

instead of

{ component: RawButton, html: ... }
2021-04-23 16:43:36 +02:00
Damien Elmes
ee6f5cd0fd onDestroy must be called from top level 2021-04-23 20:25:47 +10:00
Damien Elmes
aba8df7708 make return value match mergeTooltipAndShortcut() signature 2021-04-23 19:48:36 +10:00
Damien Elmes
70c3b51b0b remove nested terneries and enable lint
@hgiesel would you mind quickly checking I've correctly captured
the logic here?
2021-04-23 13:00:18 +10:00
Damien Elmes
5a8b9f403d move isApplePlatform() into lib/shortcuts, and remove sveltelib file 2021-04-23 11:22:30 +10:00
Damien Elmes
79b62682ab use new registerShortcut() fuction in DeckConfigPage 2021-04-23 11:20:12 +10:00
Damien Elmes
00f170dddc update remaining anki/ references 2021-04-23 10:16:40 +10:00
Henrik Giesel
1d72599a37 Rename anki/ to lib/ for export
import _ from "anki/x";

will become

import _ from "lib/x";

to fit the directory name.
2021-04-23 10:02:28 +10:00
Damien Elmes
8b4446d044
Merge pull request #1148 from hgiesel/updatetypescript
Update Typescript to 4.2.4
2021-04-23 09:48:34 +10:00
Damien Elmes
02ebab7491
Merge pull request #1146 from hgiesel/shortcuts
Shortcut API for Editor
2021-04-23 09:44:01 +10:00
Henrik Giesel
dc10e6235d Update eslint to 4.22.0 2021-04-22 19:19:39 +02:00
Henrik Giesel
5a11566ff2 Import createPatch in ts/sql_format directly 2021-04-22 18:43:35 +02:00
Henrik Giesel
a7c3aec5dc Update Typescript to 4.2.4 2021-04-22 18:33:42 +02:00
Henrik Giesel
22a07a3a58 Separate type import for WithShortcut 2021-04-22 18:19:09 +02:00
Henrik Giesel
5197e3b779 Prefer optionalModifiers over register multiple shortcuts 2021-04-22 18:15:25 +02:00
Henrik Giesel
31e4b79ff4 Add optionalModifiers parameter to registerShortcut 2021-04-22 17:28:38 +02:00
Henrik Giesel
7aaf7b7fe0 Add license headers 2021-04-22 16:49:30 +02:00
Henrik Giesel
57357a42a5 Satisfy formatter 2021-04-22 15:24:27 +02:00
Henrik Giesel
f6ef4d43cb Use registerShortcut in inputHandlers + Avoid focus on color picker 2021-04-22 15:09:09 +02:00
Henrik Giesel
8ca40369a7 Fix typo deregisters 2021-04-22 14:54:29 +02:00
Henrik Giesel
47809f6230 Add shortcut labels for ColorPicker and Latex items 2021-04-22 14:35:44 +02:00
Henrik Giesel
3cf7db8557 Add better better shortcutLabel support for buttons 2021-04-22 14:18:48 +02:00
Damien Elmes
e5c5c91ec8 override some bootstrap styles for night mode
There's probably a better way to accomplish this - fixes welcome!

Also fix the page reloading when enter hit inside the modal.
2021-04-22 21:57:32 +10:00
Henrik Giesel
4a264cd8b7 Add editing fluent strings without attached keyboard shortcuts 2021-04-22 13:38:37 +02:00
Henrik Giesel
e95e78da9c Add getPlatformString for making shortcuts to platform string 2021-04-22 13:04:24 +02:00
Damien Elmes
1ddfd73da6 catch ctrl/cmd+enter to save settings 2021-04-22 19:54:57 +10:00
Damien Elmes
dc46ece8f2 move top padding into sticky area to prevent movement 2021-04-22 19:54:50 +10:00
Damien Elmes
5a531cd28c disable overscroll on html as well 2021-04-22 19:54:44 +10:00
Damien Elmes
defd28caca more layout tweaks
- reduce maximum width
- de-emphasise revert and info buttons
- reduce grid margin
2021-04-22 18:11:27 +10:00
Damien Elmes
a149048b0a add a workaround for bad save button in rtl mode
Bootstrap provides a different set of CSS for RTL languages, but having
to deal with two separate sets of css files depending on the language
would be a PITA.
2021-04-22 17:45:16 +10:00
Damien Elmes
b9a13496ba fix add/rename dialog right-aligning, and RTL issue 2021-04-22 17:31:33 +10:00
Damien Elmes
0e9f36c416 fill width when steps exceed 2; add bottom margin 2021-04-22 17:28:14 +10:00
Damien Elmes
052c992093 allow checkboxes and select entries to take up whole line 2021-04-22 16:47:10 +10:00
Damien Elmes
5eb5664c12 switch config to a grid; move info to popups 2021-04-22 15:39:50 +10:00
Damien Elmes
c5eedfb21e fix select appearance inside webview 2021-04-22 11:41:41 +10:00
Henrik Giesel
2109b67caf Move up cloze id 2021-04-22 03:37:01 +02:00
Damien Elmes
7dc131c3de minor layout tweaks to deck conf screen
- more space for dropdown
- limit width of main area so popups wrap correctly
- experiment with different colour dropdown
2021-04-22 11:33:27 +10:00
Henrik Giesel
d2ca94a29d Move other buttons to WithShortcut 2021-04-22 03:25:31 +02:00
Damien Elmes
30f5269304 hook new deck config screen up behind an env var 2021-04-22 10:59:16 +10:00