Henrik Giesel
5811e59f27
Introduce editable module
2021-09-15 13:32:30 +02:00
Damien Elmes
93202f372c
Merge pull request #1264 from hgiesel/tageditor2
...
Svelte Tag Editor v2
2021-09-15 20:21:16 +10:00
evandrocoan
cdd8b99097
Fix previous card attribute not initialized
2021-09-13 23:16:25 -03:00
Damien Elmes
f55f1fcd21
disable wayland again, but allow enabling it
...
Will add an entry to the known issues page.
2021-09-14 09:53:23 +10:00
Damien Elmes
cb9be3b387
preserve focus on notetype change
...
Closes #1360
2021-09-13 15:31:24 +10:00
Damien Elmes
dba107db74
allow wayland again
...
See #1368
2021-09-13 15:18:32 +10:00
Damien Elmes
2c235ccc70
don't check state of current card when repositioning
...
closes #1365
2021-09-13 14:56:53 +10:00
Damien Elmes
d6552cf14e
Merge pull request #1358 from evandroforks/lastcardinfo
...
Add option to reveal previous card's info
2021-09-13 12:06:10 +10:00
evandrocoan
c1b861a7b0
Add clone stdin to another _process deletion
2021-09-09 18:36:21 -03:00
Henrik Giesel
62e4486008
Remove hiding Qt autocompleter from AddCards
2021-09-09 15:38:10 +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
5aa43539a4
Remove Python TagEdit from Editor view
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
d89a6af45f
Port Focus tags shortcut to webview
2021-09-09 15:37:34 +02:00
Henrik Giesel
7f6e7235f1
Display a tag-outline icon in the bottom left
2021-09-09 15:37:33 +02:00
evandrocoan
35ea88e2bb
Use Alt+i for previous/last card info because Ctrl+i could
...
easily confuse a user that Ctrl+i is for the current card.
Ctrl was first added because it is easier to press,
at least for me, then, I press first using Ctrl and if
not available go to Alt.
2021-09-08 21:26:48 -03:00
evandrocoan
14e2d0d102
Fix ResourceWarning: unclosed file <_io.BufferedWriter name=5>
...
https://forums.ankiweb.net/t/aqt-sound-py-resourcewarning-unclosed-file-io-bufferedwriter-name-5/13070
2021-09-08 21:02:12 -03:00
evandrocoan
3c5514d12f
Fix #1355
2021-09-07 23:53:47 -03:00
Ren Tatsumoto
37b00d9ca3
avoid possible performance hit
2021-09-05 16:10:34 +03:00
Ren Tatsumoto
b6e52b929d
fix test complaints
2021-09-05 15:04:24 +03:00
Ren Tatsumoto
ef24288639
Add a hook for modifiying pasted MIME data
2021-09-05 13:52:54 +03:00
Damien Elmes
acda398a2e
quote fonts added via the Add Field dialog
2021-09-02 21:05:16 +10:00
Damien Elmes
5e862c216a
Merge pull request #1349 from RumovZ/rename-with-parents
...
Disable 'Rename with Parents' for top-level items
2021-08-30 22:27:44 +10:00
RumovZ
f1fcd8830d
Disable 'Rename with Parents' for top-level items
2021-08-30 11:10:14 +02:00
RumovZ
e482322f0d
Reset flags when loading a profile...
...
... not only on startup.
2021-08-30 11:07:40 +02:00
Damien Elmes
8d4b38533a
Merge pull request #1344 from glutanimate/add-dialog-manager-hooks
...
Add a hook for subscribing to dialog creation / opening
2021-08-29 11:36:11 +10:00
Damien Elmes
f3b6041e79
Merge pull request #1345 from hgiesel/windowsfocus
...
Use different artificial reviewer button highlight for Windows
2021-08-29 11:35:32 +10:00
Damien Elmes
c0392192c5
more checks for package name
...
Follows up #1343
2021-08-29 11:23:47 +10:00
Henrik Giesel
ff68eb2268
Use different artificial reviewer button highlight for Windows
2021-08-28 21:30:07 +02:00
Glutanimate
09fb9afb18
Add a hook for subscribing to dialog creation / opening
2021-08-28 20:37:31 +02:00
bluegreenmagick
e8cb921747
Fix bug when add-on package string is ""
...
which deleted the entire add-on folder
2021-08-27 21:49:55 +09:00
Damien Elmes
c8cf606736
avoid spurious warning in addcards startup
2021-08-20 11:37:23 +10:00
Damien Elmes
96651a4123
mark old editing code as deprecated
...
https://forums.ankiweb.net/t/emacs-style-shortcuts-with-ctrl-t-in-the-editor-in-45/12280/6
2021-08-20 11:37:11 +10:00
Damien Elmes
e2f89fc24c
show v3 scheduler in error info
2021-08-20 10:47:41 +10:00
Damien Elmes
87afb69c0e
fix default deck being shown in deck options deck prompt
2021-08-19 12:33:36 +10:00
Damien Elmes
bddee7eb99
preferences update needs to be a collection op
...
- fixes https://forums.ankiweb.net/t/v3-bug-card-modified-without-updating-queue/12418
- fixes undo menu not updating after closing preferences screen
2021-08-19 10:47:55 +10:00
Damien Elmes
ad306d763e
add a small .wait() after terminating player process
...
Avoids python3.8/subprocess.py:942:
ResourceWarning: subprocess 90387 is still running
_warn("subprocess %s is still running" % self.pid,
2021-08-19 10:33:56 +10:00
Damien Elmes
bf2c157405
Merge pull request #1333 from kelciour/mpv-property-list-timeout
...
A possible fix for "mpv timed out, restarting"
2021-08-18 16:39:50 +10:00
Damien Elmes
09ad5ab7c3
Merge pull request #1331 from hikaru-y/fix-fragment-autoplay
...
Fix <audio>/<video> with 'autoplay' issue
2021-08-18 16:37:14 +10:00
Damien Elmes
22e70b520d
shift timebox check to post-answer
...
- should prevent non-review actions from triggering display
- should prevent next card's audio from playing before diag. dismissed
- the timer hack should no longer be required, as the webview will
have already been loaded
https://forums.ankiweb.net/t/timebox-pop-up-suddenly-appears-when-daily-cutoff-hour-rolls-over-even-when-not-in-the-reviewer/12385
2021-08-18 16:25:23 +10:00
Damien Elmes
176c626ffd
ctrl+alt+n for forget
...
https://forums.ankiweb.net/t/anki-2-1-44-make-cards-new/12247/7
2021-08-18 15:32:45 +10:00
Damien Elmes
70dec17296
add symlink to generated icons.qrc
...
Otherwise Qt Designer tries to remove the reference.
2021-08-18 15:32:45 +10:00
kelciour
3962de958a
A possible fix for "mpv timed out, restarting"
...
https://forums.ankiweb.net/t/anki-wont-open-mpv-timed-out/7579/6
2021-08-18 00:47:04 +03:00
hikaru-y
53d8a9a492
Silence 'link preload' warning on the first card
...
Due to e23737f , a harmless warning about 'link preload' will be output
to the console on the first card.
2021-08-18 02:25:51 +09:00
Arthur Milchior
c0625e9145
Add Card history: keep & instead of replacing them by underline
2021-08-15 06:32:03 +02:00
Damien Elmes
15c3b2a62a
fix deprecation warning in modelchooser.py
2021-08-04 12:05:11 +10:00
Damien Elmes
8fb6ad2f08
fix notetype selection in import screen
...
Accidental rename in "PEP8 cards.py"
2021-08-04 12:01:28 +10:00
Damien Elmes
821775f8cf
fix redo menu item showing undo text
2021-08-04 10:28:45 +10:00
Henrik Giesel
2649dc0ad7
Add toggle sticky shortcuts F9 and Shift+F9
2021-08-03 05:52:07 +02:00
Damien Elmes
9a809af6ab
Merge pull request #1320 from hgiesel/colorpickerplus
...
Remember last text and highlight color again
2021-08-03 09:07:46 +10:00
Henrik Giesel
39566638f3
Remember last text and highlight color again
2021-08-02 23:12:00 +02:00
Damien Elmes
48028aa397
Merge pull request #1319 from abdnh/sidebar-scroll-center
...
Use PositionAtCenter for sidebar scrolling
2021-08-02 18:35:38 +10:00
Damien Elmes
28535b4f84
Merge pull request #1311 from hikaru-y/flag-mark-icons-in-previewer
...
Show flag and mark icons in previewer
2021-08-02 18:33:36 +10:00
abdo
26b6688cb2
Use PositionAtCenter for sidebar scrolling
2021-08-02 10:57:54 +03:00
Damien Elmes
bd146fa4fb
update congrats screen periodically; automatically move back to study
2021-08-02 16:05:18 +10:00
Damien Elmes
3dc7bd6051
fix study deck->add deck->cancel
2021-07-30 11:35:55 +10:00
Damien Elmes
8e48722cf0
prevent hiding of sidebar
...
https://forums.ankiweb.net/t/browser-format-issues/11504/10
2021-07-28 11:14:09 +10:00
hikaru-y
7c90637922
Show flag and mark icons in previewer
2021-07-26 20:13:42 +09:00
Damien Elmes
7749675624
reload card if there are registered hooks
...
https://forums.ankiweb.net/t/2-1-45-release-candidate/11362/54
2021-07-26 20:48:30 +10:00
Damien Elmes
ed409233d4
Merge pull request #1303 from Arthur-Milchior/paste_post_hook
...
Add a hook to execute after pasting in a field
2021-07-26 11:01:29 +10:00
RumovZ
67ecb3dfc3
Prevent DeckChooser from setting filtered deck
2021-07-25 08:54:39 +02:00
Arthur Milchior
283198f93c
Add a hook to execute after pasting in a field
...
I expect to use it to ensure that images are resizable after they get pasted in a field
2021-07-25 01:53:25 +02:00
Damien Elmes
6c4b74e565
fix ugly js confirm box
...
https://forums.ankiweb.net/t/2-1-45-release-candidate/11362/2
2021-07-24 22:04:06 +10:00
Damien Elmes
e43f2b23cc
clarify deck description message
...
+ drop the reference to overview screen
2021-07-24 21:45:09 +10:00
Damien Elmes
b158cd4e1f
drop traceback in importing error message
2021-07-24 20:05:32 +10:00
Damien Elmes
10715d7e16
fix Python lints
2021-07-23 20:22:32 +10:00
RumovZ
72a9507c18
Remove native HelpPage enum
...
Also remove oneof from pb enum and handle strs in Python.
2021-07-22 16:32:49 +02:00
RumovZ
b05c812a55
Switch frontend to use backend links
2021-07-22 10:07:13 +02:00
RumovZ
16e3f2c7f3
Fix browser search completer
...
Adding an empty entry at the top fixes
https://forums.ankiweb.net/t/anki-2-1-45-beta/10664/45
and allows for scrolling back to an empty line.
2021-07-17 12:23:19 +02:00
Damien Elmes
4ed0260248
Merge pull request #1297 from hgiesel/browsershortcuts
...
Allow Using Ctrl+Shift+P from Browser when focusing Qt components
2021-07-17 15:18:36 +10:00
Henrik Giesel
f016df00cd
Remove unnecessary lambda
2021-07-17 04:17:28 +02:00
Henrik Giesel
59f801abc7
Allow Using Ctrl+Shift+P from Browser when focusing Qt components
2021-07-17 03:39:27 +02:00
Damien Elmes
c93476512c
Merge pull request #1292 from hgiesel/reviewerplus
...
Move reviewer to ts/reviewer v2
2021-07-17 09:10:14 +10:00
hikaru-y
dc11d7c297
Revert "Follow-up to #1271 (Preload answer images)"
2021-07-16 23:57:49 +09:00
Henrik Giesel
170bc5c25e
Revert to MathJax through script tag
2021-07-16 16:56:57 +02:00
Henrik Giesel
28e2f62793
Remove protobuf important from reiewer (no longer necessary (?))
2021-07-16 16:56:56 +02:00
Henrik Giesel
70040d508e
Include MathJax over ts/reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
c62d2dc033
Export jquery via ts/reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
8ee6eb71eb
Include css-browser-selector via ts/reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
11f06161c9
Include protobuf in clayout and browser (p)reviewer
2021-07-16 16:56:56 +02:00
Henrik Giesel
2536063784
Export getTypedAnswer
2021-07-16 16:56:56 +02:00
Henrik Giesel
791d7f2f4b
Move reviewer to ts/reviewer
2021-07-16 16:56:55 +02:00
Damien Elmes
df6d3ed116
Merge pull request #1288 from evandroforks/clayout_next_card_shortcut
...
Created shortcut to switch between card types on clayout.py
2021-07-16 10:51:40 +10:00
Damien Elmes
eb4e18a45f
Merge pull request #1293 from RumovZ/find-and-replace
...
Find & Replace
2021-07-16 10:47:16 +10:00
Damien Elmes
2d0540b741
Revert "stop (un)escaping media filenames"
...
This was flawed - while non-Latin text is now acceptable
in an IRI, we still need to be concerned with reserved characters
such as spaces, and Anki unfortunately has been storing the filenames
in unencoded form in the DB, meaning we must encode them at display
time. We won't be able to move away from this until existing notes
are rewritten, and it will probably require breaking compatibility with
older clients.
https://en.wikipedia.org/wiki/Internationalized_Resource_Identifier
This reverts commit b21af06d75 .
2021-07-16 10:37:59 +10:00
evandrocoan
19ef304873
Created shortcut to switch between card types on clayout.py
...
editor window (F3 and F4) because it should be simple to use them
single hand and together with Ctrl+1, 2 and 3 combos.
2021-07-15 20:51:08 -03:00
RumovZ
9ba35b9efb
Remove redundant QueryOp in rename_deck()
2021-07-15 08:56:47 +02:00
Damien Elmes
090a54c6e6
support numpad enter in type answer
...
https://forums.ankiweb.net/t/anki-2-1-45-beta/10664/149
regression introduced in dc61a6f547
2021-07-15 14:46:39 +10:00
RumovZ
0804d054b7
Remove unused name prefix of sidebar templates
2021-07-13 16:41:50 +02:00
RumovZ
4f17400021
Add sidebar actions
...
- Find & Replace for notetype fields
- Rename with Parents for decks and tags
2021-07-13 16:34:02 +02:00
RumovZ
4b1218184d
Rework Find & Replace dialog:
...
- Add option to affect whole collection
- Allow to open without selection
- Add parameter for presetting field
2021-07-13 16:33:45 +02:00
Damien Elmes
492137d264
Merge pull request #1291 from RumovZ/addon-cols
...
Show key of unknown browser columns
2021-07-13 13:35:54 +10:00
RumovZ
211f39836d
Show key of unknown browser columns
2021-07-12 19:03:51 +02:00
RumovZ
300ff08ad0
Add mock browser model to support legacy resetting
2021-07-12 12:36:26 +02:00
Damien Elmes
2238cdaa43
rename Config in protobuf to avoid conflict with module name
...
+ use the enum directly, instead of wrapping it in an object
Python code retains the old "Config" name.
2021-07-11 19:27:08 +10:00
Damien Elmes
e86e0a64ea
move proto files into separate py_library in same namespace
...
Will allow importing the Protobuf without pulling in the rest of
the library. This is not a full PEP420 namespace, and the wheel still
bundles everything - it just makes things easier in a Bazel workspace.
I originally tried with PEP420, but it required more invasive changes,
and I ran into issues with mypy.
2021-07-11 14:51:25 +10:00
Damien Elmes
5255409093
refactor protobuf handling for split/import
...
In order to split backend.proto into a more manageable size, the protobuf
handling needed to be updated. This took more time than I would have
liked, as each language handles protobuf differently:
- The Python Protobuf code ignores "package" directives, and relies
solely on how the files are laid out on disk. While it would have been
nice to keep the generated files in a private subpackage, Protobuf gets
confused if the files are located in a location that does not match
their original .proto layout, so the old approach of storing them in
_backend/ will not work. They now clutter up pylib/anki instead. I'm
rather annoyed by that, but alternatives seem to be having to add an extra
level to the Protobuf path, making the other languages suffer, or trying
to hack around the issue by munging sys.modules.
- Protobufjs fails to expose packages if they don't start with a capital
letter, despite the fact that lowercase packages are the norm in most
languages :-( This required a patch to fix.
- Rust was the easiest, as Prost is relatively straightforward compared
to Google's tools.
The Protobuf files are now stored in /proto/anki, with a separate package
for each file. I've split backend.proto into a few files as a test, but
the majority of that work is still to come.
The Python Protobuf building is a bit of a hack at the moment, hard-coding
"proto" as the top level folder, but it seems to get the job done for now.
Also changed the workspace name, as there seems to be a number of Bazel
repos moving away from the more awkward reverse DNS naming style.
2021-07-10 19:17:05 +10:00
Damien Elmes
3ca4ca397a
add workaround for protobufjs requiring uppercase package names
...
I mourn the time lost trying to track this down :-(
https://github.com/protobufjs/protobuf.js/issues/1014
We can't patch the minified file in dist without essentially duplicating
it, so this change also switches from the external file to including
the src file as part of the bundle.
2021-07-10 15:24:01 +10:00
Damien Elmes
bfa8ee6b96
more friendly message for v2 import into v1
2021-07-08 10:32:27 +10:00