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
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