Commit graph

6315 commits

Author SHA1 Message Date
Damien Elmes
9ef0a1e070 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
c5704e6102 collapsed->expanded in other tag uses for consistency 2021-02-02 18:52:57 +10:00
Damien Elmes
e0a79b421b return tags as a string list directly; we don't need usn or collapse state 2021-02-02 18:52:57 +10:00
Damien Elmes
99d6247333 collapsed->expanded in TagTreeNode 2021-02-02 18:52:57 +10:00
Damien Elmes
ab1ecae0c3 decks start collapsed 2021-02-02 17:14:11 +10:00
Damien Elmes
b7435e5d92 tags start collapsed 2021-02-02 16:47:05 +10:00
Damien Elmes
ee2e68fa6b remove sidebar margins 2021-02-02 16:35:42 +10:00
Damien Elmes
5c25a71634 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
14927c2465 Hide sidebar items when there is no match 2021-02-02 05:41:45 +03:00
abdo
1b72e142a7 Add more sidebar section roots 2021-02-02 04:51:45 +03:00
Damien Elmes
a1a70b1809 fix sync warning caused by mistake in typing work 2021-02-02 10:43:49 +10:00
Damien Elmes
b2c9030a58 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
Damien Elmes
66b37a8232 Merge pull request #967 from RumovZ/dyn-deckconf
Dyn deckconf
2021-02-02 09:41:23 +10:00
RumovZ
8d8a2e49fd Add remaining type hints to dyndeckconf etc. 2021-02-01 23:46:56 +01:00
RumovZ
b21d1dcbc0 Merge branch 'master' into dyn-deckconf 2021-02-01 23:33:41 +01:00
RumovZ
7b39fb6484 Rename standard buttons to have transaltions 2021-02-01 23:20:57 +01:00
RumovZ
99ffc08dbf 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
3e30bd4610 Enable renaming from dyndeck dialogue 2021-02-01 21:02:22 +01:00
RumovZ
320b82aae6 Add cross links for second dyndeck filter 2021-02-01 19:10:05 +01:00
RumovZ
fbc5de4596 Style browser-from-filtered-deck button
Use theme color and add hover effect.
2021-02-01 18:01:57 +01:00
abdo
5c24e57734 Expand sidebar match trees one level
See 03eab6b646
2021-02-01 19:12:43 +03:00
Damien Elmes
748aeb9df1 add a bunch of return types 2021-02-01 23:53:23 +10:00
RumovZ
b76632eb62 Add button in dynDeckConf to search in browser 2021-02-01 13:55:03 +01:00
Damien Elmes
83892eac51 add types to various other files
Mainly automated with MonkeyType
2021-02-01 22:08:56 +10:00
RumovZ
ef413b90c6 Rename "Filtered Deck from Current Filter" 2021-02-01 12:09:37 +01:00
Damien Elmes
8be63cb902 add some types to main.py 2021-02-01 20:59:18 +10:00
RumovZ
27609a784f Change filtered-deck shortcut in browser to Ctrl+G 2021-02-01 11:59:16 +01:00
RumovZ
d57d0f977b 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
8dc5ea8bb6 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
aa6cf51527 Fix pylints and type annotations in dyndeckconf
Also fix int representation of learning steps.
2021-02-01 09:56:10 +01:00
RumovZ
2a82e43c0b 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
dc261c5abf add helper script to run mypy daemon 2021-02-01 17:29:03 +10:00
Damien Elmes
34935bf478 add types to editor.py 2021-02-01 17:28:35 +10:00
Damien Elmes
0697e197cb update mypy and other Python deps
latest mypy_protobuf can no longer be run directly, so we need
to run a wrapper instead
2021-02-01 15:50:04 +10:00
Damien Elmes
b3f9d12606 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
9b468c81fd Merge pull request #959 from Arthur-Milchior/AGPL
NF: add AGPL licence missing in some file
2021-02-01 12:46:59 +10:00
Damien Elmes
06d0d22436 Update card_stats.html
Don't want the header accidentally getting copied about when users copy+paste their stats.
2021-02-01 12:46:29 +10:00
Damien Elmes
fe0d6b3a10 add missing types to sidebar.py 2021-02-01 09:51:46 +10:00
Damien Elmes
2070847868 add missing types to browser.py 2021-02-01 09:39:55 +10:00
Damien Elmes
39f253f125 always quote types in generated hooks 2021-02-01 08:36:33 +10:00
RumovZ
90e1a75dd6 Add current-filter-to-filtered-deck action 2021-01-31 23:16:49 +01:00
RumovZ
23d1481d34 Make dyndeckconf a registered dialogue 2021-01-31 22:37:08 +01:00
Arthur Milchior
6a1815fd56 NF: add AGPL licence missing in some file
I noticed it when I looked at some files now used in AnkiDroid, wanting to be sure we clearly indicate that we have
AGPLv3 code linked in the app
2021-01-31 21:50:21 +01:00
Henrik Giesel
72259ed629 Export getEditorField and forEditorField 2021-01-31 20:56:28 +01:00
Henrik Giesel
8699c25bc5 Turn off eslint check for now 2021-01-31 20:55:36 +01:00
Henrik Giesel
9f3403d704 Move editor css to editor directory 2021-01-31 19:03:40 +01:00
RumovZ
53513f371f 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
978258067b Move editor to /ts/editor 2021-01-31 14:15:03 +01:00
Henrik Giesel
e667191899 Fix type issues 2021-01-31 13:34:39 +01:00
Henrik Giesel
aba2506394 Make editor a rollup package 2021-01-31 13:34:37 +01:00