Damien Elmes
3f8a3afb78
fix extending limits in custom study
...
https://anki.tenderapp.com/discussions/beta-testing/1967-2126-189-g7384df8f-crash-at-note-types-fields-save
2020-05-20 14:13:40 +10:00
Damien Elmes
c78e8425aa
automatically omit notes or cards table when possible
2020-05-19 11:27:02 +10:00
Damien Elmes
5e1583df59
fix unit test bug triggered by low resolution win32 timer
...
We don't yet have a remove_note(), so just remove all cards for now.
2020-05-18 19:02:54 +10:00
Damien Elmes
facbe53649
fix cutoff adjustment test in other timezones
2020-05-18 14:08:02 +10:00
Damien Elmes
01ebe964e9
bytes->blob in sql
2020-05-18 13:36:45 +10:00
Damien Elmes
3e156fdb49
bump version
2020-05-18 12:50:20 +10:00
Damien Elmes
4438be2c8d
protobuf tidyups
2020-05-18 09:26:14 +10:00
Damien Elmes
e894125620
use empty buffer if the other map is empty in dconf
2020-05-18 08:12:27 +10:00
Damien Elmes
ef88cb59e6
fix syncing
2020-05-17 20:52:02 +10:00
Damien Elmes
e6379bc4d0
update current note type in backend
2020-05-17 20:01:16 +10:00
Damien Elmes
e230f360e9
ensure notetype name unique on add as well
2020-05-17 19:41:47 +10:00
Damien Elmes
b676522e5c
fix renaming corner cases and decks.update()
...
- .update() should update a single deck and preserve usn by default,
as that's what existing code expects
- decks are automatically renamed when they conflict with an existing
name
2020-05-17 19:07:15 +10:00
Damien Elmes
2c19e171ed
handle deletion of default deck in backend; use + instead of _
2020-05-17 15:22:19 +10:00
Damien Elmes
336349d8d1
update before_upload()
2020-05-17 14:13:21 +10:00
Damien Elmes
a682865169
move deck config to protobuf
2020-05-17 13:28:41 +10:00
Damien Elmes
e85911c4e4
add option to limit deck tree counts to a particular node
2020-05-17 08:38:49 +10:00
Damien Elmes
17efa85d75
update rusqlite
2020-05-16 19:49:08 +10:00
Damien Elmes
e36e23b563
when merging day# in deck, make sure to reset older values
2020-05-16 15:58:25 +10:00
Damien Elmes
2e5f745b85
use the latest day when converting from legacy deck
2020-05-16 14:58:14 +10:00
Damien Elmes
70afc782ca
add a unit test for deck counts
2020-05-16 14:07:48 +10:00
Damien Elmes
c60229779c
switch to new deck tree in deck browser
...
Saves us having to look up collapsed/filtered as we render, and gives
us type completion.
2020-05-16 10:52:14 +10:00
Damien Elmes
cbfc9d5a87
handle default deck and filtered deck suppression in the backend
2020-05-15 21:21:10 +10:00
Damien Elmes
dc6471ad40
fetch stock notetypes from backend
2020-05-15 17:08:24 +10:00
Damien Elmes
91e71ae044
show (Deck) when card hasn't been added
2020-05-15 15:01:28 +10:00
Damien Elmes
8dcb7fd2ba
check for empty cloze cards when rendering as well
2020-05-14 21:56:45 +10:00
Damien Elmes
6dd31341f8
add "fill empty" checkbox
2020-05-14 20:58:45 +10:00
Damien Elmes
4c52d41632
use group box instead of tabs in card layout screen
2020-05-14 17:26:40 +10:00
Damien Elmes
4a00ad075c
drop availOrds(), and use backend for getting cloze numbers
2020-05-14 12:14:00 +10:00
Damien Elmes
257e893d95
update the card layout screen
...
- changes are now committed in bulk when closing the dialog,
and can be canceled
- it's not necessary to save the note to the database to preview it
- duplicate fields are now shown as duplicates in the top list
- redraw preview more quickly
- use + instead of _ when deduplicating names, as the latter is a
glob character
2020-05-13 17:24:49 +10:00
Damien Elmes
4815010da0
don't hide static template text when card is empty
2020-05-13 11:17:44 +10:00
Damien Elmes
14c0a5891b
fetch template and note fields in backend during normal card render
...
Saves having to serialize the note fields and q/a templates, which
is particularly a win when rendering question/answer in the browse
screen.
Also some work towards being able to preview notes without having to
commit them to the database.
2020-05-13 10:38:49 +10:00
Damien Elmes
a95fbe73c3
handle decks set to random new order
...
It probably makes more sense to randomize on queue build in the future,
but for now this imitates the previous Anki behaviour.
2020-05-12 21:13:34 +10:00
Damien Elmes
9c3f982c3b
return resolved deck to facilitate random order mode
2020-05-12 21:13:34 +10:00
Damien Elmes
21ac2c14a7
handle scheduling preferences in the backend
2020-05-12 21:13:34 +10:00
Damien Elmes
2eaa759478
fetch timing_today() params in backend
2020-05-12 21:13:34 +10:00
Damien Elmes
1018204e4f
switch server back into a bool and rely on config
2020-05-12 21:13:34 +10:00
Damien Elmes
befa66fb27
fix default rollover
2020-05-12 21:13:34 +10:00
Damien Elmes
dc9200e639
add tests for the other checks, and fix new card due limiting
2020-05-12 21:13:34 +10:00
Damien Elmes
c77bc74a2b
rename SortMode arg to match enum
2020-05-12 21:13:34 +10:00
Damien Elmes
bdf5daa422
add tests for card fixes; implement deck recovery
2020-05-12 21:13:34 +10:00
Damien Elmes
c227298565
stop using memory for sqlite temp store
...
On large collections this can end up consuming hundreds of megabytes
of RAM on operations like a vacuum.
2020-05-12 21:13:34 +10:00
Damien Elmes
d7f9bccd1e
rewrite DB check
...
- notes with wrong field count are now recovered instead of
being deleted
- notes with missing note types are now recovered
- notes with missing cards are now recovered
- recover_missing_deck() still needs implementing
- checks required
2020-05-12 21:13:34 +10:00
Damien Elmes
b03dcd2643
fetch notes in nid order
...
May reduce the amount of seeking on conventional disks. Chunking and
fetching batches of notes at once would improve things further, at the
cost of more memory use.
2020-05-12 21:13:34 +10:00
Damien Elmes
667f9e6554
bulk tag add/remove/update; canonify on note save
...
also remove the tag list updated hook - we'll need a better solution in
the future than having the library code call back into the GUI code
2020-05-12 21:13:34 +10:00
Damien Elmes
5d493b6ab8
add the Extra field back to cloze deletions as "Back Extra"
...
Originally removed because some users were adding cloze deletions to
it, but removing it just replaced that problem with a new problem where
users add the field but don't add it to their card templates.
2020-05-12 21:13:34 +10:00
Damien Elmes
0a87b1ef2c
support disabling unicode normalization in notes
2020-05-12 21:13:34 +10:00
Damien Elmes
85528cabc5
use backend for genCards() and updateFieldCache()
2020-05-12 21:13:34 +10:00
Damien Elmes
8c04718541
update find&replace in browser
...
sadly the UI still stutters on large selections - the calls
to get the selected rows from Qt are really slow.
2020-05-12 21:13:34 +10:00
Damien Elmes
ad1c519d1c
move find&replace to backend
2020-05-12 21:13:34 +10:00
Damien Elmes
2e971da79e
properly handle negated conditionals outside of req generation
2020-05-12 21:13:34 +10:00