Damien Elmes
397cff9194
split due into 'due today' and 'overdue'
2021-02-11 10:49:36 +10:00
Damien Elmes
67d612926c
Revert "experiment with using right click for AND/OR/NOT"
...
This reverts commit 9048a1ff3c
and
manually comments out the setSelectionMode() call.
Switching back to the old behaviour until issues can be worked through.
https://forums.ankiweb.net/t/anki-2-1-41-beta/7305/24
2021-02-11 10:14:26 +10:00
Damien Elmes
2a585c5e5a
Revert "add escape hatch for new clicking behaviour, in case it causes problems"
...
This reverts commit 678756c3e9
.
2021-02-11 10:10:45 +10:00
Damien Elmes
88c002f4eb
convert qt strings to f-strings with flynt
...
Also revealed an incorrect type def in editor.py that mypy wasn't
noticing before :-(
2021-02-11 10:09:06 +10:00
Damien Elmes
bb29ce88f3
minor code cleanups with pyupgrade
...
- pyupgrade --py38-plus --keep-runtime-typing --keep-percent-format
- third-party mpv and winpaths excluded
2021-02-11 09:43:40 +10:00
Damien Elmes
4d373f4aa3
catch TTS runtime error
2021-02-10 16:30:51 +10:00
Damien Elmes
678756c3e9
add escape hatch for new clicking behaviour, in case it causes problems
2021-02-09 19:29:59 +10:00
Damien Elmes
9ce4b21935
add markdown flag for deck description
...
Needed so we can display consistently, and gradually transition over
2021-02-09 18:47:19 +10:00
Damien Elmes
cf5e04b011
tweak sidebar appearance
...
- draw a border between sidebar and main area
- tweak padding
Testing is a pain, because you need to check day mode on the
three platforms, and night mode as well. If you can do it better, PRs
are welcome :-)
2021-02-09 16:23:44 +10:00
Damien Elmes
63b369b8a6
add 'untagged', and make clicking on 'tags' show all tagged cards
2021-02-09 12:50:35 +10:00
Damien Elmes
9048a1ff3c
experiment with using right click for AND/OR/NOT
...
This frees up Ctrl/Shift+left click to behave like in a typical GUI
app. On a Mac users can either two finger click, or Command+click in
conjunction with one of the other modifiers.
https://github.com/ankitects/anki/issues/1011
2021-02-09 11:39:47 +10:00
Damien Elmes
68c4b10dcd
move update_search into sidebar.py; fix setFilter()
...
No idea why neither mypy nor pylint are not noticing
"set_filter_then_search" does not exist. Python tooling. :-(
2021-02-09 10:50:39 +10:00
Damien Elmes
09dfbfe2b9
Partially revert "don't select contiguously with shift+click"
...
I thought this could work, but users (including myself!) are used to
being able to shift+click to select a region, and this behaviour is
surprising. We're also doing potentially expensive searches for each
extra selected item. I think we may need to switch this behaviour to
the right mouse button instead.
This partially reverts commit c91d21e18e
.
2021-02-09 10:37:21 +10:00
Damien Elmes
2a0bc15a0b
move flags above card state; change stage label for consistency
2021-02-09 09:54:46 +10:00
Damien Elmes
180efbc578
recent -> today
...
'Current deck' has moved, and by removing 'due tomorrow', we can drop
the 'today' suffix on the rest of the items.
The keys of the existing translations have not been changed, so
existing translations will not break, but will need to be manually
updated to make them shorter.
2021-02-09 09:50:59 +10:00
Damien Elmes
13aa6f99e4
fix rename/delete on current deck
2021-02-09 09:38:37 +10:00
Damien Elmes
c91d21e18e
don't select contiguously with shift+click; enable multiple selection
...
https://github.com/ankitects/anki/issues/1011
2021-02-09 09:33:32 +10:00
Damien Elmes
7972fa6493
remove 'any flag'; make clicking on flags root do the same thing
2021-02-08 22:52:37 +10:00
Damien Elmes
202cf38446
fix wrong item type being used for recent items
2021-02-08 22:50:48 +10:00
Damien Elmes
05074f2cc1
make decks root search collection; move current deck
...
Also use explicit 'deck:*' search, to make it more obvious what is
happening
2021-02-08 22:48:45 +10:00
Damien Elmes
a8ddb65e1c
add ability to force interval reset
...
- use trailing ! to force a reset
- use - instead of ..
- tweak i18n messages and error handling
2021-02-08 22:33:27 +10:00
Damien Elmes
b9635ce936
nest NoteWithEmptyCards
2021-02-08 19:11:16 +10:00
Damien Elmes
aa82bb172d
add small amount of padding to sidebar
...
https://forums.ankiweb.net/t/anki-2-1-41-beta/7305/3
2021-02-08 19:01:54 +10:00
Damien Elmes
4ac62f8848
fix media check not updating progress
2021-02-08 16:46:57 +10:00
Damien Elmes
6ac35b30c1
Media check suffered from the same text box slowdown as the importing screen
2021-02-08 16:42:21 +10:00
Damien Elmes
c23b01978d
nest progress messages and remove Python wrapper class
...
The progress messages are only really intended to be consumed by Anki.
If consumption by add-ons was expected, we'd be better off keeping the
wrapper, as the API for oneofs in Python is quite awkward to use.
2021-02-08 16:40:27 +10:00
Damien Elmes
f434cff36f
remember last input for 'set due'; add string config; nest config types
2021-02-08 14:10:05 +10:00
Damien Elmes
b56580a8c0
fix rsbackend compat issues
2021-02-08 09:51:51 +10:00
Damien Elmes
6aab9feec1
add (unused) reschedule option back to avoid breaking fastbar
2021-02-08 09:51:40 +10:00
Damien Elmes
704b5e581a
Rework reschedule tool
...
The old rescheduling dialog's two options have been split into two
separate menu items, "Forget", and "Set Due Date"
For cards that are not review cards, "Set Due Date" behaves like the
old reschedule option, changing the cards into a review card, and
and setting both the interval and due date to the provided number of
days.
When "Set Due Date" is applied to a review card, it no longer resets
the card's interval. Instead, it looks at how much the provided number
of days will change the original interval, and adjusts the interval by
that amount, so that cards that are answered earlier receive a smaller
next interval, and cards that are answered after a longer delay receive
a bonus.
For example, imagine a card was answered on day 5, and given an interval
of 10 days, so it has a due date of day 15.
- if on day 10 the due date is changed to day 12 (today+2), the card
is being scheduled 3 days earlier than it was supposed to be, so the
interval will be adjusted to 7 days.
- and if on day 10 the due date is changed to day 20, the interval will
be changed from 10 days to 15 days.
There is no separate option to reset the interval of a review card, but
it can be accomplished by forgetting the card(s), and then setting the
desired due date.
Other notes:
- Added the action to the review screen as well.
- Set the shortcut to Ctrl+Shift+D, and changed the existing Delete
Tags shortcut to Ctrl+Alt+Shift+A.
2021-02-07 21:57:51 +10:00
Damien Elmes
b7c72bca4c
fix backup not being taken before full download
2021-02-06 19:01:48 +10:00
Damien Elmes
3cd311191a
add opus to supported audio list and sort
2021-02-06 15:11:24 +10:00
Damien Elmes
e30b7fc36a
handle remote links in ts pages
...
Required to avoid loading remote links embedded in deck descriptions
in the webview
2021-02-06 15:03:21 +10:00
Damien Elmes
5662939b70
fix filter saving failing when savedFilters is not set
2021-02-05 22:38:44 +10:00
Damien Elmes
efd8c527a6
use 'contains' instead of 'prefix' search in tag completer
2021-02-05 21:14:35 +10:00
Damien Elmes
dfe3c457e5
use top level defs for protobuf enum cases
...
While mypy can understand nested references like ConfigBool.Key.COLLAPSE_RECENT,
PyCharm doesn't understand the metaclass syntax, and shows the definitions
as invalid.
2021-02-05 19:26:13 +10:00
Damien Elmes
bb30e8f7bc
use constants for other color references
...
str_color/qcolor() doesn't appear to have been used by any add-ons
except one of mine, so changing the signature should be safe
2021-02-05 18:58:22 +10:00
Damien Elmes
b8d67cdad5
move remaining Filter button items into sidebar
...
- Closes #976
- Added helper to apply arbitrary colour to an icon.
- Fix #979 - low res icons in night mode.
- The icons and colours are not perfect - please feel free to send
through a PR if you can improve them.
- Convert colors dictionary into module consts, so we can
use code completion.
- Added "Edited Today" and "Due Tomorrow"
- Rename camelCase attribute to snake_case and tweak the wording
of some enum constants. We've already broken compatibility with the
major sidebar add-ons, so we may as well make these changes while we
can.
- Removed Filter button. Currently there is no exposed way to toggle
the Sidebar off - wonder if we still need it?
2021-02-05 18:58:22 +10:00
Damien Elmes
bd730a012e
replace sidebar filter shortcut with existing Filter button shortcut
2021-02-05 14:32:56 +10:00
Damien Elmes
8af82b4594
exclude Mac dylib from '...'
2021-02-04 20:41:08 +10:00
Damien Elmes
a602f0342c
fix Qt translations in macOS packaged build
2021-02-04 20:28:25 +10:00
Damien Elmes
3c1fa68460
turn top bar dark when night mode enabled on macOS
2021-02-04 19:19:56 +10:00
Damien Elmes
39c6429fe2
fix broken card styling fix :-)
2021-02-03 22:32:55 +10:00
Damien Elmes
7e8886c352
fix broken card styling
2021-02-03 22:22:12 +10:00
Damien Elmes
168963460f
update to latest mypy_protobuf
...
The handling of enum types has improved - we no longer need to import
separate types at typechecking time.
2021-02-03 13:31:52 +10:00
Damien Elmes
86f8cba22c
Merge pull request #972 from hgiesel/ephemeral
...
Move ephemeral card functionality from clayout to Note class
2021-02-03 13:10:00 +10:00
Damien Elmes
e683e5c4d7
Merge pull request #973 from hgiesel/mathjaxerror
...
Render error if MathJax raises error
2021-02-03 13:09:12 +10:00
Henrik Giesel
e5587ffa59
Move copy_page to ts/copy.bzl and rename to copy_files_into_group
2021-02-02 18:20:11 +01:00
Henrik Giesel
803d6fbd3b
Render error if MathJax raises error
2021-02-02 18:11:16 +01:00
Henrik Giesel
22a5db8ace
Remove unused imports
2021-02-02 17:13:35 +01:00
Henrik Giesel
2483ef4517
Use new note.ephemeral_card method in clayout
2021-02-02 16:47:25 +01:00
Damien Elmes
4a5ef69068
add remaining types and disable missing types on (almost) all aqt
2021-02-03 00:00:29 +10:00
Damien Elmes
6426edb0ac
more typing updates
2021-02-02 23:31:55 +10:00
Damien Elmes
4b112950b8
Merge pull request #971 from abdnh/sidebar-checkpoints
...
Add checkpoints for sidebar drag & drop routines
2021-02-02 22:28:53 +10:00
Damien Elmes
33319e1691
Merge pull request #970 from RumovZ/cleanup-967
...
Cleanup 967
2021-02-02 22:03:43 +10:00
abdo
2754464147
Add checkpoints for sidebar drag & drop routines
...
Also save note and reset browser model
2021-02-02 14:58:44 +03:00
Damien Elmes
7e22bc16bc
fix: Qt translations not working
...
Will need to manually confirm this is working in the bundled builds
2021-02-02 21:12:28 +10:00
RumovZ
2499f2ae34
Remove standard button translations
2021-02-02 11:57:35 +01:00
Damien Elmes
4330ab58f5
auto-expand items while dragging
2021-02-02 20:14:14 +10:00
Damien Elmes
a50601ed46
add tag drag & drop support
2021-02-02 20:14:04 +10:00
Damien Elmes
dd54c10e71
Merge pull request #968 from abdnh/sidebar-expand-matches
...
Expand sidebar match trees one level
2021-02-02 19:03:04 +10:00
Damien Elmes
467064f873
collapsed->expanded in other tag uses for consistency
2021-02-02 18:52:57 +10:00
Damien Elmes
52b256663f
collapsed->expanded in TagTreeNode
2021-02-02 18:52:57 +10:00
RumovZ
14775445df
Add docstring to browser.__ini__
2021-02-02 09:48:55 +01:00
RumovZ
c3ae1a3049
Disallow untyped defs for dyndeckconf
2021-02-02 09:40:05 +01:00
RumovZ
16462941ab
Remove actionCreateFilteredDeck2 and use modifier
2021-02-02 09:29:09 +01:00
Damien Elmes
0bf2538989
remove sidebar margins
2021-02-02 16:35:42 +10:00
Damien Elmes
7fc32db0c9
fix: slowdowns after import; hard to read popup
...
QTextEdit() will pin the CPU at 100% for seconds to minutes when
fed a large string to display - work around it by switching to
QPlainTextEdit().
Also strip HTML before showing the user - easier to read, and less
text to display. And turn off word wrap, as it makes it easier to skim,
and further reduces the work the widget needs to do.
https://forums.ankiweb.net/t/big-issue-where-anki-gets-slow-when-you-import-this-deck/7050
2021-02-02 15:49:47 +10:00
abdo
ee1ed033a2
Hide sidebar items when there is no match
2021-02-02 05:41:45 +03:00
abdo
6f5d1bca3f
Add more sidebar section roots
2021-02-02 04:51:45 +03:00
Damien Elmes
b7bfe58afe
fix sync warning caused by mistake in typing work
2021-02-02 10:43:49 +10:00
Damien Elmes
3a8fce69dd
ditch QSortFilterProxyModel in favour of our own code
...
Simpler and approximately twice as fast in a large collection:
old approach
search for a: 371ms
search for an: 260ms
new approach:
search for a: 171ms
search for an: 149ms
Still todo: add enum defs for the other root categories, update
the _section_root() calls, and update is_expanded() to use the new
extra types
2021-02-02 10:40:50 +10:00
RumovZ
b450c8d45c
Add remaining type hints to dyndeckconf etc.
2021-02-01 23:46:56 +01:00
RumovZ
c18af2a0a9
Merge branch 'master' into dyn-deckconf
2021-02-01 23:33:41 +01:00
RumovZ
2ddb4edbb0
Rename standard buttons to have transaltions
2021-02-01 23:20:57 +01:00
RumovZ
6c7b195da8
Make browser links unfocusable
...
Since Enter would trigger Accept anyway, there is no point in them
having focus.
2021-02-01 21:17:15 +01:00
RumovZ
4666ba8b70
Enable renaming from dyndeck dialogue
2021-02-01 21:02:22 +01:00
RumovZ
8065e73ef8
Add cross links for second dyndeck filter
2021-02-01 19:10:05 +01:00
RumovZ
0d37254238
Style browser-from-filtered-deck button
...
Use theme color and add hover effect.
2021-02-01 18:01:57 +01:00
abdo
c96248d67f
Expand sidebar match trees one level
...
See 132bb5ff36
2021-02-01 19:12:43 +03:00
Damien Elmes
a56b09b987
add a bunch of return types
2021-02-01 23:53:23 +10:00
RumovZ
4d097b995d
Add button in dynDeckConf to search in browser
2021-02-01 13:55:03 +01:00
Damien Elmes
f15715fb07
add types to various other files
...
Mainly automated with MonkeyType
2021-02-01 22:08:56 +10:00
RumovZ
0949cdc73e
Rename "Filtered Deck from Current Filter"
2021-02-01 12:09:37 +01:00
Damien Elmes
84f8d7f604
add some types to main.py
2021-02-01 20:59:18 +10:00
RumovZ
6b1d5f14e8
Change filtered-deck shortcut in browser to Ctrl+G
2021-02-01 11:59:16 +01:00
RumovZ
6de6e5f339
Make browser accept optional args and add reopen
...
That way, the caller doesn't have to hold a reference to the browser and
explicitly call it again, if it wants to search for something specific.
Also, if the browser was closed and opened for a single-card-search, it
now won't perform a redundant current-deck-search first.
2021-02-01 11:54:28 +01:00
Damien Elmes
98f4b3db81
add types to utils.py
...
The function signatures for things like getFile() are awful, but
sadly are used by a bunch of add-ons.
2021-02-01 20:23:48 +10:00
RumovZ
d2024d1d1e
Fix pylints and type annotations in dyndeckconf
...
Also fix int representation of learning steps.
2021-02-01 09:56:10 +01:00
RumovZ
5aac81d15f
Make DialogManager accept kwargs
...
When opening a dialogue accepting multiple optional arguments, relying
on position is error-prone and requires passing Nones to fill unused
parameter slots.
2021-02-01 08:50:19 +01:00
Damien Elmes
08b76e4489
add helper script to run mypy daemon
2021-02-01 17:29:03 +10:00
Damien Elmes
d13762bd32
add types to editor.py
2021-02-01 17:28:35 +10:00
Damien Elmes
1f6ed0739f
Merge pull request #962 from hgiesel/editordirs
...
Make editor a rollup package within data/web/js
2021-02-01 13:40:54 +10:00
Damien Elmes
328c86d3a5
add missing types to sidebar.py
2021-02-01 09:51:46 +10:00
Damien Elmes
66c8ee3e0a
add missing types to browser.py
2021-02-01 09:39:55 +10:00
RumovZ
011b562038
Add current-filter-to-filtered-deck action
2021-01-31 23:16:49 +01:00
RumovZ
52867dfa6c
Make dyndeckconf a registered dialogue
2021-01-31 22:37:08 +01:00
Henrik Giesel
70b7cbcd4a
Move editor css to editor directory
2021-01-31 19:03:40 +01:00
RumovZ
0960ea6ece
Rework dynndeckconf
...
- Handle deck building inside class. New deck is built unless caller
passes filtered deck.
- If no deck is passed and current deck is filtered, copy settings.
- Remove exec_().
2021-01-31 18:20:47 +01:00
Henrik Giesel
2ab06a6540
Move editor to /ts/editor
2021-01-31 14:15:03 +01:00
Henrik Giesel
859a52ab15
Fix type issues
2021-01-31 13:34:39 +01:00
Henrik Giesel
33160dcb00
Make editor a rollup package
2021-01-31 13:34:37 +01:00
RumovZ
13c6921da1
Remove protobuf filters whole_col and current_deck
2021-01-31 11:12:49 +01:00
Damien Elmes
6c483bb577
add public wrappers for remaining backend functions
2021-01-31 18:56:16 +10:00
Damien Elmes
67cb147493
move rsbridge into _backend
2021-01-31 18:55:45 +10:00
Damien Elmes
9d853bbb03
start work on more clearly defining backend/protobuf boundaries
...
- anki._backend stores the protobuf files and rsbackend.py code
- pylib modules import protobuf messages directly from the
_pb2 files, and explicitly export any will be returned or consumed
by public pylib functions, so that calling code can import from pylib
- the "rsbackend" no longer imports and re-exports protobuf messages
- pylib can just consume them directly.
- move errors to errors.py
Still todo:
- rsbridge
- finishing the work on rsbackend, and check what we need to add
back to the original file location to avoid breaking add-ons
2021-01-31 18:55:45 +10:00
RumovZ
3e69d39a25
Add missing sidebar onClicks
2021-01-31 08:56:34 +01:00
Damien Elmes
cb805cf355
Merge branch 'more-backend-search' into main
2021-01-31 14:21:51 +10:00
Damien Elmes
126b642115
disable multiple selection for now
2021-01-31 14:02:38 +10:00
Damien Elmes
18f0b78716
disable dragging of unsupported items
2021-01-31 13:46:31 +10:00
Damien Elmes
4579740df6
support dragging multiple decks at once
2021-01-31 13:46:31 +10:00
Damien Elmes
49a40e7178
add missing check for on_done==None in with_progress()
2021-01-31 13:46:31 +10:00
Damien Elmes
28ff061c19
support drag&drop of decks in sidebar
2021-01-31 13:46:31 +10:00
Damien Elmes
8410330f94
move drag/drop deck logic to backend
2021-01-31 13:46:31 +10:00
RumovZ
9bfe8e3840
Remove search button and reword search bar hint
2021-01-30 19:23:40 +01:00
RumovZ
b0890b0e47
Manually namespace enum variants in SearchTerm
...
In protobuf "...enum values use C++ scoping rules, meaning that
enum values are siblings of their type, not children of it.
Therefore, [an enum variant] must be unique within [a message],
not just within [the enum.]"
So we must prefix enum variants with their enum's name, but can
also call them directly from the message namespace.
The protobuf crate is smart, though, and strips the prefixes.
(Simultaneously change some SearchTerm variant names.)
2021-01-30 17:56:29 +01:00
RumovZ
375794893f
Replace leftover _named_filter with _filter_func
2021-01-30 17:39:21 +01:00
Henrik Giesel
126af1fef3
Fix focus on first field upon opening editor
2021-01-30 14:20:14 +01:00
RumovZ
9e9d8b9c7a
Build list in focusCid and specify exception
...
model.cards may be a protobuf sequence but focusCid needs list's index
method, so convert to list, but only if needed.
2021-01-30 13:15:46 +01:00
RumovZ
5425b00d2b
Import SearchTerm from collection in aqt
2021-01-30 12:51:24 +01:00
RumovZ
26e5235846
Fix type annotations in browser search
2021-01-30 11:24:33 +01:00
RumovZ
63e8b44629
Update docstrings for browser search
2021-01-30 11:05:48 +01:00
RumovZ
9c4cc88b47
Auto search and check input before model search
...
- Search for current deck automatically on browser setup.
- Hide current deck and current card searches.
- Check user search input before passing it on to the model, so invalid
searches don't change TableView.
2021-01-30 10:53:42 +01:00
Damien Elmes
b66bedbc9f
Merge pull request #957 from hgiesel/fieldsshadow
...
Implement editor as Web Component
2021-01-30 15:13:58 +10:00
Damien Elmes
705012164b
move Rating up a level
...
More ergonomic, and will allow reuse if we expose prop:rated in
the future.
2021-01-30 11:54:39 +10:00
Damien Elmes
cb6b88da0f
simplify nid/nids searches, and ditch helper function
...
- IdList could be re-used for a cids: search in the future if required.
- Embedding the message means it's easy to access from Python as
an attribute of SearchTerm.
2021-01-30 11:37:00 +10:00
Damien Elmes
1adc9952f4
simplify Dupe message and ditch helper function
...
Calling code doesn't need to know about the existence of such helpers;
it can just rely on code completion to discover the required arguments.
2021-01-30 11:10:26 +10:00
Damien Elmes
5e6dd54c8e
export SearchTerm from collection.py, and avoid exporting embedded items
2021-01-30 11:01:11 +10:00
Damien Elmes
73b897c754
rename FilterToSearchIn in backend to match frontend
2021-01-30 10:54:21 +10:00
Damien Elmes
52bac7a7a1
use a separate enum for the is:* searches
2021-01-30 10:49:00 +10:00
Damien Elmes
22b80c2dd5
combine forgot_in_days and studied_today into a more general 'rated'
2021-01-30 10:26:23 +10:00
Damien Elmes
177036d0c1
Merge pull request #958 from hgiesel/zindexedtopbar
...
Make sticky topbar have a positive z-index
2021-01-30 09:14:50 +10:00
RumovZ
2ca4f31fc8
Update search history only after successful search
...
Ergo, don't save invalid searches, but also save searches normalised so
equivalent searches get saved only once.
2021-01-29 23:05:51 +01:00
RumovZ
671c6a7b3e
Rework search initialisation
...
- Remove _searchPrompt.
- Add placeholder prompt.
- Move search for current card from browser to caller. (Thus, support
current card search even with opened browser.)
2021-01-29 21:07:42 +01:00
Henrik Giesel
61346cf1f7
Rename editingContainer -> editingArea; editingArea -> editable
...
* Custom elements are now namespaces with `anki-`
* The element names are inspired by summernote, which have the same
naming scheme of "editingArea > editable"
2021-01-29 20:32:21 +01:00
Henrik Giesel
2e72de4af0
Reorder methods / properties
2021-01-29 20:13:02 +01:00
Henrik Giesel
e37fd2e091
Remove unnecessarily observed attribute
2021-01-29 20:11:00 +01:00
Henrik Giesel
aa924ac821
Add semicolon in js message
2021-01-29 19:48:17 +01:00
Henrik Giesel
3559834bc9
Make forEditorField more cheaper to execute by avoiding casting to Array
2021-01-29 19:38:55 +01:00
RumovZ
c299e271e8
Refactor search_string() and FilterToSearchIn
...
See #955 .
2021-01-29 18:27:33 +01:00
Henrik Giesel
79dc0ecf86
Remove explicit ids, as they are not necessary anymore
2021-01-29 18:07:31 +01:00
Henrik Giesel
5e67e706fb
No need to set initial values for editing area base CSS
2021-01-29 17:51:26 +01:00
Henrik Giesel
32ee863577
Remove checking for class names for instance checks
2021-01-29 17:41:27 +01:00
Henrik Giesel
982372beae
Put HTML initialization into web component constructor
...
* disconnectedCallback should remove event listeners and free other resources
* attributes belong to connectedCallback
2021-01-29 15:50:34 +01:00
Henrik Giesel
0beefc0699
Move setting of index to connectedCallback
2021-01-29 14:54:59 +01:00
Henrik Giesel
fe87f986d3
Remove user styling in editor again for now
2021-01-29 14:54:59 +01:00
Henrik Giesel
594fc9bebd
Fix focus change on tab
2021-01-29 14:54:59 +01:00
Henrik Giesel
6e907fd8b6
Move styling attributes from editor to editing-area that are for editing area
2021-01-29 14:54:58 +01:00
Henrik Giesel
a620bf91a8
Make button highlight white in nightMode
2021-01-29 14:54:58 +01:00
Henrik Giesel
3eade1c64d
Make the text color part of the base style in editor
2021-01-29 14:54:58 +01:00
Henrik Giesel
af3753948a
Allow stylesheet of note type take effect on editor fields
2021-01-29 14:54:58 +01:00
Henrik Giesel
8a525d3643
Use currentField.getSelection instead of window.getSelection
2021-01-29 14:54:58 +01:00
Henrik Giesel
08a6f8f02f
Use new focusEditingArea and blurEditingArea to delegate to editing area
2021-01-29 14:54:58 +01:00
Henrik Giesel
aed38de228
Fix dupes, but also make sticky, and centered to draw more attention
2021-01-29 14:54:58 +01:00
Henrik Giesel
bec709c7a9
Update setFonts and setBackgrounds
2021-01-29 14:54:58 +01:00
Henrik Giesel
db0c776210
Fix inListItem for shadow roots
2021-01-29 14:54:58 +01:00
Henrik Giesel
e0d1450ce0
Rename fieldContainsInlineContent to containsInlineContent to reflect new usage
2021-01-29 14:54:58 +01:00
Henrik Giesel
7dc4b8818c
Isolate styling of editing-area into new scss file
2021-01-29 14:54:58 +01:00
Henrik Giesel
1db71805d3
Create a rough draft of the editor web component
2021-01-29 14:54:58 +01:00
Damien Elmes
d558f08a74
remove debug statement
2021-01-29 23:21:57 +10:00
Henrik Giesel
4b7d406559
Make sticky topbar have a positive z-index
2021-01-29 14:21:32 +01:00
Damien Elmes
79239c89b7
move saved search code into sidebar.py, and remove from Filter button
2021-01-29 23:05:30 +10:00
Damien Elmes
132bb5ff36
add expand/collapse children options
2021-01-29 22:54:00 +10:00
Damien Elmes
6ba5ff5a01
place each sidebar section under its own collapsible parent node
...
- Allows for group operations like "clear unused tags"
- Allows users to hide groups they're not interested in
2021-01-29 22:11:05 +10:00
Damien Elmes
5ff7944a26
add getter/setter for boolean config values
2021-01-29 21:03:19 +10:00
RumovZ
349bd9d681
Use proper docstrings
2021-01-29 09:40:21 +01:00
RumovZ
1fb6024454
Rename filters added_in etc. to added_in_days
2021-01-29 09:38:13 +01:00
Damien Elmes
4ac9ad1407
show actual error when graphData fails
...
The original reason for the catch-all message was users with bad
data such as decimal intervals, but those get automatically coerced
these days. The common case should now be invalid search strings, which
we can show verbatim.
2021-01-29 14:39:05 +10:00
Damien Elmes
57c53632a6
Revert "Make sidebar search matching work with full_name instead of name"
...
This reverts commit 6850e0f78e
.
Using the full name caused issues with highlighting:
https://github.com/ankitects/anki/pull/951#issuecomment-769516003
Let's revert this for now and see if demand presents itself.
2021-01-29 13:18:28 +10:00
Damien Elmes
151cf52718
vary sidebar highlight with theme
2021-01-29 13:15:38 +10:00
Damien Elmes
9584efc066
Merge pull request #951 from abdnh/sidebar-search
...
Add search bar to the sidebar
2021-01-29 11:32:26 +10:00
abdo
903008f2bd
Handle sidebar refreshing while searching
2021-01-29 04:20:15 +03:00
Damien Elmes
64af4dfe7e
drop potentially slow regex usage in cloze check
...
Closes #956 , thanks to Henrik.
2021-01-29 11:15:33 +10:00
abdo
9492c8305e
Wait for some time before performing sidebar search
2021-01-29 03:45:16 +03:00
abdo
6850e0f78e
Make sidebar search matching work with full_name instead of name
2021-01-29 02:36:13 +03:00
RumovZ
f04228990d
Add browser_search helper in mw
2021-01-28 20:51:32 +01:00
RumovZ
251fe50660
Fix search calls in addcards
2021-01-28 20:01:20 +01:00
RumovZ
423d7e5098
Use backend filter for findDupes and handle excep.
2021-01-28 19:49:16 +01:00
RumovZ
a930aa41f0
Use backend nid filter in addcards and mediacheck
2021-01-28 18:59:20 +01:00
RumovZ
407358ab68
Use backend nid filter in browser
2021-01-28 16:21:56 +01:00
RumovZ
1635f20af3
Prevent search prompt from being saved as a filter
...
Normalisation would render it useless.
2021-01-28 13:31:08 +01:00
RumovZ
99cb68513c
Use backend filter for search prompt
2021-01-28 13:26:52 +01:00
RumovZ
77765d4896
Replace remaining literal searches in aqt
2021-01-28 11:19:07 +01:00
RumovZ
ea46e24662
Use col instead of backend in aqt for search strs
2021-01-28 11:17:24 +01:00
Damien Elmes
2224fce936
fix crashes when activating context menu/items while searching
2021-01-28 19:12:07 +10:00
Damien Elmes
b148095243
basic match highlighting
2021-01-28 18:58:51 +10:00
Damien Elmes
8b08687b0c
basic tree-based filtering with a sort proxy
...
Some things left to do:
- instead of searching on each keystroke, have the keystroke start
a timer and wait 600-1000ms before performing the search
- handle the case .refresh() is called while searching
It would also be nice to have some visual distinction between matching
rows and their non-matching parents.
2021-01-28 18:51:18 +10:00
Damien Elmes
fbf2f673f4
fix sidebar model.parent() returning invalid values
...
Triggered a crash when using a model proxy.
2021-01-28 17:48:33 +10:00
Damien Elmes
f45d51c92d
Merge pull request #952 from hgiesel/fieldsflex
...
Deal with inline content vs block content and <br> in editor.ts
2021-01-28 15:49:31 +10:00
Damien Elmes
a03da5ce89
add type check to textFormat arg
2021-01-27 14:22:17 +10:00
Henrik Giesel
bf7ff65af6
Rename fieldIsInInlineMode to fieldContainsInlineContent
2021-01-27 02:35:14 +01:00
Henrik Giesel
d9f00c4839
Remove unused helper functions
2021-01-27 00:55:00 +01:00
Henrik Giesel
b2b17f4c3d
Recreate border-spacing with margins for #fields
2021-01-27 00:50:26 +01:00
Henrik Giesel
9b5d915983
Change nodeIsInline logic to be more typesafe
2021-01-26 23:49:48 +01:00
Henrik Giesel
feddf96f2a
Change logic to detect inline elements, as the display style property may not be set after setting innerHTML
2021-01-26 23:42:04 +01:00
abdo
208c713e39
Add search bar to the sidebar
...
https://github.com/ankitects/help-wanted/issues/6
2021-01-27 01:41:57 +03:00
Henrik Giesel
520c4a3b4d
Make #fields display correctly
2021-01-26 23:17:50 +01:00
Henrik Giesel
e481452114
Make fields div instead of table + implement fieldIsInInlineMode logic
2021-01-26 23:00:55 +01:00
Henrik Giesel
335267d42e
Strip trailing newline if inline elements logic
2021-01-26 21:26:04 +01:00
Damien Elmes
322788133b
tooltip() instead of print() when no tts tag matches
...
Can help with debugging user error like an incorrectly-typed language
code. Don't ask me how I know. :-)
2021-01-26 20:37:24 +10:00
Damien Elmes
e324f06348
Merge pull request #944 from Arthur-Milchior/help
...
NF: HelpPage in an enum
2021-01-26 11:33:39 +10:00
Damien Elmes
644cc46dea
Merge pull request #897 from hgiesel/statssearch
...
Triggering searches from the stats screen.
2021-01-26 11:31:36 +10:00
Arthur Milchior
e0a2d90a68
NF: HelpPage in an enum
...
Hopefully, this can help with updating on next manual update and maybe even linking to manual translation
2021-01-26 02:16:37 +01:00
Damien Elmes
0a0de2ce7b
Merge pull request #945 from RumovZ/dyndeck-search
...
Normalize dyndeck search and handle exception
2021-01-26 09:24:56 +10:00
Damien Elmes
a82744a3e5
load sidebar in background
...
Allows the UI to repaint during processing, but will still block
DB operations until the call completes.
2021-01-26 09:02:08 +10:00
RumovZ
52c27e7b99
Normalize dyndeck search and handle exception
2021-01-25 23:21:32 +01:00
RumovZ
060fdc824b
Move show_invalid_search_error to utils
2021-01-25 23:19:19 +01:00
Henrik Giesel
759ed17963
Move dispatch logic from Histogram to individual graphs
2021-01-25 16:34:44 +01:00
Henrik Giesel
a7c8b021dd
Satisfy formatter
2021-01-25 13:46:44 +01:00
Henrik Giesel
fdf4c6628f
Add browserSearch bridge command
2021-01-25 13:44:19 +01:00
Damien Elmes
31a3add848
fix finished screen not showing when learning cards due later
2021-01-25 21:12:57 +10:00
Arthur Milchior
5c69f2c324
Correct browse help link
2021-01-23 14:48:29 +01:00
Damien Elmes
2a875ffc55
Merge pull request #934 from hgiesel/graphprefs
...
Add GraphsPreferences API to graphs for setting persistent preferences
2021-01-23 21:24:41 +10:00
Damien Elmes
37ca8afaf6
minor wording tweak: GraphsPreferences -> GraphPreferences
2021-01-23 20:47:45 +10:00
Damien Elmes
b16f6cbcce
Merge pull request #938 from hgiesel/editorflex
...
Small refactor of topbar buttons
2021-01-23 20:09:42 +10:00
Damien Elmes
8d5dca4bda
move sidebar code from browser.py to sidebar.py and tidy up
...
https://github.com/ankitects/help-wanted/issues/6
Some notes:
- use our own routine to toggle the sidebar, which avoids a useless
refresh on browser close, and allows us to limit the delayed loading
to initial browser load.
- add-ons that limited themselves to the browser_will_build_tree hook
should theoretically continue working; ones that were monkey patching
will likely break. A few appear to be broken at the moment anyway,
so it's probably a good time to be making this change.
2021-01-23 19:59:12 +10:00
Damien Elmes
9db3f0dd19
drop tags/decks/etc from Filter button
...
https://github.com/ankitects/help-wanted/issues/6
These are a relic from when the sidebar defaulted to off, and I don't
think enough people are using them to bother keeping them around.
Once the the card state and saved filter functionality moves into the
sidebar and top menus, we may be able to remove the Filter button
completely.
2021-01-23 18:21:44 +10:00
Henrik Giesel
bf130d1da0
Change the function name in genbackend.py
2021-01-22 20:05:28 +01:00
Henrik Giesel
de71123ab4
Rename GraphsPreferencesOut to simply GraphsPreferences
2021-01-22 19:39:03 +01:00
abdo
0110102ea2
Render card templates as trees in the sidebar
...
Reusing the note type icon and not caring about saving collapse state
for now.
2021-01-22 17:49:20 +03:00
Henrik Giesel
d1ada88657
Successfully send post request to rust
2021-01-22 14:37:24 +01:00
Henrik Giesel
054c30a695
Add non-functioning logic for settings graphs preferences
2021-01-22 13:14:35 +01:00
Henrik Giesel
665a13e378
Add GraphsPreferences endpoint to backend
2021-01-22 13:13:48 +01:00
Henrik Giesel
1df6c5f596
Avoid highlighting of toprightbuttons to shift the topbar
2021-01-22 12:53:45 +01:00
Henrik Giesel
9226d50185
Space items by using margins instead of spaces
...
* also changed name of topbutton container back to topbutsOuter as it is clearer
* starting with Chromium 83, `row-gap` would be better suited for this
2021-01-22 12:17:10 +01:00
Henrik Giesel
97f8f1b89e
Switch from floating windows and clearfix to flex and justify-content: space-between
2021-01-22 11:37:11 +01:00
Damien Elmes
0c35d30979
Merge pull request #935 from abdnh/sidebar-nt
...
Add manage note types menu item to the sidebar
2021-01-22 14:21:28 +10:00
abdo
426ea1aba9
Move the logic for selecting a note type to models.py
2021-01-22 05:56:39 +03:00
Henrik Giesel
1f4de7fe4b
Adjust the positioning of the editor toolarea via CSS
2021-01-21 21:36:33 +01:00
Henrik Giesel
2946843b81
Remove image click event handler, as it never takes place
...
* className of fields will be "field clearfix", never just "field"
2021-01-21 20:50:17 +01:00
Henrik Giesel
e91a4b4362
Remove javascript resizing code from editor.ts
2021-01-21 19:59:16 +01:00
abdo
918bba6365
Add manage note types menu item to the sidebar
2021-01-21 20:27:20 +03:00
Damien Elmes
6d8a9a7ef5
Merge pull request #930 from hgiesel/editorts
...
Refactor editor.ts
2021-01-21 10:44:11 +10:00
Henrik Giesel
6262997599
Explicitly execute code deactivating button focus from editor.py
2021-01-20 17:06:08 +01:00
abdo
0fc4c21dcc
Add filter remove/rename actions to the sidebar
2021-01-20 03:26:53 +03:00
Henrik Giesel
cfc8e34cf0
Remove jQuery from most top functions, and avoid waiting for jquery load
2021-01-19 03:52:46 +01:00
Henrik Giesel
5b24e5c522
Remove some unnecessary jQuery, replace some toggles with classList.toggle
2021-01-19 03:06:44 +01:00
Henrik Giesel
27a1e81088
Remove code which supposedly fixing focus, but which is not functional
2021-01-19 02:54:15 +01:00
Henrik Giesel
47d26126e7
Switch to iterables for elem.style and elem.attributes
2021-01-19 02:48:41 +01:00
Henrik Giesel
a4921a36dd
Satisfy formatter
2021-01-19 01:08:15 +01:00
Henrik Giesel
4deeb798ca
Prefer template string and addEventListener
over string concatenation and .on<event>
2021-01-18 17:42:29 +01:00
Henrik Giesel
150de7a683
Use more strict TypeScript in editor.ts
2021-01-18 17:18:35 +01:00
Henrik Giesel
a898224d3d
Switch to KeyboardEvent.code rather than KeyboardEvent.which, which is deprecated
2021-01-18 15:19:57 +01:00
Damien Elmes
318cc01c73
Merge pull request #900 from abdnh/tagtree
...
Hierarchical tags
2021-01-18 16:36:22 +10:00
abdo
5ac69d6dc6
Fix wrong tag collapse state being used
2021-01-18 06:50:29 +03:00
Damien Elmes
a57e326906
skip the schema warning on template rename
...
https://forums.ankiweb.net/t/unnecessary-full-upload-notification/6611
2021-01-18 12:03:07 +10:00
abdo
dbd0334f97
Remove unused set_filter()
2021-01-16 18:51:31 +03:00
Damien Elmes
9686cd99ec
search error tweaks
...
- use markdown instead of HTML, to make editing and translating easier
- use a shared prefix
- a few very minor wording tweaks
- we don't need to translate undocumented command errors
- share a string for positive number of days
- share a string for invalid property and state arguments, and avoid
listing them out
Related discussion: https://github.com/ankitects/anki/pull/922
2021-01-16 15:59:19 +10:00
Damien Elmes
a674712916
Merge pull request #925 from hgiesel/preferbr
...
Prefer <br> over <div></div> in Editor
2021-01-16 13:03:28 +10:00
Damien Elmes
f1a4c57dc1
restore shortcuts that got lost in Fluent conversion
...
They were missed as they were not marked 'notr'.
https://forums.ankiweb.net/t/home-and-end-keys-no-longer-work-in-browse-window/6524
2021-01-16 10:03:29 +10:00
Henrik Giesel
0db8a14497
Deal with div insertion on deleting list item
2021-01-15 18:46:37 +01:00
Henrik Giesel
4e1139021b
Consider list edge case for line breaks
...
* Enter makes a new bullet point
* Shift+Enter makes a line break in current bullet point
2021-01-15 18:46:37 +01:00
Henrik Giesel
5c6694950d
Prefer <br> over <div></div>
2021-01-15 18:46:37 +01:00
abdo
e018ea94b6
Merge branch 'master' of https://github.com/ankitects/anki into tagtree
2021-01-15 01:12:01 +03:00
RumovZ
7b9cc017c4
Use backend to set dupe filter
2021-01-14 10:42:37 +10:00
Damien Elmes
633034b24d
add local sync server frontend
2021-01-13 11:42:00 +10:00
abdo
72e8f9d640
Merge branch 'master' of https://github.com/ankitects/anki into tagtree
2021-01-12 23:31:58 +03:00
abdo
9a68d84483
Keep tags in human form and update the tags table structure
...
See https://github.com/ankitects/anki/pull/900#issuecomment-758284016
- Leave tag names alone and add the collapsed and config columns to the tags table.
- Update The DB check code to preserve the collapse state of used tags.
- Add a simple test for clearing tags and their children
2021-01-12 23:12:35 +03:00
Damien Elmes
1425379d41
drop basicCheck()
...
It can considerably slow down syncing on large collections
2021-01-12 18:47:08 +10:00
Damien Elmes
5f02be4943
Merge pull request #914 from hgiesel/previewineditor
...
Preview Button in Editor instead of Browser
2021-01-11 19:12:06 +10:00
Damien Elmes
7883ea0396
Merge pull request #915 from RumovZ/fix-template-filter
...
Fix _template_filter and update want_release_gil()
2021-01-11 16:20:50 +10:00
Kyle Mills
a0dc33c0e8
typo
2021-01-10 07:18:08 -08:00
Henrik Giesel
cf1240bb18
Make keys parameter requiring func parameter in _addButton explicit
2021-01-10 13:42:23 +01:00
RumovZ
388e958f39
Don't add 1 when calling _template_filter()
...
See #913 .
2021-01-10 11:30:14 +01:00
Henrik Giesel
fce536f205
Close previewer if there is no card to render
2021-01-10 02:01:24 +01:00
Henrik Giesel
ace61835de
Fix formatting, use shortcut on preview before displaying
2021-01-10 01:50:00 +01:00
Henrik Giesel
097fa16783
Allow closing the Preview Dialog with Ctrl+Shift+P
2021-01-10 01:34:59 +01:00
Henrik Giesel
6431f0b6b1
Prevent error when browser is closed with previewer open
2021-01-10 01:21:52 +01:00
Henrik Giesel
6afc495035
Activate toggle on hotkey invocation
2021-01-10 01:10:23 +01:00
Damien Elmes
8b877f0a08
add type to _named_filter()
...
The ...Value types generated by mypy-protobuf are only available
at typechecking time, and pylint chokes on them despite the use
of annotations from __future__ - so we either need to quote them,
or use # pylint: disable=no-member
2021-01-10 09:11:48 +10:00
Henrik Giesel
59d0e8f036
Add shortcut to new preview button
2021-01-10 00:00:19 +01:00
Henrik Giesel
fe118197a3
Improve styling of new preview button on light and nightMode
2021-01-09 23:55:39 +01:00
Henrik Giesel
28278fcc40
Remove preview button from browser.py top bar
2021-01-09 23:25:56 +01:00
Henrik Giesel
ece753991e
Make button show its toggle state
2021-01-09 23:16:01 +01:00
Henrik Giesel
f5d429a5ca
Put Preview button into editor inside browser
2021-01-09 22:34:53 +01:00
RumovZ
f83553c82a
Merge branch 'master' into backend-filters
...
Adapt new formatting.
2021-01-09 19:03:43 +01:00
RumovZ
b763fc5b2a
Use explicit wrapper functions to get filters
2021-01-09 16:48:47 +01:00
abdo
f7f509c70d
Move tag collapse method to the backend
2021-01-09 17:10:16 +03:00
abdo
b33267f754
Do not check for missing tag parents at registration time
2021-01-09 17:10:16 +03:00
abdo
b276ce3dd5
Hierarchical tags
2021-01-09 17:10:13 +03:00
RumovZ
b99d9cda74
Prettify frontend filter code
2021-01-09 12:34:46 +01:00
RumovZ
fda2bfdb4e
Use backend filters instead of literal searches
2021-01-09 10:51:15 +01:00
abdo
7b58120eb2
Exclude aqt/hooks_gen.py from formatting
2021-01-09 03:01:48 +03:00
wallgrenen
e001cd4d3a
remove unused variables and commented-out code
2021-01-08 20:53:27 +01:00
RumovZ
d30062a8a5
Compare and save filters normalised
...
When checking whether the current search is a saved filter, compare the
searches normalised to allow the detection of equivalent expressions.
Invalid searches are accepted unaltered to allow the deletion of invalid
saved filters.
As for saving new filters, do so normalised, respectively, reject
invalid searches.
2021-01-07 22:11:21 +01:00
RumovZ
478a3bd0bc
Format
2021-01-07 18:20:14 +01:00
RumovZ
efd554ea29
Provide ConcatSeparator through rsbackend.py
2021-01-07 17:48:30 +01:00
Damien Elmes
a7fffb7365
ignore missing pyaudio
2021-01-07 16:25:55 +10:00
Damien Elmes
b30b7c3073
fix qt/ pylints
2021-01-07 16:21:50 +10:00
Damien Elmes
ac923b5232
cap pylint CPUs in qt/
...
After 4 cores, improvements are tiny, and soon start going backwards,
presumably due to the overhead of importing PyQt into each worker.
2021-01-07 16:19:52 +10:00
Damien Elmes
4b11854a2e
fix pylint in qt
...
pylint fails to read Qt modules when invoked as a subprocess with
-j 0, and it looks like I committed this in the middle of debugging
the issue. Work around it by invoking pylint directly. It's still
awfully slow, taking 30 seconds on a 10 core machine.
2021-01-07 15:47:25 +10:00
Damien Elmes
f4c8462b97
fix another broken setWindowFlags
2021-01-07 14:46:55 +10:00
Damien Elmes
94064b8230
convert setWindowFlags call into helper, and fix invalid variables
...
"type: ignore" was masking the invalid references to self in places
like showText()
2021-01-07 14:24:49 +10:00
Damien Elmes
a1c17d114a
Merge pull request #860 from RumovZ/norm-search
...
Normalise search
2021-01-07 10:51:36 +10:00
Damien Elmes
f667521ee0
only adjust search on left button click
...
Closes #898
2021-01-07 10:08:23 +10:00
wallgrenen
52a2447f09
replace broken link
2021-01-07 09:56:25 +10:00
Damien Elmes
5c08bd8fb8
Merge pull request #899 from BlueGreenMagick/remove-context-help-btn
...
remove context help button
2021-01-07 09:52:12 +10:00
RumovZ
6ee9e4f58c
Merge branch 'master' of https://github.com/ankitects/anki into norm-search
2021-01-06 20:57:24 +01:00
RumovZ
cbf68da630
Format
2021-01-06 20:35:11 +01:00
RumovZ
539f701573
Add exception handling for filter modifications
2021-01-06 20:25:13 +01:00
RumovZ
d9f7d2e70d
Add tests for writer.rs
...
Also minor adjustments to concatenate_searches.
2021-01-06 19:39:34 +01:00
RumovZ
07499dd890
Implement search replacing via Ctrl+Shift combo
...
Also switch to using the new backend functions for concatenating and
negating searches.
2021-01-06 18:32:29 +01:00
wallgrenen
78601d29ba
replace broken link
2021-01-06 17:03:39 +01:00
BlueGreenMagick
6224658c0d
remove context help button
2021-01-06 22:15:48 +09:00
RumovZ
6d6cd87b8f
Adjust frontend to normalized search syntax
2021-01-06 14:05:28 +01:00
Damien Elmes
d464d97f10
Merge pull request #891 from BlueGreenMagick/sidebar-delete-deck
...
Sidebar delete deck
2021-01-06 18:56:15 +10:00
Damien Elmes
25858c212c
fix unhandled sync error
...
Thanks to Abdo:
https://forums.ankiweb.net/t/sync-anki-on-desktop-error/6299/2
2021-01-06 18:51:28 +10:00
BlueGreenMagick
adb8be92a0
format ask_delete_deck method more readable
2021-01-05 21:33:59 +09:00
BlueGreenMagick
95a62b20d3
delete deck in background
2021-01-05 21:33:59 +09:00
BlueGreenMagick
ada8c505f6
add BrowserDeleteDeck to ResetReason
2021-01-05 21:33:48 +09:00
BlueGreenMagick
2a1b6f90ae
add delete_deck to sidebar context menu
2021-01-05 20:09:55 +09:00
BlueGreenMagick
f6f06986d0
seperate ask_delete_deck and _delete method
2021-01-05 20:09:47 +09:00
Damien Elmes
83136d2491
Merge pull request #890 from hgiesel/addonclose
...
Add closeWithCallback method to Addons dialog
2021-01-04 21:16:01 +10:00
Henrik Giesel
5f75d5694d
Add silentlyClose method to Addons dialog
2021-01-04 11:52:00 +01:00
Damien Elmes
94fe1f898f
Merge pull request #888 from hgiesel/studiedtoday
...
Wrap studied_today in deckbrowser in div and span
2021-01-04 14:27:35 +10:00
Damien Elmes
f3fa9daae2
do tag rename and tag clearing in background; move logic to tags.py
...
Because the logic is in rename_tag() now, it means we create a
checkpoint even if the tag is orphaned. This is because currently
checkpointing is a GUI responsibility. In the future we need to introduce
multi-level undo, and should move responsibility for managing it
to the backend.
2021-01-04 14:14:39 +10:00
Damien Elmes
35ce1b0d29
types don't need quoting, as annotations is imported from future
2021-01-04 13:46:00 +10:00
Damien Elmes
03b10b0d44
Merge pull request #887 from BlueGreenMagick/deck-rename-checkpoint
...
don't set checkpoint when deck rename is cancelled
2021-01-04 13:44:28 +10:00
Henrik Giesel
0a121077de
Wrap studied_today in div and span in deckbrowser
2021-01-03 14:54:44 +01:00
BlueGreenMagick
35d3d89705
escape tags when finding notes
2021-01-03 17:34:44 +09:00
BlueGreenMagick
46346d01a0
add rename_tag to browser sidebar contextmenu
2021-01-03 16:36:54 +09:00
BlueGreenMagick
53edeaf07f
don't set checkpoint when deck rename is cancelled
2021-01-03 16:30:14 +09:00
Damien Elmes
b27259096e
refreshing should happen outside of except clause
2021-01-03 10:09:42 +10:00
Damien Elmes
48ee35f6ad
Merge pull request #885 from Arthur-Milchior/hook_default_search
...
NF: Add a hook to change the default search from reviewer
2021-01-03 10:09:08 +10:00
Damien Elmes
e9c58382be
Merge pull request #884 from BlueGreenMagick/refresh-deckchooser
...
refresh deck browser after renaming deck in browser sidebar
2021-01-03 10:08:45 +10:00
Arthur Milchior
9166330618
NF: Add a hook to change the default search from reviewer
...
The goal here is to simplify my add-on which show a single card or the whole deck when the browser open
2021-01-02 19:49:11 +01:00
BlueGreenMagick
708d94714c
refresh deck browser on renaming deck
2021-01-02 23:21:41 +09:00
BlueGreenMagick
1afbf4212e
no need to call show()
2021-01-02 23:07:57 +09:00
Damien Elmes
5ec5a47708
merge separate vendor rules into single rule
...
Rather than creating a separate rule for each package, we can just
create a generic one and reuse it. Also switch to keyword arguments
in the resulting macros, as it's easier to read.
2021-01-02 11:14:00 +10:00
Henrik Giesel
450ff60815
Fix input type for _drawFlag
2021-01-01 14:14:50 +01:00
Henrik Giesel
f31b2312df
Remove browsersel
2020-12-31 16:48:04 +01:00
Henrik Giesel
ffc40d8959
Replace browsersel with css-browser-selector in aqt files and add redirect
2020-12-31 16:47:20 +01:00
Henrik Giesel
ebb8171021
Add css-browser-selector to BAZEL build file in data/web/js/vendor
2020-12-31 16:41:31 +01:00
Henrik Giesel
4da27afba8
Remove hardcoded protobufjs
2020-12-31 16:17:46 +01:00
Henrik Giesel
2ba944640d
Add build recipe to aqt/data/web/js
2020-12-31 16:15:25 +01:00
Damien Elmes
3d7b167947
Merge pull request #878 from hgiesel/updateQueue
...
Replace `_updatingQA` with promise-based `_updatingQueue`
2020-12-31 12:42:58 +10:00
Damien Elmes
4e363505f0
Merge pull request #877 from hgiesel/jquery-ui
...
Update Jquery UI and include in Bazel deps
2020-12-31 12:07:53 +10:00
Henrik Giesel
a7f17732b0
Replace () => void | Promise<void>
with Callback typedef
2020-12-30 16:04:59 +01:00
Henrik Giesel
c6c52e06b4
Add types to reviewer.ts
2020-12-30 15:06:22 +01:00
Henrik Giesel
aaa30a5d49
Replace _updatingQa synchronization with promise-based _updatingQueue
2020-12-30 14:45:27 +01:00
Henrik Giesel
30b537c6e9
Put loads first in BUILD.bazel
2020-12-30 12:16:59 +01:00
Henrik Giesel
5f149a75a9
Remove jquery-ui from vendor folder
2020-12-30 12:12:49 +01:00
Henrik Giesel
ed8b12e1d6
Add redirect for jquery-ui
2020-12-30 12:08:12 +01:00
Henrik Giesel
173da02b2f
Change include name for jquery ui in deckbrowser
2020-12-30 12:07:02 +01:00
Henrik Giesel
a22d303e2f
Add jquery-ui to vendor/BUILD.bazel
2020-12-30 12:06:06 +01:00
Damien Elmes
67191d339c
remove old symlink before installing a new version
...
https://forums.ankiweb.net/t/ubuntu-command-anki-not-found/6083/4
2020-12-30 20:56:28 +10:00
Damien Elmes
eea6bf963b
fix media attachment
...
insertHtmlRemovingInitialBR() was removed in a previous PR
2020-12-30 19:30:23 +10:00
Damien Elmes
9e1eaacc06
Revert "Merge pull request #873 from hgiesel/otherjsdeps"
...
This reverts commit 62600051ae
, reversing
changes made to 88553acb0d
.
- Standard graphs render incorrectly on latest version - the wrong number
of days are shown, and the grid lines look wrong. Any version after 0.8.3
seems to suffer from this problem.
- Pie graphs and stack graphs don't render - they are provided in separate
files, and plot.js in previous Anki versions has them included in the one
file. To maintain compatibility with add-ons, we'd need to create a single
file as before, instead of importing multiple files.
If the above issues are fixed I'd be happy to merge this in again, but
as the old graphs are on the way out, it's probably not worth the effort.
2020-12-30 14:13:52 +10:00
Damien Elmes
bdfdbda432
Merge pull request #875 from stayingpeachy/help-link
...
Update help link
2020-12-30 13:52:50 +10:00
Damien Elmes
1ee08c049e
Merge pull request #874 from hgiesel/jqueryreview
...
Update _updateQa
2020-12-30 13:51:54 +10:00
Meredith
c7e64b5fa0
update help link
...
old help link was outdated
2020-12-29 11:09:28 -05:00
Henrik Giesel
ff4780e005
Satisfy prettier
2020-12-29 14:45:20 +01:00
Henrik Giesel
7ef41ce573
Hook functions may also return void
2020-12-29 14:01:09 +01:00
Henrik Giesel
8f39c746d9
Replace ts-ignore with declare var
2020-12-29 13:43:47 +01:00
Henrik Giesel
53f77346d8
Fix typing of reviewer hooks
2020-12-29 13:42:30 +01:00
Henrik Giesel
ecdb06cbd6
Use async/await syntax in _updateQa
2020-12-29 13:34:39 +01:00
Henrik Giesel
f90b6b3430
Remove plot.js
2020-12-29 12:16:50 +01:00
Henrik Giesel
a6319326a9
Redirect references to old plotting library version
2020-12-29 12:15:46 +01:00
Henrik Giesel
ec9b4aa273
Use new version of plotting library in stats.py
2020-12-29 12:13:25 +01:00
Henrik Giesel
ef9b52f861
Copy flot file to vendor directory
2020-12-29 12:11:28 +01:00
RumovZ
95b4e4cc84
Make function names more explicit and add docs
2020-12-29 11:18:49 +01:00
Damien Elmes
666d847a0a
Merge pull request #856 from hgiesel/jquery
...
Update jQuery from 1.12.4 to 3.5.1, include in Bazel build process
2020-12-29 10:00:33 +10:00
Damien Elmes
d8778da3e8
fix legacy js remapping
...
Thanks to Henrik for catching it.
2020-12-29 09:57:34 +10:00
Henrik Giesel
083cd36e55
Fix formatting
2020-12-28 14:56:41 +01:00
Henrik Giesel
202fd6ffa5
Add mapping in redirectWebExport for new jquery file
2020-12-28 14:52:44 +01:00
Henrik Giesel
98407c3fea
Avoid building jquery to its own directory
2020-12-28 14:18:07 +01:00
Henrik Giesel
37dcdcc4c0
Rename references from vendor/jquery.js to vendor/jquery/jquery.min.js
2020-12-28 13:16:12 +01:00
Henrik Giesel
0c95cb3514
Remove jquery from Anki repo and replace with Bazel BUILD
2020-12-28 13:16:12 +01:00
Damien Elmes
904419b052
Merge pull request #869 from Arthur-Milchior/trip_new_field_name
...
New field name checks are more specific
2020-12-28 16:53:32 +10:00
Damien Elmes
7397b9c0c4
Merge pull request #858 from hgiesel/editorwhitespace
...
Remove placeholder `<br>`s in empty fields in editor
2020-12-28 16:50:23 +10:00
Arthur Milchior
89ffbe0fbb
Reject field name with : { or }
...
More than {{ is acceptable to start a tag, which means that `{{{Foo}}` won't be interpreted as "the content of `Foo`"
and should be rejected. For the sake of clarity and parsing, I suspect that those symbol should be rejected elsewhere
too.
Similary `{{Foo}}}` won't be interpreted as "Show the content of field `Foo}`" even if this field exists, so it's better
to reject `}`. It's clearly necessary to reject "}}" inside the field name, rejecting "}" seems easier to explain and
avoid future unexpected problem if the templates change.
The ":" are used to separate filters, and rejecting it in field name would ensure that there is no ambiguity.
2020-12-28 07:33:26 +01:00
Arthur Milchior
af6cb6612e
Rejects field names starting with #, ^ and /
2020-12-28 06:23:49 +01:00
Arthur Milchior
3be90c444d
New field are stripped
...
Otherwise, you can rename "Back" to " Front" and then get unexpected result
2020-12-28 06:18:42 +01:00
Damien Elmes
623c5b305a
Merge pull request #865 from hgiesel/configaction
...
Open AddonsDialog via dialog manager
2020-12-28 10:36:02 +10:00
Damien Elmes
910e5d58f6
Merge pull request #862 from hgiesel/reviewerbottombuttons
...
Hide stats buttons in reviewer bottom bar, if window width is too small
2020-12-28 10:33:14 +10:00
Henrik Giesel
44fb7e3dc2
Open AddonsDialog via dialog manager
2020-12-26 18:07:37 +01:00
Henrik Giesel
d6a090e1a8
Hide "Edit" and "More" buttons in reviewer bottom bar, if window width is too small
2020-12-26 15:50:32 +01:00
Damien Elmes
38614ab047
winrt 1.0.20239.1 isn't available for python 3.9
2020-12-23 20:31:13 +10:00
RumovZ
b712053c06
Norm search
2020-12-22 11:08:47 +01:00
Damien Elmes
32093bb428
further decrease default q/a fade time
2020-12-22 13:02:07 +10:00
Damien Elmes
0a633160c5
add video driver enum; allow setting angle+software on mac in prefs
2020-12-22 13:01:06 +10:00
Damien Elmes
212b251334
tag the wheels as manual so test ... doesn't build them
2020-12-21 19:28:47 +10:00
Damien Elmes
c18ea8ef78
Merge pull request #859 from hgiesel/tabindex2
...
Consider removing special handling of Shift+Tab in Editor on macOS
2020-12-21 18:38:35 +10:00
Damien Elmes
256db85577
work around --text-fg ending up in fields
...
https://forums.ankiweb.net/t/strange-behaviour-in-the-html-editor/5796/4
2020-12-21 17:56:20 +10:00
Damien Elmes
64173b5c02
.prettierrc needs to be in web/, as it's needed for sass as well
2020-12-21 17:05:31 +10:00
Henrik Giesel
2ae4d14bc5
Focus special handling of Shift+Tab on macOS
2020-12-21 08:00:47 +01:00
Damien Elmes
7d1c8c29f9
add a small delay before terminating recording
...
https://forums.ankiweb.net/t/anki-crashes-periodically-after-clicking-record-audio-button/5824/12
2020-12-21 16:37:28 +10:00
Damien Elmes
729293f5e3
remove voice recording fixme
2020-12-21 16:13:32 +10:00
Damien Elmes
4e1d57e2d2
check formatting of .js files in aqt/data
...
mathjax.js did not match //ts:format output
2020-12-21 16:10:59 +10:00
Damien Elmes
65a35fef55
link .prettierrc into qt/aqt/data/web/js
...
So automatic formatting in VS Code matches CI format
2020-12-21 16:09:06 +10:00
Damien Elmes
0bc4ea9c4d
ask users to report if PyAudio works better for them
2020-12-21 16:04:41 +10:00
Damien Elmes
019a65efc1
drop QtRecorder driver; rename existing
2020-12-21 15:02:22 +10:00
Damien Elmes
68390eccde
fail gracefully in winrt voice list fails to load
...
If no voices are installed, get_all_voices() throws a "file not found"
error.
2020-12-21 14:29:14 +10:00
Damien Elmes
f41d523cb8
Merge pull request #857 from hgiesel/editorspan
...
Wrap field name in editor in a span
2020-12-21 12:16:22 +10:00
Henrik Giesel
502049025a
Remove special treatment of empty fields in editor ts
2020-12-21 03:13:31 +01:00
Ryan Aird
a30064d5e9
Make RT import statement conditional, fix formatting, ignore WinRT for type checking
2020-12-20 19:43:09 -06:00
Henrik Giesel
9b2de395e1
Wrap field name in editor in span
2020-12-20 23:40:51 +01:00
Ryan Aird
9a0b112a0f
Lower default rank for non-RT voices and restrict to Windows 10 October 2018 or greater
2020-12-19 20:10:23 -06:00
Ryan Aird
56703e5f3a
WinRT TTS API support
2020-12-19 19:29:34 -06:00
Damien Elmes
165007180a
add winrt for TTS work
...
https://github.com/ankitects/anki/pull/855
Also update psutil version
2020-12-20 10:54:57 +10:00