Henrik Giesel
f4aa6bf90b
Stop propagation for paste in MathjaxHandle editor
2021-09-15 22:14:38 +02:00
Henrik Giesel
dbaba6233a
Prevent hiding handles by clicking on handles
2021-09-15 17:56:56 +02:00
Henrik Giesel
d4c535183b
Remove style attribute after remove float property if not styling left
2021-09-15 17:36:48 +02:00
Henrik Giesel
e10a5f0a38
Always correctly update MathjaxHandle position
2021-09-15 17:05:43 +02:00
Henrik Giesel
b7d8ae8f22
Correctly pass down dropdownObject...
2021-09-15 16:16:42 +02:00
Henrik Giesel
9d07639829
Using dropdownApi is much less faulty than using dropdownObject
...
- Update MathjaxSelection and Dropdown more reliably
2021-09-15 15:52:56 +02:00
Henrik Giesel
ca4430d922
Make StickyBottom actually stick and make editor fullsize + flexbox
2021-09-15 15:21:37 +02:00
Henrik Giesel
50cd722dc8
Import saveField from editor/saving.ts
2021-09-15 14:09:25 +02:00
Henrik Giesel
0fc5c87c1a
Remove duplicate outline:none
2021-09-15 13:46:07 +02:00
Henrik Giesel
05cf123959
Apply specific CSS to Mathjax CodeMirror
2021-09-15 13:46:04 +02:00
Henrik Giesel
212b2ce8ba
Satisfy eslint
2021-09-15 13:45:20 +02:00
Henrik Giesel
745c67fee5
Use editorfield instead of editor-field
2021-09-15 13:45:20 +02:00
Henrik Giesel
04d9ab1f56
Vertically center inline Mathjax
2021-09-15 13:45:20 +02:00
Henrik Giesel
75ee705c4e
Generalize accesing anki-mathjax from image in MathjaxHandle
2021-09-15 13:45:20 +02:00
Henrik Giesel
f2dbe2415e
Add copyright header to saving.ts
2021-09-15 13:45:20 +02:00
Henrik Giesel
722831ea8d
Satisfy eslint
2021-09-15 13:45:19 +02:00
Henrik Giesel
975e798d70
Define CodeMirror in external codeMirror.ts
2021-09-15 13:45:19 +02:00
Henrik Giesel
5b03f51748
Correctly import CodeMirror
2021-09-15 13:45:19 +02:00
Henrik Giesel
9f201b7a7a
Include codemirror libs for svelte
2021-09-15 13:45:19 +02:00
Henrik Giesel
65be772799
Satisfy eslint
2021-09-15 13:45:19 +02:00
Henrik Giesel
48912b016e
Remove empty constructor
2021-09-15 13:45:19 +02:00
Henrik Giesel
970a5f008b
Focus on mount when using Mathjax shortcuts
2021-09-15 13:45:17 +02:00
Henrik Giesel
32bdf0f242
Fix alignment of empty icon
2021-09-15 13:43:37 +02:00
Henrik Giesel
d6e2b794ec
Change Wrap commands / shortcuts to use anki-mathjax
2021-09-15 13:42:36 +02:00
Henrik Giesel
eb2c81c79f
Refactor editable/mathjax.ts
2021-09-15 13:33:25 +02:00
Henrik Giesel
9d671581ac
Set fixed fontSizef or mathjax in editor for now
2021-09-15 13:33:25 +02:00
Henrik Giesel
6c0e649c79
Set color of Mathjax depending on nightMode
2021-09-15 13:33:24 +02:00
Henrik Giesel
7b509f8313
Wrap Mathjax buttons into toolbar
2021-09-15 13:33:24 +02:00
Henrik Giesel
befdbf2563
Move wrap to lib to allow editable to use it
2021-09-15 13:33:24 +02:00
Henrik Giesel
1f477916e6
Move setting inCodable to false into codable
2021-09-15 13:33:23 +02:00
Henrik Giesel
64b971c464
Display Mathjax error as title (tooltip)
2021-09-15 13:33:23 +02:00
Henrik Giesel
542c6965fb
Show title on mathjax image
2021-09-15 13:33:22 +02:00
Henrik Giesel
c273084243
Display error Mathjax correctly
2021-09-15 13:33:22 +02:00
Henrik Giesel
5ddbcab636
Show math icon if Mathjax is empty
2021-09-15 13:33:22 +02:00
Henrik Giesel
428b292768
Disallow draggin of mathjax + only ever have one handle active
2021-09-15 13:33:21 +02:00
Henrik Giesel
875c6fe85f
Fix return behavior on Mathjax decorated element
2021-09-15 13:33:21 +02:00
Henrik Giesel
b7be5ed3b5
Watch for childList instead of subtree
2021-09-15 13:33:21 +02:00
Henrik Giesel
dfee30dbe5
Display Mathjax editor and buttons at the same time
2021-09-15 13:33:20 +02:00
Henrik Giesel
8cadb90d29
Generalize ChangeTimer and use it in Mathjax editor
2021-09-15 13:33:20 +02:00
Henrik Giesel
631b985d12
Add ResizeObserver for MathjaxHandle
2021-09-15 13:33:20 +02:00
Henrik Giesel
f342edc43c
Update editor when editing Mathjax
2021-09-15 13:33:19 +02:00
Henrik Giesel
5646bd34b4
Wait for stylesheets to load before setting field content
2021-09-15 13:33:19 +02:00
Henrik Giesel
269f09d739
Move elements inserted into decorated component no matter the position
2021-09-15 13:33:19 +02:00
Henrik Giesel
35098d0f40
Fix some cases where Mathjax whitespace formatting is destroyed
2021-09-15 13:33:19 +02:00
Henrik Giesel
0a003c7856
Use CodeMirror for Mathjax Editor
2021-09-15 13:33:18 +02:00
Henrik Giesel
0bb3696aa1
Autoupdate mathjax image
...
* propably should use changeTimer here
2021-09-15 13:33:18 +02:00
Henrik Giesel
c2fa9f3218
Fix focus issues with Mathjax editor
2021-09-15 13:33:18 +02:00
Henrik Giesel
e48ab77de2
First implementation of MathjaxHandleEditor
...
+ use manual focus highlighting on editing-area
2021-09-15 13:33:17 +02:00
Henrik Giesel
02d76240dd
Make Mathjax menu also a floating dropdown menu like ImageHandle
2021-09-15 13:33:17 +02:00
Henrik Giesel
5589e2f7e1
Fix MathJax overlay after rebase
2021-09-15 13:33:17 +02:00
Henrik Giesel
90b0000f7b
Add InlineBlock buttons to mathjax components
2021-09-15 13:33:12 +02:00
Henrik Giesel
70e4fd5a3b
Add HandleControl to MathjaxHandle
2021-09-15 13:32:33 +02:00
Henrik Giesel
5bef89312e
Display Mathjax handle when clicking mathjax
2021-09-15 13:32:33 +02:00
Henrik Giesel
7981cefb0c
Rename showImageHandle to showHandles
2021-09-15 13:32:33 +02:00
Henrik Giesel
b092bd9f6d
Formalize "Decorated components API"
2021-09-15 13:32:32 +02:00
Henrik Giesel
022143b38b
Implement moveNodesInsertedBeforeEndToAfterEnd
...
This will prevent the user typing into the decorated elements
by accident because they place cursor behind it
2021-09-15 13:32:32 +02:00
Henrik Giesel
2787d7e7fd
Unify anki-mathjax-* to just anki-mathjax
2021-09-15 13:32:32 +02:00
Henrik Giesel
d0e3bff267
Add MathjaxHandle
2021-09-15 13:32:32 +02:00
Henrik Giesel
3529e50f46
Implement latex highlighting for Latex in codable
2021-09-15 13:32:32 +02:00
Henrik Giesel
b2c9e672d4
Use margin:auto instead of text-align:center for mathjax-block
2021-09-15 13:32:31 +02:00
Henrik Giesel
7162a9b961
Do not start ImageHandle for images with [data-anki]
2021-09-15 13:32:31 +02:00
Henrik Giesel
7255312ec5
Nicely portray mathjax with right color + alignment in Editor
2021-09-15 13:32:31 +02:00
Henrik Giesel
1d05ada05b
Enable edit mode for mathjax blocks
2021-09-15 13:32:31 +02:00
Henrik Giesel
9ca8e07bbe
Correctly include editable css
2021-09-15 13:32:31 +02:00
Henrik Giesel
47653e9672
Survive to Codable and back
2021-09-15 13:32:31 +02:00
Henrik Giesel
24b852b99a
Transform to mathjax components for fieldHTML
2021-09-15 13:32:31 +02:00
Henrik Giesel
49d2dd6660
Implement MathjaxBlock
2021-09-15 13:32:30 +02:00
Henrik Giesel
5811e59f27
Introduce editable module
2021-09-15 13:32:30 +02:00
Henrik Giesel
4f6468a925
Prevent tooltip expanding body tag in editor
2021-09-15 02:24:09 +02:00
Henrik Giesel
6c8767cd68
Do not stop showing suggestions when entering double colon for separator
2021-09-15 02:02:19 +02:00
Damien Elmes
b0350bafa7
bikeshedding: amount -> match_limit
...
+ convert from u32 in backend method
2021-09-12 11:57:49 +10:00
Henrik Giesel
9d0c3e0855
Cap tag suggestions at 500
2021-09-10 01:13:50 +02:00
Henrik Giesel
63398df036
Fix crosshair not showing on main text of Tag when in select mode
2021-09-09 22:31:16 +02:00
Henrik Giesel
27c6003038
Introduce TagEditMode as a wrapper around TagWithTooltip
2021-09-09 21:47:07 +02:00
Henrik Giesel
e8f4872391
Only hide DeleteBadge when hovering on tag
2021-09-09 20:16:52 +02:00
Henrik Giesel
80898d1954
Align suggestions with start of tag
2021-09-09 19:03:06 +02:00
Henrik Giesel
b46dcb5c72
Only show tag tooltip on hover, not focus
2021-09-09 18:36:29 +02:00
Henrik Giesel
f7a69e5e9a
Scroll suggestion tag into view
2021-09-09 18:32:58 +02:00
Henrik Giesel
7150e1f149
Do not use overflow-x on ButtonToolbar
...
* Fixes deck-options dropdown not showing.
It seems like it's no longer necessary
2021-09-09 17:50:02 +02:00
Henrik Giesel
51718134ea
Fix Tag SPACER
2021-09-09 17:28:00 +02:00
Henrik Giesel
a1ca2cf4b9
Bubble up some functionality from Tag to TagWithTooltip and TagDeleteBadge
2021-09-09 17:18:47 +02:00
Henrik Giesel
71d4b4d9f7
Remove unused import
2021-09-09 15:38:12 +02:00
Henrik Giesel
8bbc001273
Fix bug where sometimes Autocomplete menu would not show even though suggestions exist
2021-09-09 15:38:11 +02:00
Henrik Giesel
bbba7307b3
Use noSuggestions
2021-09-09 15:38:11 +02:00
Henrik Giesel
500619d5cc
Update Autocomplete position when suggestion selection makes it move to the next row
2021-09-09 15:38:10 +02:00
Henrik Giesel
9755b25fb1
Set disabled class on TagInput from WithAutocomplete
2021-09-09 15:38:10 +02:00
Henrik Giesel
e805c45403
Explicitly not support dropleft/dropright
...
We'll deal with it when we have a use case
2021-09-09 15:38:09 +02:00
Henrik Giesel
f34112ee28
Correctly place dropdown and only update if there's activeInput
2021-09-09 15:38:09 +02:00
Henrik Giesel
3fed669c45
Take most recent input as basis for suggestions
2021-09-09 15:38:09 +02:00
Damien Elmes
c83843812e
add basic tag completion to backend
...
Matches should arrive in alphabetical order. Currently results are not
capped (JS should be able to handle ~1k tags without too much hassle),
and no reordering based on match location is done. Matches are substring
based, and multiple can be provided, eg "foo::bar" will match
"foof::baz::abbar".
This is not hooked up properly on the frontend at the moment -
updateSuggestions() seems to be missing the most recently typed character,
and is not updating the list of completions half the time.
2021-09-09 15:38:08 +02:00
Henrik Giesel
cfee5fb986
Decrease tag margins
2021-09-09 15:38:08 +02:00
Henrik Giesel
8b2e69b912
Add bottom padding to selected tag badge as well
2021-09-09 15:38:07 +02:00
Henrik Giesel
a7b01537f6
Use new style highlight for selected tags
2021-09-09 15:38:07 +02:00
Henrik Giesel
7aa599e72c
Add slight padding around add tag icon
2021-09-09 15:38:07 +02:00
Henrik Giesel
cc430c5994
Add a zero-width tag to prevent resizing when adding tag
2021-09-09 15:38:06 +02:00
Henrik Giesel
047e466c98
Un-reverse TagEditor autocompletion navigation
2021-09-09 15:38:06 +02:00
Henrik Giesel
6f41c83587
Decrease padding of AutocompleteItem
2021-09-09 15:38:06 +02:00
Henrik Giesel
6af355f8d0
Adjust border radius of tags to fit new fields
2021-09-09 15:38:05 +02:00
Henrik Giesel
b70124a1e6
Update to use shortened SCSS paths for some components
2021-09-09 15:38:05 +02:00
Henrik Giesel
c15fcb8b7e
Satisfy formatter
2021-09-09 15:38:04 +02:00
Henrik Giesel
deb572e637
Rename tagEditor tag-editor.ts
2021-09-09 15:38:04 +02:00
Henrik Giesel
3873c29022
Refer to ./ instead of components/ from within components
2021-09-09 15:38:04 +02:00
Henrik Giesel
e3fe65fc23
Fix ts/components:svelte_check
2021-09-09 15:38:03 +02:00
Henrik Giesel
5dc8224a1b
Add scrollbar_lib to components
2021-09-09 15:38:03 +02:00
Henrik Giesel
22d63ec5fa
Fix eslint
2021-09-09 15:38:02 +02:00
Henrik Giesel
9e12b25d21
Fix colon insertion behavior
2021-09-09 15:38:02 +02:00
Henrik Giesel
879cd116a6
Replace delim char with colons on copying tags
2021-09-09 15:38:02 +02:00
Henrik Giesel
0db1b9cc78
Fix TagSpacer
2021-09-09 15:38:01 +02:00
Henrik Giesel
93ba4a2cd8
Implement nowrap mode
2021-09-09 15:38:01 +02:00
Henrik Giesel
bf6e587161
Implement TagWithTooltip
2021-09-09 15:38:00 +02:00
Henrik Giesel
9e91307c5d
Move WithTooltip to components
2021-09-09 15:38:00 +02:00
Henrik Giesel
cc9e3e2455
Use Unicode delimiter character
2021-09-09 15:38:00 +02:00
Henrik Giesel
58dc22ee7b
Improve space behavior
2021-09-09 15:37:59 +02:00
Henrik Giesel
f5feed589e
Improve enter behavior
2021-09-09 15:37:59 +02:00
Henrik Giesel
39a1f6199e
Split when no autocomplete item is selected
2021-09-09 15:37:59 +02:00
Henrik Giesel
c0944ec3a1
Add tag shorting behavior
2021-09-09 15:37:58 +02:00
Henrik Giesel
a49fd5ab2a
Space out Sticky Bottom with Spacer component
2021-09-09 15:37:58 +02:00
Henrik Giesel
494d1e206d
Deselect on clicking delete icon
2021-09-09 15:37:58 +02:00
Henrik Giesel
98baca8809
Add small horizontal margin so selected highlight can show
2021-09-09 15:37:57 +02:00
Henrik Giesel
596e7e0e70
Special handling of Backspace/Delete etc. for displaying shortcuts
2021-09-09 15:37:57 +02:00
Henrik Giesel
9682e84452
Add select all shortcut
...
+ Remove addEventListener for Ctrl+C/V/A
It seems like they're really not necessary
2021-09-09 15:37:57 +02:00
Henrik Giesel
09f00a92aa
Position stickyBottom fixed
2021-09-09 15:37:56 +02:00
Henrik Giesel
37d30284fc
Improve positioning of tag editor badges
2021-09-09 15:37:56 +02:00
Henrik Giesel
928866b5aa
Fix after rebase
2021-09-09 15:37:56 +02:00
Henrik Giesel
c8bcca517b
Improve paste behavior
2021-09-09 15:37:55 +02:00
Henrik Giesel
2fc5c73b74
Do not update/activate Autocomplete on Control+C,A,V
2021-09-09 15:37:55 +02:00
Henrik Giesel
5a41409f54
Do not open autocomplete on clicking input
2021-09-09 15:37:55 +02:00
Henrik Giesel
b91db34aec
Allow clicking on suggestion items
2021-09-09 15:37:54 +02:00
Henrik Giesel
964e97a384
Pass activeName to Tag as well
2021-09-09 15:37:54 +02:00
Henrik Giesel
444afa5b00
Adjust position so tags do not even move a single pixel when going into editing
2021-09-09 15:37:54 +02:00
Henrik Giesel
6af2ab437e
Adjust paddings a bit more
2021-09-09 15:37:54 +02:00
Henrik Giesel
5bb6df757e
Center delete icon without padding/margin
2021-09-09 15:37:53 +02:00
Henrik Giesel
58c35f316d
Fix autocomplete dropdown
...
+ find a different solution for making tags and tag inputs same size
2021-09-09 15:37:53 +02:00
Henrik Giesel
e3be5972b8
Switch WithAutocomplete to WithDropdown and fix SelectedTagBadge
2021-09-09 15:37:53 +02:00
Henrik Giesel
a576228c08
Add SelectedTagBadge to offer context items for selected tags
2021-09-09 15:37:53 +02:00
Henrik Giesel
408ff4f061
Implement selectRange
2021-09-09 15:37:52 +02:00
Henrik Giesel
b178b86afd
Make automatic deselect when leaving tag editor
2021-09-09 15:37:52 +02:00
Henrik Giesel
2fc7602406
Make tags selectable
2021-09-09 15:37:52 +02:00
Henrik Giesel
984afb8812
Implement controlPressed and shiftPressed
2021-09-09 15:37:52 +02:00
Henrik Giesel
9f0bf7484b
Create lib/keys.ts
2021-09-09 15:37:52 +02:00
Henrik Giesel
81274169cd
First steps toward tag selection
2021-09-09 15:37:51 +02:00
Henrik Giesel
c8c86d376a
Implement autocomplete hiding on empty activeInput + remove logging
2021-09-09 15:37:51 +02:00
Henrik Giesel
b2d9500816
Fix behavior when autocompletion shows
2021-09-09 15:37:51 +02:00
Henrik Giesel
033f39f52f
Fix join behavior and exclude Backspace/Delete from printable character
2021-09-09 15:37:51 +02:00
Henrik Giesel
8d8dd4fca0
Disable toggle on clicking element (toggle) for WithAutocomplete
2021-09-09 15:37:51 +02:00
Henrik Giesel
84d060a5b8
Improve no reflow a little bit
2021-09-09 15:37:51 +02:00
Henrik Giesel
b4860fbc6b
Fix autocomplete showing on arrow keys and height resize on no tags
2021-09-09 15:37:50 +02:00
Henrik Giesel
8a648a4bcf
Implement accepting suggestions via Enter
2021-09-09 15:37:50 +02:00
Henrik Giesel
b6ffc4d071
Introduce AutocompleteItem
...
* needs too much custom styling / behavior to be done with DropdownItem
2021-09-09 15:37:50 +02:00
Henrik Giesel
d2d6623788
suggestions -> suggestionsPromise, so it works with external APIs
2021-09-09 15:37:50 +02:00
Henrik Giesel
d5eff3b75c
Don't allow Enter/Tab/Arrows for Autocomplete, if not active
...
Don't show Autocomplete, if there are no items available
2021-09-09 15:37:49 +02:00
Henrik Giesel
c18c0dd5b9
Have WithAutocomplete export its API
...
allows it to be used in more contexts
2021-09-09 15:37:49 +02:00
Henrik Giesel
85a5f627be
Rename TagAutocomplete to WithAutocomplete
...
It's general enough to be used in other cases too
2021-09-09 15:37:49 +02:00
Henrik Giesel
6bf478acdf
Improve visuals of Tag component
2021-09-09 15:37:49 +02:00
Henrik Giesel
477796fb3d
Save deletions via delete icon to db
2021-09-09 15:37:48 +02:00
Henrik Giesel
fc5dffbf86
Save tags back to Python
2021-09-09 15:37:47 +02:00
Henrik Giesel
51732b4470
Set tags from Python
2021-09-09 15:37:47 +02:00
Henrik Giesel
72b4487f39
Remove deleteActiveTag, fix appendEmptyTag
2021-09-09 15:37:47 +02:00
Henrik Giesel
a88af9954c
Fix some deletion behavior
2021-09-09 15:37:47 +02:00
Henrik Giesel
151a64af7f
Make Autocomplete dismount along with TagInput on blur
2021-09-09 15:37:47 +02:00
Henrik Giesel
263ee2364d
Implement on:autocomplete
2021-09-09 15:37:46 +02:00
Henrik Giesel
978b2d6227
Don't highlight suggestion items
...
Other suggestions menus don't do it either
2021-09-09 15:37:46 +02:00
Henrik Giesel
3d013fd521
Fix tagmove
2021-09-09 15:37:46 +02:00
Henrik Giesel
5b473df41c
Introduce activeName so we can pass it to TagAutocomplete
2021-09-09 15:37:45 +02:00
Henrik Giesel
253c6d702b
Export choice as autocompletionChoice from TagAutocomplete
2021-09-09 15:37:45 +02:00
Henrik Giesel
3a7df7ca40
Make tagunique a more general tagaccept
...
* tagaccept includes what was previous done by on:blur
* on:blur in TagInput was in some cases not bubbled up to TagEditor for some reason
2021-09-09 15:37:45 +02:00
Henrik Giesel
b59c5bcc8d
Use Autocomplete on TagInput again
2021-09-09 15:37:44 +02:00
Henrik Giesel
60faccebc0
Pass original to Autocomplete
2021-09-09 15:37:44 +02:00
Henrik Giesel
2a10d1a236
Fix TagBadge and TagSpacer + shortcut
2021-09-09 15:37:44 +02:00
Henrik Giesel
415c473d89
Export blink as a function, works more reliably
2021-09-09 15:37:43 +02:00
Henrik Giesel
b842a1d6f2
Fix behavior when simply entering a duplicate
2021-09-09 15:37:43 +02:00
Henrik Giesel
6a3b88cfb8
Implement tagsplit
2021-09-09 15:37:43 +02:00
Henrik Giesel
d706640acd
Fix tagjoinnext
2021-09-09 15:37:43 +02:00
Henrik Giesel
a4ca20d852
Fix tagjoinprevious
2021-09-09 15:37:43 +02:00
Henrik Giesel
1766162241
Fix tagmove
2021-09-09 15:37:42 +02:00
Henrik Giesel
20971037ab
Fix TagBadge and TagSpacer
2021-09-09 15:37:42 +02:00
Henrik Giesel
0a6dcfd55b
Align tagenter tagdelete and tagunique
2021-09-09 15:37:42 +02:00
Henrik Giesel
da713badc0
Implement decideAfterBlur and activeAfterBlur
2021-09-09 15:37:42 +02:00
Henrik Giesel
02fc7cc16f
Prefer focusing TagInput in onMount
2021-09-09 15:37:41 +02:00
Henrik Giesel
75783fff7c
Completely decouple Tag from TagInput
2021-09-09 15:37:41 +02:00
Henrik Giesel
ea08e89d33
Add .input to Tag interface
2021-09-09 15:37:41 +02:00
Henrik Giesel
f6927bea41
Remove special treatment of last tag
2021-09-09 15:37:41 +02:00
Henrik Giesel
da3ea03694
Try to remove special handling of last tag / inputNew
2021-09-09 15:37:40 +02:00
Henrik Giesel
13f16790d6
Improve behavior when moving towards newInput
2021-09-09 15:37:40 +02:00
Henrik Giesel
f6ca173d0c
tagmove should act like tagjoin on empty inputs
2021-09-09 15:37:40 +02:00
Henrik Giesel
5999b3459b
Fix double delete on empty input
2021-09-09 15:37:40 +02:00
Henrik Giesel
7a7c862fa9
Implement blink on duplicate detected
2021-09-09 15:37:39 +02:00
Henrik Giesel
12a3d83d0a
Add some visual for TagAutocomplete
2021-09-09 15:37:39 +02:00
Henrik Giesel
8d691c217a
Minimize reflow upon clicking tag
2021-09-09 15:37:39 +02:00
Henrik Giesel
b91d20bd85
Implement tagmovenext fully
2021-09-09 15:37:39 +02:00
Henrik Giesel
8fd2f1a8c4
Almost implement tagmove
...
* tagmovenext will start on the last position rather than first
2021-09-09 15:37:38 +02:00
Henrik Giesel
8a6067958f
Reimplement tagjoin with tick()
2021-09-09 15:37:38 +02:00
Henrik Giesel
766270a7bf
Start implemention tagmove
2021-09-09 15:37:38 +02:00
Henrik Giesel
a8b002acee
Set caret correctly after tagjoin
2021-09-09 15:37:38 +02:00
Henrik Giesel
e6bd66b894
Show Autocomplete on keydown, hide on blur
2021-09-09 15:37:38 +02:00
Henrik Giesel
2629afe6b0
Adjust padding of TagInput a little
2021-09-09 15:37:37 +02:00
Henrik Giesel
a0c44f55db
Fix some WithDropdownMenu logic
2021-09-09 15:37:37 +02:00
Henrik Giesel
e368cf09a8
Factor out ButtonToolbar from TagAutocomplete
2021-09-09 15:37:37 +02:00
Henrik Giesel
0d394814e7
Decouple TagInput from TagAutocomplete completely
2021-09-09 15:37:37 +02:00
Henrik Giesel
7b6f49577a
Add tabbable option to DropdownItem
2021-09-09 15:37:37 +02:00
Henrik Giesel
f52ad747cb
Fix issue with text showing below StickyBottom
2021-09-09 15:37:37 +02:00
Henrik Giesel
68509995d5
Make tags stand less out in dark mode
2021-09-09 15:37:36 +02:00
Henrik Giesel
178062fc2d
Make styling of DropdownMenu easier by introducing dropdown-content
2021-09-09 15:37:36 +02:00
Henrik Giesel
e287b396f9
Decouple Autocomplete from TagInput:
...
Allows to only have one autocompletion for all tags, rather than every
tag having its own
2021-09-09 15:37:36 +02:00
Henrik Giesel
59ef4259f5
Remove dead code from TagAutocomplete
2021-09-09 15:37:36 +02:00
Henrik Giesel
b778653851
Implement tagjoin events
2021-09-09 15:37:36 +02:00
Henrik Giesel
bbb4084f03
Delete tag when update reveals its a duplicate
2021-09-09 15:37:35 +02:00
Henrik Giesel
9706b1e15c
Enable keyed blocks in TagEditor for tags
2021-09-09 15:37:35 +02:00
Henrik Giesel
0fcead4843
Rewrite paste behavior
2021-09-09 15:37:35 +02:00
Henrik Giesel
a4f52f82d8
Delete when updating tagname to empty text
2021-09-09 15:37:35 +02:00
Henrik Giesel
3869db8c86
Connect Bootstrap dropdown with trigger via classes/props
2021-09-09 15:37:34 +02:00
Henrik Giesel
6e563ddf49
Use our DropdownMenu component for TagAutocomplete
2021-09-09 15:37:34 +02:00
Henrik Giesel
3d594c1883
Allow correctly adding tags
...
+ Make taginput unfocusable via Tab => prefer Ctrl+Shift+T
2021-09-09 15:37:34 +02:00
Henrik Giesel
2a30eccfa4
Make caret cursor more discoverable
2021-09-09 15:37:34 +02:00
Henrik Giesel
eff5df2c69
Remove TagInputEdit and TagInputNew
2021-09-09 15:37:34 +02:00
Henrik Giesel
d89a6af45f
Port Focus tags shortcut to webview
2021-09-09 15:37:34 +02:00
Henrik Giesel
f047441c18
Behave correctly upon Enter on TagInputEdit
2021-09-09 15:37:34 +02:00
Henrik Giesel
cecbafcec8
Create AddTagBadge component
2021-09-09 15:37:33 +02:00
Henrik Giesel
2b9e32fb08
Make Tag icon an add tag icon
2021-09-09 15:37:33 +02:00
Henrik Giesel
bcd6e037f2
Adjust offsets and sizes to make tag input smaller
2021-09-09 15:37:33 +02:00
Henrik Giesel
4aaba0875f
Enable tag delete icon
2021-09-09 15:37:33 +02:00
Henrik Giesel
016d815ee1
Port most components from first tageditor PR
2021-09-09 15:37:33 +02:00
Henrik Giesel
7f6e7235f1
Display a tag-outline icon in the bottom left
2021-09-09 15:37:33 +02:00
Henrik Giesel
9919cf2b47
Add Tag DeleteIcon
2021-09-09 15:37:33 +02:00
Henrik Giesel
8b92ba7fa4
Add Tag.svelte
2021-09-09 15:37:33 +02:00
Henrik Giesel
37fdefaf40
Mount TagEditor
2021-09-09 15:37:33 +02:00
Damien Elmes
0c94600be6
Merge pull request #1357 from hgiesel/preventstickybubble
...
Prevent sticky bubble
2021-09-08 19:02:00 +10:00
Henrik Giesel
6b633fc275
However bubble up when clicking on label container itself
2021-09-07 15:02:59 +02:00
Henrik Giesel
828cf80f68
Put sticky tooltip on icon, not label container
2021-09-07 14:33:15 +02:00
Henrik Giesel
26e9fa1c01
Prevent sticky bubbling and saveField before toggling sticky
2021-09-07 14:33:05 +02:00
Damien Elmes
1aad956872
fix case of fields table
2021-09-07 10:22:22 +10:00
Damien Elmes
d96b017d52
remove recursive symlink
...
https://github.com/ankitects/anki/pull/1332#issuecomment-913572914
2021-09-06 21:26:30 +10:00
Henrik Giesel
90dc1a0b40
Fix Float buttons in rtl
2021-09-06 21:15:37 +10:00
Henrik Giesel
803bf1b9d4
Fix ButtonDropdown disappearing when mouseupping on HandleBackground
2021-09-06 21:15:37 +10:00
Henrik Giesel
912fb0d94d
Fix Tab not moving caret to end
2021-09-06 21:15:37 +10:00
Henrik Giesel
57eb988068
Make clicking on labelcontainer move focus to field
2021-09-06 21:15:37 +10:00
Henrik Giesel
997e28384d
Decrease margin of the pin icon on the right
2021-09-06 21:15:37 +10:00
Henrik Giesel
b7ca721a2c
Have a uniform border-radius for buttons and fields
2021-09-06 21:15:37 +10:00
Henrik Giesel
212fd00405
Add a dashed border around pictures when image-editing
2021-09-06 21:15:37 +10:00
Henrik Giesel
63bc3f823b
Make focus highlight artificial and based on :focus-within
2021-09-06 21:15:37 +10:00
Henrik Giesel
b40f7ef262
Remove comma
2021-09-06 21:15:37 +10:00
Henrik Giesel
214b674cad
Prevent overflow of sizeDimensions or image handle buttons
2021-09-06 21:15:37 +10:00
Henrik Giesel
abf0eb1c16
Fix automatic positioning of ButtonDropdown after changing float property
2021-09-06 21:15:37 +10:00
Henrik Giesel
620f9cb765
Introduce WithImageConstrained
2021-09-06 21:15:37 +10:00
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
Damien Elmes
dc0c8c217f
unpin bootstrap now that 5.0.1 is out
...
4d51a13259
2021-06-29 11:25:14 +10:00
Damien Elmes
fdfcfee5d6
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
48afafb04e
Make input in TextInputModal in dark mode visible
2021-06-29 03:20:15 +02:00
Damien Elmes
e26f461ada
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
50e7d6ea00
disable cloze&math buttons in html mode
...
Following on from 35777bb0ca
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
1599526726
Make Codable abstract more over its textarea v codemirror when using fieldHTML
2021-06-24 19:55:50 +02:00
Henrik Giesel
9f0343f591
Make EditingArea intialize this.fieldHTML, not Editable.fieldHTML
2021-06-24 19:15:07 +02:00
Damien Elmes
4ba0c8d169
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
04d6a89216
disable smart quotes and capitalization in js field
...
+ use bootstrap styling
2021-06-24 18:00:06 +10:00
Damien Elmes
b959feb6e5
expose scheduler js option in deck config
2021-06-24 14:38:10 +10:00
Damien Elmes
841250533d
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
a277dc96ba
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
e5709ec90c
Adapt use of createDropdown for editor buttons
2021-06-22 17:31:06 +02:00
Damien Elmes
7416660c59
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
7e96005d54
hide revert button when not active
2021-06-22 09:38:28 +10:00
Damien Elmes
15825f5629
fix svelte-check error by tweaking formatting
...
🤷
2021-06-22 09:27:37 +10:00
Henrik Giesel
40058b49b2
Have swithes be blue when checked in night mode
2021-06-21 22:37:37 +02:00
Henrik Giesel
b89fbe1aa5
Replace dash with underscore for night_mode_lib
2021-06-21 21:51:15 +02:00
Henrik Giesel
4ee66fb742
Add night_mode_lib as SCSS target
2021-06-21 21:44:23 +02:00
Henrik Giesel
447f50724a
Always show spinning reverse icon on mobile
2021-06-21 21:35:20 +02:00
Henrik Giesel
7b01dd1719
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
28bab1f7a1
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
69ec04190c
Make gear button show dropdown menu
2021-06-21 20:24:15 +02:00
Henrik Giesel
ad6577d88c
Revert button with gear icon, that shows revert dropdown item
2021-06-21 19:11:10 +02:00
Henrik Giesel
60f0ad4093
Associate Switch labels with their respective switches
2021-06-21 18:15:41 +02:00
Henrik Giesel
c99330990a
Put tooltip only on the info badge
2021-06-21 17:48:18 +02:00
Damien Elmes
f695fac40b
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
eda359d652
remove left pad on switches
2021-06-21 17:02:48 +02:00
Damien Elmes
db48fe2124
decrease margins in deck options top sticky bar
2021-06-21 17:02:48 +02:00
Henrik Giesel
00fb0e7395
Add g-1 class to DeckoptionsPage. Include transitions.scss
...
* Modal misbehaved before
2021-06-21 17:02:48 +02:00
Henrik Giesel
2d3f967899
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
e20a5bf2f0
Make TriggerType an input argument for WithTooltip
2021-06-21 17:02:48 +02:00
Henrik Giesel
e131f23037
Increase padding on tooltips + Remove erroneous closing angle bracket
2021-06-21 17:02:48 +02:00
Henrik Giesel
708feac2a2
Implement Switch and SwitchRow
2021-06-21 17:02:48 +02:00
Henrik Giesel
bce4c4d393
Properly dispose of tooltip resources when unmounting
2021-06-21 17:02:48 +02:00
Henrik Giesel
024517e864
Reverse RevertButton being on the right side
2021-06-21 17:02:48 +02:00
Henrik Giesel
827ca7efe5
Alternative solution to markdown tooltips creating bottom margin
2021-06-21 17:02:48 +02:00
Henrik Giesel
f67b9b75da
Update RevertButton to use Badge and WithTooltip
2021-06-21 17:02:48 +02:00
Henrik Giesel
01f074785c
Add a tooltip showing delay of a quarter second
2021-06-21 17:02:48 +02:00
Henrik Giesel
94c24c0f44
Add back info circles, remove underlines
2021-06-21 17:02:48 +02:00
Henrik Giesel
895bb454ef
Update NotetypeSelector to use Item instead of ButtonToolbarItem
2021-06-21 17:02:48 +02:00
Henrik Giesel
6c9de074b6
Fix tooltip regression
2021-06-21 17:02:48 +02:00
Henrik Giesel
13accfa840
Have decimal keyboard for SpinBoxFloat
2021-06-21 17:02:48 +02:00
Henrik Giesel
77cfebcccc
Have numeric keyboard for SpinBox
2021-06-21 17:02:48 +02:00
Henrik Giesel
99caaf8d71
Switch Revert button and input element position
2021-06-21 17:02:48 +02:00
Henrik Giesel
e4e6dd3a39
Implement WithTooltip
2021-06-21 17:02:48 +02:00
Henrik Giesel
74ebf7e9ad
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
9acf6af355
Make revert button horizontal padding smaller
2021-06-21 17:02:48 +02:00
Henrik Giesel
18f33e117d
Have colors inherit for badges
2021-06-21 17:02:48 +02:00
Henrik Giesel
73e66d6dd0
Add down-arrow SASS function
2021-06-21 17:02:48 +02:00
Henrik Giesel
6462643328
Use custom down arrow for both SelectButton and EnumSelector
2021-06-21 17:02:48 +02:00
Henrik Giesel
745f940890
Put Col types into col.ts
2021-06-21 17:02:48 +02:00
Henrik Giesel
bf7efa19c1
Fix formatting
2021-06-21 17:02:48 +02:00
Henrik Giesel
191684c1b0
Rename SectionItem to just Item and use across option sections
2021-06-21 17:02:46 +02:00
Henrik Giesel
d54b21db7a
Import API from all option sections
2021-06-21 17:01:45 +02:00
Henrik Giesel
0e0bdccba7
Add Container.svelte
2021-06-21 17:01:45 +02:00
Henrik Giesel
695fa09619
Remove SCSS from ConfigEditor
2021-06-21 17:01:45 +02:00
Henrik Giesel
b684101d9b
Implement CheckBoxRow and SpinBoxFloatRow
2021-06-21 17:01:45 +02:00
Henrik Giesel
019d41d01d
Implement EnumSelectorRow and StepsInputRow
2021-06-21 17:01:45 +02:00
Henrik Giesel
d43d7b10e0
Implement SpinBoxRow
2021-06-21 17:01:45 +02:00
Henrik Giesel
cf89d89dc2
Add breakpoint for Bury EnumSelector
2021-06-21 17:01:44 +02:00
Henrik Giesel
9e3d955502
Use Row and Col in favor of ConfigEntry
2021-06-21 17:01:44 +02:00
Henrik Giesel
7d0a02fe56
Remove ConfigEntryFull
2021-06-21 17:01:44 +02:00
Henrik Giesel
4e11cade23
Factor RevertButton out of components
2021-06-21 17:01:44 +02:00
Henrik Giesel
a07dc2bd7a
Change margin and gutters off rows
2021-06-21 17:01:44 +02:00
Henrik Giesel
d8e285ba69
Move the remaining Options to new ConfigEntry layout
2021-06-21 17:01:44 +02:00
Henrik Giesel
a89e048259
Update DailyLimits and NewOptions to new format
2021-06-21 17:01:44 +02:00
Henrik Giesel
8bab61c62c
Wrap input and revert button into one col
2021-06-21 17:01:44 +02:00
Henrik Giesel
b02d14dcbd
Introduce TitledContainer
2021-06-21 17:01:44 +02:00
Henrik Giesel
26c4753c38
Allow for gutters between rows
2021-06-21 17:01:44 +02:00
Henrik Giesel
af3f65188f
Vertically align text + Remove bottom margin from alerts
2021-06-21 17:01:44 +02:00
Henrik Giesel
2ddc22f6c2
Turn icons into Bootstrap badges in deckoptions
2021-06-21 17:01:44 +02:00
Henrik Giesel
588faf5f50
Start using Bootstrap grid for deckoptions
2021-06-21 17:01:44 +02:00
Henrik Giesel
cb14011410
Use Bootstrap containers instead of CSS in base for deckoptions
2021-06-21 17:01:44 +02:00
Henrik Giesel
43b5ba42ba
Add container scss to deckoptions-base
2021-06-21 17:01:44 +02:00
Henrik Giesel
9def4075b5
Make API argument required in ConfigEditor
2021-06-21 17:01:44 +02:00
Henrik Giesel
d2360869b3
Add Section and SectionItem for the deckoptions
2021-06-21 17:01:44 +02:00
Henrik Giesel
0061d61db5
Generalize ButtonToolbarItem to SectionItem
2021-06-21 17:01:42 +02:00
Damien Elmes
16e37c5537
Merge pull request #1244 from hgiesel/colorpickersetcolor
...
Make Color Pickers also format with colors
2021-06-20 15:58:58 +10:00
Damien Elmes
d89c538c48
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
b1414c188d
Add type hint in WithColorHelper
2021-06-19 16:31:35 +02:00
Henrik Giesel
0a7697596d
Make Color Pickers also format with colors
2021-06-19 16:27:09 +02:00
Damien Elmes
5715a28c76
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
cac802872c
Cannot create Jest jsdom tests (?)
2021-06-18 20:41:54 +02:00
Damien Elmes
22f073d29c
Merge pull request #1242 from hgiesel/codable
...
In-line HTML-Editing for Editor
2021-06-18 17:18:35 +10:00
Henrik Giesel
c74d486120
Satisfy svelte_check
2021-06-18 03:12:02 +02:00
Henrik Giesel
44ed54a20f
Remove components from editor BUILD.bazel again
2021-06-18 02:59:45 +02:00
Henrik Giesel
519cc78c66
Disable function dropdown when no field selected
2021-06-18 02:51:42 +02:00
Henrik Giesel
8ca7dc589c
Satisfy linter
2021-06-18 02:44:15 +02:00
Henrik Giesel
f06b709a66
Make text wrapper buttons work with Codable
2021-06-18 02:33:56 +02:00
Henrik Giesel
35777bb0ca
Disable Media button for Codable, but keep wrapping and cloze key for now
2021-06-18 02:02:01 +02:00
Henrik Giesel
5992910fe8
Disable ColorButtons for Codable
2021-06-18 01:44:15 +02:00
Henrik Giesel
2de2e7ccf5
Allow Tab and Shift+Tab on Codable
2021-06-18 01:32:46 +02:00
Henrik Giesel
dee7be2323
Disable FormatBlock buttons for Codable
2021-06-18 01:17:43 +02:00
Henrik Giesel
dd1344d7f0
Disable Bold button in Codable
2021-06-18 00:27:07 +02:00
Henrik Giesel
0315aeefd7
Make different onPaste behavior for Editable and Codable
2021-06-17 23:12:15 +02:00
Henrik Giesel
32b3702d3c
Have correct enter behavior in for Editable and Codable
2021-06-17 22:02:06 +02:00
Henrik Giesel
e773d75f6d
Add autoclosetag addon for CodeMirror
2021-06-17 21:45:11 +02:00
Henrik Giesel
b1414376e4
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
bf9cbcd527
Only toggle the current field, not all
2021-06-17 20:57:20 +02:00
Henrik Giesel
7687a030ff
Make Codable enter behavior the same as Editable
2021-06-17 20:47:33 +02:00
Henrik Giesel
7530121314
Match and fold tags
2021-06-17 20:27:34 +02:00
Henrik Giesel
44e2560c8b
Make editable hide correctly when activating codable
2021-06-17 19:08:14 +02:00
Henrik Giesel
df32f60029
Successfully add monokai theming
2021-06-17 18:36:12 +02:00
Henrik Giesel
751747a693
Make DOMParser correctly return innerHTML
2021-06-17 17:52:27 +02:00
Henrik Giesel
d2b697fc1b
Make Codable correctly update the editable state and its button
2021-06-17 17:49:50 +02:00