Henrik Giesel
222da3912a
Add ChangeTimer.prototype.fireImmediately
...
so Mathjax is saved when exiting editor prematurely
2021-09-16 14:47:05 +02:00
Henrik Giesel
4b0e35a357
Rename StickyBar and StickyBottom to StickyHeader and StickyFooter
2021-09-15 23:15:55 +02:00
Henrik Giesel
9f500cf78a
Remove now unused import in TagEditor
2021-09-15 22:59:47 +02:00
Henrik Giesel
d6702c1c68
Fix suggestions not showing when typing space in a TagInput
2021-09-15 22:54:53 +02:00
Henrik Giesel
84eda7c547
Make the ImageHandle and MathjaxHandle dropdowns perfectly touch the HandleSelection
2021-09-15 22:26:32 +02:00
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
05cf123959
Apply specific CSS to Mathjax CodeMirror
2021-09-15 13:46:04 +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
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
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
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
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
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
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
7162a9b961
Do not start ImageHandle for images with [data-anki]
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
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
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
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
deb572e637
Rename tagEditor tag-editor.ts
2021-09-09 15:38:04 +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
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
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
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
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