Henrik Giesel
732886ea7e
Parameterize overlay handle offsets
2021-09-06 21:15:37 +10:00
Henrik Giesel
02413acd88
Move more logic into HandleSelection
2021-09-06 21:15:37 +10:00
Henrik Giesel
b7d2791e92
Remove unused import tick
2021-09-06 21:15:37 +10:00
Henrik Giesel
ce8abfb1d0
Implement HandleLabel
2021-09-06 21:15:37 +10:00
Henrik Giesel
e59d02178c
Implement HandleBackground
2021-09-06 21:15:37 +10:00
Henrik Giesel
384bb70fd5
Remove unused nightMode from ImageHandle
2021-09-06 21:15:37 +10:00
Henrik Giesel
29d6d524d0
Introduce HandleControl
2021-09-06 21:15:37 +10:00
Henrik Giesel
fce34cafd9
Introduce HandleSelection.svelte
2021-09-06 21:15:37 +10:00
Henrik Giesel
b501326c89
Change SizeSelect.images back to const: no reactivity needed here
2021-09-06 21:15:37 +10:00
Henrik Giesel
598d3bfbc5
Also check for sizeSelect.includes
2021-09-06 21:15:37 +10:00
Henrik Giesel
76d56d73a7
Make images in SizeSelect variable again
2021-09-06 21:15:37 +10:00
Henrik Giesel
f7a99063a8
Only allow ImageHandle on valid pictures (determined in SizeSelect)
2021-09-06 21:15:37 +10:00
Henrik Giesel
299892c40f
Fix resetting image-handle-bg on no activeImage
2021-09-06 21:15:37 +10:00
Henrik Giesel
480138f8e3
Set max-width of images in the reviewer to 100%
2021-09-06 21:15:37 +10:00
Henrik Giesel
1c8d5d3fa7
Make first adjustment of size dimensions wait for setting of dimensions label
2021-09-06 21:15:37 +10:00
Henrik Giesel
55b63b9a45
Better algorithmus for minimum resize + prevent overflow of dimensions
2021-09-06 21:15:37 +10:00
Henrik Giesel
62639f3108
Constrain with proportions in SizeSelect
2021-09-06 21:15:37 +10:00
Henrik Giesel
ac182473ac
Show custom dimensions again
2021-09-06 21:15:37 +10:00
Henrik Giesel
a7d117b6bc
Detect active status again
2021-09-06 21:15:37 +10:00
Henrik Giesel
027db43664
Implement new resizing algorithm
...
* resizes against the original parameters
2021-09-06 21:15:37 +10:00
Henrik Giesel
e2d345bfd2
Manage CSSStyleSheet from within SizeSelect where each image has one rule
2021-09-06 21:15:37 +10:00
Henrik Giesel
16a394fa7d
Hide Float icons when width too small + Avoid too small resizing
2021-09-06 21:15:37 +10:00
Henrik Giesel
ccc44d1632
Revert "During resizing, make the smaller dimension decide the new dimensions"
...
This reverts commit 5bad9a913ce7b4a4cc58106936203fddec37d6da.
The previous behavior was the one you can observe in most graphical editors:
The bigger dimension (width or height) will decide the size, not the smaller one.
2021-09-06 21:15:37 +10:00
Henrik Giesel
0ffa5030e5
During resizing, make the smaller dimension decide the new dimensions
2021-09-06 21:15:37 +10:00
Henrik Giesel
a7fa217306
Reset height, so it defaults to "auto"
...
* This allows more flexible dynamic resizing for the image in the (p)reviewer
2021-09-06 21:15:37 +10:00
Henrik Giesel
3fe1180f39
Add margin to other side of dimensions
2021-09-06 21:15:37 +10:00
Henrik Giesel
63fed87b48
Do not allow for resizing when in constrained mode
2021-09-06 21:15:37 +10:00
Henrik Giesel
c4f47be673
Don't show same dimensions twice if there are no custom dimensions
2021-09-06 21:15:37 +10:00
Henrik Giesel
db558c869d
Change position of float buttons and dimension
...
* So we can show dimensions at lower image sizes
2021-09-06 21:15:37 +10:00
Henrik Giesel
fce63ed718
Deal with case where no style.{width,height} is set for size dimensions
2021-09-06 21:15:37 +10:00
Henrik Giesel
460b6f33c9
Dispaly "actualHeight / actualWidth" even in constrained mode
2021-09-06 21:15:37 +10:00
Henrik Giesel
2a548f2ebd
Turn off no-explicit-warning for editing-area
2021-09-06 21:15:36 +10:00
Henrik Giesel
e8ec6b61a7
Use ResizeObserver to resize overlay if necessary
2021-09-06 21:15:36 +10:00
Henrik Giesel
2224d1c287
Reset image handle on keydown and blur
2021-09-06 21:15:36 +10:00
Henrik Giesel
796037649a
Better RTL support
2021-09-06 21:15:36 +10:00
Henrik Giesel
9342d19504
Move selector / active logic up to ImageHandle
2021-09-06 21:15:36 +10:00
Henrik Giesel
47cd308251
Do not use width/height auto important to avoid enlarging smaller images
2021-09-06 21:15:36 +10:00
Henrik Giesel
7696a181f3
Implement Maximum image size mechanism
2021-09-06 21:15:36 +10:00
Henrik Giesel
a6b071d849
Add float tooltips
2021-09-06 21:15:36 +10:00
Henrik Giesel
5257a4db26
Allow SW resize
2021-09-06 21:15:36 +10:00
Henrik Giesel
5e91108a79
Bind to style properties instead of events
2021-09-06 21:15:36 +10:00
Henrik Giesel
b919b9cb7f
Add functionality to set float of image
2021-09-06 21:15:36 +10:00
Henrik Giesel
2a81273115
Image resizes preserves ratio
2021-09-06 21:15:36 +10:00
Henrik Giesel
9b97320438
Add image-handle-dimensions to show dimensions directly on image
2021-09-06 21:15:36 +10:00
Henrik Giesel
53d1435aa7
First implementation of ImageHandle
2021-09-06 21:15:36 +10:00
Damien Elmes
3e5a2a92c7
Introduce editable-container
...
Contains the shadow root, and references to the styles.
Is ignorant of Editable.
Is necessary, so our we editable.scss does not need to contain
information about Codable, ImageHandle or all those other things which
have nothing to do with Editable
2021-09-06 21:15:36 +10:00
Damien Elmes
f07b72a708
Merge pull request #1332 from hgiesel/svelteexportcontext
...
Shorten CSS references for `@import` or `@use`
2021-09-06 21:10:27 +10:00
Henrik Giesel
dc9a65bd8b
Disallow setting, deleting or defining properties on packages
2021-09-03 00:52:39 +02:00
Henrik Giesel
7cb3c4a996
Add ts/sass/anki, a symlink to ts/sass for add-ons
2021-09-03 00:18:17 +02:00
Henrik Giesel
269b75ef4e
Fix for svelte_check
2021-09-02 23:37:17 +02:00
Henrik Giesel
1f34b666b9
Uniformly shorten SCSS imports/uses
2021-09-02 23:37:17 +02:00
Henrik Giesel
c521568303
Directly include CSS from bootstrap and codemirror packages
2021-09-02 23:37:16 +02:00
Henrik Giesel
0667706d60
Add source for block level elements
2021-09-02 22:31:25 +10:00
Henrik Giesel
f7954af1be
Remove special treatment of empty anki-editable
2021-09-02 22:31:25 +10:00
Henrik Giesel
47252983c5
Check for non-existence of block tags instead of exclusive existence of inline tags in editable
2021-09-02 22:31:25 +10:00
Damien Elmes
f5bbeba218
Merge pull request #1350 from hgiesel/exportshortcuts
...
Implement register-package and export some packages
2021-09-02 22:23:12 +10:00
Damien Elmes
575ddb6cc6
Merge pull request #1351 from hgiesel/fontisinline
...
Add FONT as an inline tag
2021-09-02 22:22:19 +10:00
Damien Elmes
3fc1ead668
don't allow | in generic family
2021-09-02 21:05:17 +10:00
Henrik Giesel
bafbdb3835
Add FONT as an inline tag
2021-08-31 13:59:07 +02:00
Henrik Giesel
76ca1356ac
Implement register-package and export some packages
...
Exported packages are:
* anki/packages
* anki/shortcuts
* anki/bridgecommand
2021-08-30 14:41:40 +02:00
Damien Elmes
481a87367c
fix incorrect calendar day labels
...
https://forums.ankiweb.net/t/day-of-the-week-legend-on-heatmap/9450/7
2021-08-24 12:17:35 +10:00
Damien Elmes
aaa6ecb7e6
Merge pull request #1340 from hgiesel/exportinternal
...
Export Svelte internals
2021-08-24 10:42:17 +10:00
Damien Elmes
875fd62264
expose require() instead of the svelte global
...
- Means add-on authors should not need to inject any code in their build
- Should be more flexible - we can export multiple libraries if we wish,
and don't have to worry about require() being clobbered by old add-ons.
2021-08-24 10:22:07 +10:00
Henrik Giesel
119d2e0eb4
Rename cross-unit to export-internal
2021-08-23 23:45:50 +02:00
Henrik Giesel
8f8914f3c7
Update Svelte to 3.42.2
2021-08-23 23:38:16 +02:00
Henrik Giesel
0585a5da3e
Export WithShortcut
2021-08-23 21:23:04 +02:00
Henrik Giesel
5c987896cf
Export svelte_internal as library on window object
...
Closes https://github.com/ankitects/anki/issues/1328 .
2021-08-23 21:16:15 +02:00
Damien Elmes
21c2fe7b2d
add note about interday learning cards being fetched preferentially
...
+ priority->order
2021-08-22 15:32:46 +10:00
Damien Elmes
0aae073056
adding options to sort by ascending/descending ease
2021-08-22 15:32:46 +10:00
Damien Elmes
3ec3b4242f
Merge pull request #1335 from hikaru-y/fix-editor-fontfamily
...
Quote font family names
2021-08-20 14:39:29 +10:00
Damien Elmes
104a24bc1d
add options to v3 to preserve new card gather order
...
Allows cards to be presented in deck order when gather priority is set
to 'deck'.
2021-08-20 12:03:32 +10:00
hikaru-y
0331da21e6
Quote font family names, except for generic families
...
Fixes https://forums.ankiweb.net/t/font-script-is-not-changing-in-the-anki-windows/12465
2021-08-20 04:31:11 +09:00
Damien Elmes
6ddbe8fd3e
put reviews at bottom of reviews graph
...
https://forums.ankiweb.net/t/new-reviews-graph-design-is-worse-than-it-was-in-2-1-40/9807
2021-08-19 21:43:00 +10:00
Damien Elmes
6410e66857
filtered decks w/ scheduling disabled in v3 now log reviews
2021-08-19 20:25:29 +10:00
Damien Elmes
fb7eabcb80
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
e23737fb6c
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
37ed7f9bae
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
eae17ffbff
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
b396ef558c
Satisfy eslint
2021-08-03 06:12:04 +02:00
Henrik Giesel
00b990b79e
Add tooltip for Toggly sticky icon
2021-08-03 06:02:29 +02:00
Henrik Giesel
485460870c
Increase inactive opacity a little for better discoverability
2021-08-03 05:52:57 +02:00
Henrik Giesel
2649dc0ad7
Add toggle sticky shortcuts F9 and Shift+F9
2021-08-03 05:52:07 +02:00
Damien Elmes
9a809af6ab
Merge pull request #1320 from hgiesel/colorpickerplus
...
Remember last text and highlight color again
2021-08-03 09:07:46 +10:00
Henrik Giesel
39566638f3
Remember last text and highlight color again
2021-08-02 23:12:00 +02:00
Damien Elmes
bd146fa4fb
update congrats screen periodically; automatically move back to study
2021-08-02 16:05:18 +10:00
Damien Elmes
86d5d7e020
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
b5808eea9e
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
94eff9a864
Install Ctrl+Shfit+V paste only on Apple platforms
2021-07-31 03:43:10 +02:00
Henrik Giesel
8c6df4461d
Remove registerShortcut for Ctrl+C/V/A/X from editor/index.ts
2021-07-30 22:28:40 +02:00
Damien Elmes
7513f9789f
export jQuery, not just $
...
https://github.com/ankitects/anki/pull/1314#issuecomment-889597619
2021-07-30 18:30:37 +10:00
Damien Elmes
d511f2bd18
Merge pull request #1314 from hgiesel/fixjqueryreviewer
...
Export jquery correctly
2021-07-29 23:26:05 +10:00
Henrik Giesel
652e4e6368
Export jquery correctly
2021-07-29 15:18:51 +02:00
Damien Elmes
83a4e510da
Merge pull request #1312 from hgiesel/smalleditorrefactors
...
Use :host instead of :host-context
2021-07-28 13:19:04 +10:00
Damien Elmes
cd784dd652
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
e3b970961f
add reviewer_extras.js back
2021-07-27 15:13:39 +10:00
Henrik Giesel
f682cdf755
Use :host instead of :host-context
2021-07-26 16:06:50 +02:00
Henrik Giesel
8335f81396
Use event object in createShortcut, fix F8 for highlight
2021-07-26 06:15:30 +02:00
Henrik Giesel
78f3aff987
Rename to text color and text color highlight
2021-07-26 05:28:28 +02:00
Henrik Giesel
380ba8a5cc
Use new for-loop
2021-07-19 01:34:14 +02:00
Henrik Giesel
07e07aa6da
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
2f56b43859
expose _queueAction
...
https://github.com/ankitects/anki/pull/1292#issuecomment-881795577
2021-07-17 12:12:07 +10:00
Damien Elmes
a1f0287d4a
css_browser_selector was logging to the console
2021-07-17 09:25:05 +10:00
Damien Elmes
e80d539f87
keep _updateQA exposed for now, as some add-ons use it
2021-07-17 09:11:05 +10:00
Henrik Giesel
36ebcd8bd8
Allow any in reviewer/index.ts
2021-07-16 17:28:31 +02:00
Henrik Giesel
45fa549540
Add back opacity change
2021-07-16 17:26:04 +02:00
Henrik Giesel
170bc5c25e
Revert to MathJax through script tag
2021-07-16 16:56:57 +02:00
Henrik Giesel
4888f5ee79
Add copyright header
2021-07-16 16:56:57 +02:00
Henrik Giesel
0695638ed8
Satisfy formatter
2021-07-16 16:56:57 +02:00
Henrik Giesel
0bb6f56c74
Satisfy eslint
2021-07-16 16:56:56 +02:00
Henrik Giesel
28e2f62793
Remove protobuf important from reiewer (no longer necessary (?))
2021-07-16 16:56:56 +02:00
Henrik Giesel
cb890b849b
Do not set opacity to 0 in reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
70040d508e
Include MathJax over ts/reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
dbbb590c2f
Simplify some reviewer code
2021-07-16 16:56:56 +02:00
Henrik Giesel
6ef8e17f60
Create reviewer/images.ts
2021-07-16 16:56:56 +02:00
Henrik Giesel
c62d2dc033
Export jquery via ts/reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
8ee6eb71eb
Include css-browser-selector via ts/reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
2536063784
Export getTypedAnswer
2021-07-16 16:56:56 +02:00
Henrik Giesel
791d7f2f4b
Move reviewer to ts/reviewer
2021-07-16 16:56:55 +02:00
Damien Elmes
1d4fb0ca50
add note about display order using current deck
2021-07-13 15:58:06 +10:00
Damien Elmes
314df22e1e
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
e7f249f4b7
Merge pull request #1286 from ankitects/proto
...
Split backend.proto into multiple files
2021-07-11 19:53:04 +10:00
Damien Elmes
f0ce1cfc9d
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
e3b53fc078
split out remaining tags, stats, media and rendering
2021-07-10 23:16:18 +10:00
Damien Elmes
673955de5b
split out sync, search, scheduler & config
2021-07-10 21:33:12 +10:00
Damien Elmes
1fb86d499d
split out decks, deckconfig, notes, notetypes
2021-07-10 20:44:22 +10:00
Damien Elmes
c43674762e
split out cards and collection
2021-07-10 19:52:31 +10:00
Damien Elmes
5255409093
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
3ca4ca397a
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
f9e86ccf6f
Tweak deck options tooltips for RTL languages
2021-07-10 00:45:10 +03:00
Damien Elmes
14263c7a79
move protobuf into separate folder in preparation for multiple files
2021-07-09 21:02:40 +10:00
hikaru-y
d7ec723f4b
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
0043910ae7
Merge pull request #1280 from hgiesel/addonimprov2
...
Export via components for Deck Options
2021-07-07 09:53:05 +10:00
Damien Elmes
13dcc9636e
Merge pull request #1279 from hgiesel/addonimprov
...
Remove disabled / Export via Components
2021-07-07 09:31:00 +10:00
Henrik Giesel
30a50b746b
Export editor globals under anki namespace
2021-07-06 03:48:33 +02:00
Henrik Giesel
a3a558159b
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
f323f96a85
Export under anki.components
2021-07-06 03:36:02 +02:00
Henrik Giesel
9546c49f93
Remove WithShortcut for now - it does not work
2021-07-05 22:32:19 +02:00
Henrik Giesel
fb3545545c
disabledKey => fieldFocusedKey
2021-07-05 18:15:03 +02:00
Henrik Giesel
57fe9f91c2
Fix issues with sometimes cause assignment of wrong position value
2021-07-05 17:17:58 +02:00
Henrik Giesel
9e415344ae
Use Components.svelte instead of exporting from EditorToolbar.svelte
2021-07-05 16:19:03 +02:00
Damien Elmes
42514dd008
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
22e036a129
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
447bd2671c
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
5b2290f868
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
76f432c94f
Allow non-null assertion in focus-handlers
2021-07-03 01:14:59 +02:00
Henrik Giesel
1968972c1c
Move selection into editable, if it's not there after focus
2021-07-03 01:00:52 +02:00
Damien Elmes
f4b15e1351
Merge pull request #1266 from hgiesel/renamelib
...
More uniform file naming
2021-07-02 09:31:52 +10:00
Henrik Giesel
db4cbfcb26
More uniform file naming
...
kebap-case for .ts, .scss, .html, and directories
2021-07-01 12:24:16 +02:00
Henrik Giesel
2680ffb969
Use better cloze button icon
2021-07-01 11:46:39 +02:00
Henrik Giesel
27335e1d33
Refactor WithDropdown to be more versatile and cause less bugs
2021-06-30 14:01:33 +02:00