Henrik Giesel
6ee503742f
Add compiled hook model_did_init_buttons
2020-08-31 13:35:18 +02:00
Henrik Giesel
14f4380c2e
Add usage in models.py
2020-08-31 13:35:18 +02:00
Henrik Giesel
6d2f2282d2
Add gui_hook models_did_init_buttons
2020-08-31 13:35:01 +02:00
Henrik Giesel
a36a9ee3e0
Add unused add_button method
2020-08-31 13:33:59 +02:00
Damien Elmes
8729edffbb
update to latest black
2020-08-31 13:29:28 +10:00
Damien Elmes
aeca369c9b
update to latest isort, pylint and pytest
2020-08-31 12:05:36 +10:00
Damien Elmes
204db71586
fix new pylint raise-missing-from lint
2020-08-31 12:04:14 +10:00
Damien Elmes
0f24885581
Merge pull request #751 from ANH25/addon-config-editor-title
...
Remove unicode isolation markers from add-on config editor title
2020-08-31 11:10:44 +10:00
Damien Elmes
f3c6d565b0
bump version
2020-08-31 11:07:54 +10:00
ANH
ff4cb87433
remove unicode isolation markers from add-on config editor title
2020-08-31 00:35:17 +03:00
Damien Elmes
486ef03a0d
fix card.template() in card layout screen
...
https://forums.ankiweb.net/t/card-template-does-not-work-when-called-in-card-will-show-hook-in-template-editor/2798
2020-08-30 11:23:44 +10:00
Damien Elmes
1ae6eb1255
add some names to about screen
...
a reminder that anyone who's contributed is welcome - please just
send a PR adding yourself
2020-08-27 11:24:13 +10:00
Damien Elmes
373402ed0a
Merge pull request #749 from ANH25/editor-media-autoplay
...
Only autoplay added media when recording in editor
2020-08-27 10:37:42 +10:00
Damien Elmes
35c59cb899
Merge pull request #745 from ANH25/reviewer-context-menu-shortcut
...
add shortcut for reviewer context menu
2020-08-27 10:33:22 +10:00
ANH
063644a8f6
editor: only autoplay added media when recording
2020-08-26 14:49:19 +03:00
Damien Elmes
37fa80bbd6
Merge pull request #748 from ANH25/drag-and-drop
...
fix drag & drop issue when dropping things over existing content
2020-08-26 08:38:48 +10:00
Damien Elmes
a657310726
formatting
2020-08-26 08:36:08 +10:00
Damien Elmes
31f011b3a5
fix description in export screen (thanks to ANH)
...
https://forums.ankiweb.net/t/anki-2-1-31-exporting-display-bug/2669/3
2020-08-26 08:33:35 +10:00
Damien Elmes
ff10af10ac
bigger default window size
...
https://forums.ankiweb.net/t/increase-the-standard-window-size-so-all-buttons-are-visible/2613
2020-08-26 08:06:46 +10:00
Damien Elmes
2f6d816cdc
bump version
2020-08-26 08:05:45 +10:00
ANH
564f95c941
fix drag & drop issue when dropping things over existing content
2020-08-25 17:28:13 +03:00
Damien Elmes
52a7fa36cd
fix signup link
2020-08-25 13:29:02 +10:00
Damien Elmes
58c8609332
bump version
2020-08-24 11:28:22 +10:00
ANH
6d69a0ba4e
add shortcut for reviewer context menu
2020-08-23 17:46:47 +03:00
Damien Elmes
385a1c50fd
'cards' instead of 'notes' in export
...
thanks to hgiesel; closes #744
2020-08-23 13:48:20 +10:00
Damien Elmes
f9fe0504f0
fix formatting & lint
2020-08-21 12:36:18 +10:00
Damien Elmes
5adc3eff6f
Merge pull request #735 from brownbat/master
...
Add hook for initializing answer buttons
2020-08-21 12:34:14 +10:00
Damien Elmes
f936735114
fix formatting
2020-08-21 11:45:14 +10:00
Damien Elmes
1db1f71261
Merge pull request #742 from evandroforks/fix_ts_sass
...
Fix error reading scss;..\aqt_data\web: no such file or directory
2020-08-21 11:44:55 +10:00
evandrocoan
36a8eff311
Fix error reading scss;..\aqt_data\web: no such file or directory
...
Recently on my Windows, out of nowhere, it started throwing:
```
../../ts/node_modules/.bin/tsc --build
../../ts/node_modules/.bin/sass --no-source-map scss:..\\aqt_data\\web
Error reading scss;..\aqt_data\web: no such file or directory.
make: *** [Makefile:26: build] Error 66
```
2020-08-20 22:22:33 -03:00
Damien Elmes
d91b686df2
Merge pull request #740 from kelciour/mpv-restart-fix
...
Fix no sound after restarting mpv
2020-08-21 11:10:46 +10:00
Damien Elmes
54f8a7ded5
Add comment
2020-08-21 11:10:30 +10:00
kelciour
580e561805
Reset av_player.current_player after mpv restart
2020-08-21 02:17:21 +03:00
Damien Elmes
e5c4ad9c78
Merge pull request #739 from ANH25/add-custom-study-ftl
...
Add custom-study-must-rename-deck to Fluent
2020-08-21 08:56:17 +10:00
Thomas B
c94336bbf5
Remove conflict- Sequence type no longer needed
2020-08-20 10:34:08 -04:00
Thomas B
e7e67e0c87
Fix other docstring to match.
2020-08-20 10:33:46 -04:00
Thomas B
718fd2c44d
Clarify docstring
2020-08-20 10:30:31 -04:00
Damien Elmes
9393a33337
need to invalidate notetype cache on sync completion
...
basicCheck() was populating it on startup sync, leading to
https://forums.ankiweb.net/t/error-when-adding-a-new-note/1664
2020-08-20 15:35:23 +10:00
Damien Elmes
51ba6f6b31
fix find&replace getting too large
...
https://forums.ankiweb.net/t/bug-find-and-replace-dialog-displays-length-of-longest-string-in-dropdown-list/2469
2020-08-20 15:26:23 +10:00
Thomas B
3bcb7759d2
Add both Union and Sequence to typing import
...
Resolve conflict.
2020-08-19 16:19:15 -04:00
Thomas B
0450fde53a
Update gui_hooks.py
2020-08-19 16:15:56 -04:00
Thomas B
a54135c5ac
Fixing type hints
...
Matched all type hints, changed the original Sequence[] type hint for _answerButtonList() in reviewer.py on mypy's recommendation.
2020-08-19 16:15:49 -04:00
ANH
233e6abc55
add custom-study-must-rename-deck to Fluent
2020-08-19 18:27:14 +03:00
ANH
bfd08fa2be
work around editor freeze issue after external drag & drop
2020-08-19 18:14:07 +10:00
Thomas B
9cbf5e2251
Update as part of previous commit
2020-08-18 10:38:59 -04:00
Thomas B
8b95ab5441
Bugfix proposed filter post-testing
...
Mirrored filter more closely on _ReviewerWillAnswerCardFilter, including taking and returning the value to be modified.
2020-08-18 10:37:45 -04:00
Henrik Giesel
2de59074a3
Remove ResetReason.BrowserDeleteNote
2020-08-17 12:50:40 +02:00
Henrik Giesel
8a3f6d72c7
Merge branch 'master' into resethook
2020-08-17 12:39:09 +02:00
Damien Elmes
67148b1c8a
clear undo queue on sync
...
https://forums.ankiweb.net/t/ios-ipad-sync-failure-with-filtered-decks/1617/34
2020-08-17 20:09:07 +10:00
Damien Elmes
e573ed3eb6
close edit current window when card deleted
...
https://forums.ankiweb.net/t/bug-report-editor-updating-non-existing-card/2117
2020-08-17 20:07:48 +10:00
Damien Elmes
e856aa9952
fix duplicates not escaping html
...
https://forums.ankiweb.net/t/bug-report-showdupes-not-html-escaping-field-content/2167
2020-08-17 17:50:27 +10:00
Henrik Giesel
e613083018
Reorder gui_hooks imports
2020-08-16 23:34:24 +02:00
Henrik Giesel
a47cca75b2
Add Union import
2020-08-16 19:11:11 +02:00
Henrik Giesel
747c8532c2
Create ResetReason enum
2020-08-16 18:56:32 +02:00
Henrik Giesel
1f4e604e2b
Rename to should_require_reset
2020-08-16 18:56:32 +02:00
Henrik Giesel
7bb4df13d9
Reorder + make all parameters optional
2020-08-16 18:56:32 +02:00
Henrik Giesel
0b9d7b2cb8
Satisfy formatter
2020-08-16 18:56:32 +02:00
Henrik Giesel
4f37e6196b
Update signature of main_window_will_require_reset hook
2020-08-16 18:56:32 +02:00
Henrik Giesel
ea6eb2ba3b
Add new use of requireReset
2020-08-16 18:56:32 +02:00
Henrik Giesel
9044a4b96b
Insert gui_hook main_window_will_require_reset
...
* into AnkiQt.requireReset method
2020-08-16 18:56:32 +02:00
Henrik Giesel
28528fc3ec
Add main_window_will_require_reset hook
2020-08-16 18:56:32 +02:00
Thomas B
830ab9cedb
Add hook for initializing answer buttons
2020-08-14 13:52:20 -04:00
Arthur Milchior
e3e929fed2
Search_model has context
...
I have an add-on which allow to open multiple windows. So would like to know which browser has done the search. This
would allow me to have browser with various setting. In particular, I've an add-on which allow to show a single line by
note, and I would like for some browser to have this feature on and for some other to have this feature off.
2020-08-13 19:46:14 +02:00
Damien Elmes
2c500a1538
Merge pull request #732 from Arthur-Milchior/typing
...
Typing
2020-08-13 20:19:30 +10:00
Damien Elmes
90ad63cfa3
Merge pull request #730 from ANH25/rtl-editing
...
fix Ctrl+right/left handling in RTL fields
2020-08-13 20:09:51 +10:00
Damien Elmes
1dfe5b8165
remove RTL special case in cloze deletion
...
https://forums.ankiweb.net/t/erroneous-characters-added-to-rtl-cloze-deletions/2164
2020-08-13 19:11:48 +10:00
Arthur Milchior
110f4c664f
Any removed
2020-08-12 01:37:21 +02:00
Arthur Milchior
a74601a0f0
NF: childMapNode
2020-08-12 00:42:42 +02:00
ANH
8ee74a02b2
add modify to the Selection interface
2020-08-11 03:32:58 +03:00
ANH
a2227960c0
fix Ctrl+right/left handling in RTL fields
2020-08-11 03:09:03 +03:00
Damien Elmes
bf1ac7e4a9
Merge pull request #728 from hgiesel/mungehtml
...
Move "remove null bytes" and "reverse url formatting" functionality to editor_will_munge_html hook
2020-08-10 16:33:56 +10:00
Henrik Giesel
31916102ed
Add newlines
2020-08-09 11:16:19 +02:00
Henrik Giesel
6122b9ac53
Avoid extra assignment
2020-08-09 10:38:31 +02:00
Henrik Giesel
097538b061
Move reverse url quoting functionality to editor_will_munge_html hook
2020-08-09 10:37:38 +02:00
Henrik Giesel
612e38def3
Move remove null bytes functionality to editor_will_munge_html hook
2020-08-09 10:35:52 +02:00
Damien Elmes
d273f1b5b8
accept alternate strings file
2020-08-09 14:44:23 +10:00
Damien Elmes
ea2c5c6920
deauth -> log out
2020-08-09 14:44:03 +10:00
Damien Elmes
4629dd38fb
bump version
2020-08-09 13:44:59 +10:00
Damien Elmes
c79bb313f8
Merge pull request #727 from hgiesel/mungehtml
...
Add editor_will_munge_html hook
2020-08-09 13:38:39 +10:00
Damien Elmes
41c95c07b4
make sure to reset after deleting empty cards
...
https://anki.tenderapp.com/discussions/private/5067-anki-was-unable-to-open-your-file
2020-08-09 12:42:58 +10:00
Damien Elmes
c366f07e65
find/replace completer should be case sensitive
...
https://forums.ankiweb.net/t/bug-report-search-and-replace/2037
2020-08-09 12:10:34 +10:00
Henrik Giesel
b3b77ea3b3
Replace functionality of mungeHTML with call to new gui_hook
2020-08-08 23:59:01 +02:00
Henrik Giesel
7d1d20cbf4
Add editor_will_munge_html hook
2020-08-08 23:27:58 +02:00
ANH
eecff63aa1
add card layout save shortcut
2020-08-06 13:23:17 +03:00
Damien Elmes
c2c929d63f
avoid internal URLs in alert titlebar
...
https://forums.ankiweb.net/t/anki-stats-no-longer-displaying-invalid-data-found-please-use-check-database-to-fix-the-problem/1902
2020-08-06 09:50:12 +10:00
Damien Elmes
a2cbaa1ede
fix Windows packages failing to start
2020-08-06 09:05:26 +10:00
Damien Elmes
4a13ffbfcf
unnecessary f-string
2020-08-04 17:52:49 +10:00
Damien Elmes
d336ccd81a
catch duplicate keys
2020-08-04 11:52:19 +10:00
Damien Elmes
c1bff288b8
convert po string extraction to GUI app
2020-08-04 11:21:39 +10:00
Damien Elmes
1ec9f606ea
disable media get / posts when collection closed
...
https://forums.ankiweb.net/t/countdown-to-events-exams-addon-official-thread/1093/4?u=dae
2020-08-04 10:03:17 +10:00
Damien Elmes
c6b727f71a
fix preview options responding to enter key by default
2020-08-03 13:32:38 +10:00
Damien Elmes
065e829a45
fix mobile class emulation
...
should be set on html element
2020-08-03 13:32:10 +10:00
Damien Elmes
02c7a0e339
enable strict equality checks in mypy
...
Without it, the following code reports no problems:
def foo() -> int:
return 5
print(foo == 5)
2020-08-03 10:26:40 +10:00
Damien Elmes
6be12d6f90
fix automatic logout on auth failure not working
2020-08-03 10:24:49 +10:00
Damien Elmes
c14dc3ec38
check_untyped_defs can now be enabled globally for aqt
...
A big thanks to Matt and phwoo who put in most of the work to get
to this point.
2020-08-02 10:29:25 +10:00
Damien Elmes
c21cb89a93
fix untyped def issues in aqt/utils.py
2020-08-02 10:25:48 +10:00
Damien Elmes
5700d0c7a1
fix untyped def issues in aqt/mediasrv.py
2020-08-02 10:22:21 +10:00
Damien Elmes
1e05595e3a
fix untyped def issues in aqt/__init__.py
2020-08-02 10:22:08 +10:00
Damien Elmes
efd6d81ba9
Merge pull request #723 from phwoo/typehints-for-qt-addons
...
Typehints for qt addons
2020-08-02 10:08:48 +10:00
Fabian Wood
d8bce7731f
Fixed runtime error from changes in qt addons.py
...
Changes to meet returning of Iterable (rather than List), meant
returning a different variable, but that may not have been created.
Reverted, changing to return List.
2020-08-01 17:50:37 +10:00
Fabian Wood
00236ce253
Updated qt addons with more extensive typehints
2020-08-01 15:50:27 +10:00
Matt Krump
85ca0eff78
Turn on check_untyped_defs for aqt.progress
2020-07-31 21:00:08 -06:00
Matt Krump
411accc165
Turn on check_untyped_defs for aqt.main
2020-07-31 20:34:14 -06:00
Damien Elmes
f7eb3512a9
force stdout/stderr encoding to utf8
...
As a GUI app, Anki only uses these for debugging info, and we've been
bitten numerous times in the past by bugs caused by printing Unicode
when the console only supported ASCII. An ens var might have been
a better approach, but Pyinstaller does not support defining them before
Python is initialized from what I can tell.
Latest issue:
https://forums.ankiweb.net/t/crashing-anki-version-2-1-29-3f62c1f7/1650
2020-08-01 11:31:22 +10:00
Damien Elmes
684cf9732c
pass night mode into body_class() instead of changing globally
2020-07-31 14:47:17 +10:00
Damien Elmes
58d3127d3c
remove 'invert', as night mode is on when checkbox is on
2020-07-31 14:35:18 +10:00
Damien Elmes
9c2cb8bc2a
fix button display on Macs
2020-07-31 14:23:56 +10:00
Damien Elmes
b5c72ac201
Merge branch 'master' into master
2020-07-31 14:14:10 +10:00
Damien Elmes
d4d73a4a59
Merge branch 'master' into help-wanted-4-add-type-hints-6
2020-07-31 14:07:59 +10:00
Damien Elmes
ee428d7949
Merge pull request #719 from ANH25/reviewer-hooks
...
Add reviewer_will_play_question_sounds and reviewer_will_play_answer_sounds hooks
2020-07-31 14:06:28 +10:00
Damien Elmes
ae796a5edd
Merge pull request #718 from phwoo/typehints-for-qt-profiles
...
Added typehints for qt profiles
2020-07-31 14:04:29 +10:00
Damien Elmes
1bb256483c
i18n some card template strings
...
https://forums.ankiweb.net/t/untranslated-strings/1623
2020-07-31 13:33:41 +10:00
Damien Elmes
961789562e
refresh tag list after clearing unused
2020-07-31 13:33:41 +10:00
ANH
5d2cf10ee9
just forgot to regenerate gui_hooks.py to fix typo
2020-07-31 04:47:31 +03:00
ANH
9a768fc198
fix typo
2020-07-31 04:41:49 +03:00
Matt Krump
eef069f2b7
Turn on check_untyped_defs for aqt.emptycards
2020-07-30 18:43:57 -06:00
Matt Krump
1fe46438c0
Turn on check_untyped_defs for aqt.addons
2020-07-30 18:43:57 -06:00
Matt Krump
8feb2acbbf
Turn on check_untyped_defs for aqt.webview
2020-07-30 18:43:57 -06:00
ANH
0eb48d3603
document hooks
2020-07-31 03:06:13 +03:00
ANH
23d0008a6f
add reviewer_will_play_question_sounds and reviewer_will_play_answer_sounds hooks
2020-07-30 22:20:19 +03:00
ANH
2a5131a5d3
use 'Preview Settings' as a label for the new options button
2020-07-30 18:04:50 +03:00
Fabian Wood
4a7558f9be
Added typehints for qt profiles
...
* `Any` used for pickle methods, this could probably be improved
with some kind of Callable
* str used for self.base, though this may be a problem for
different OSes. Some type of os.PathLike might be good.
* Line 75, type ignored: mypy was complaining about no. of args,
and kwargs there didn't seem to be needed. Separate issue to test,
though.
2020-07-31 00:56:48 +10:00
ANH
393403ffbf
add night mode and mobile class toggles in card layout screen
2020-07-30 15:39:02 +03:00
Damien Elmes
3d947febab
Merge pull request #715 from phwoo/typehints-for-qt-modelchooser
...
Added typehints to qt/aqt/modelchooser.py, updated qt/mypy.ini
2020-07-30 17:00:58 +10:00
Damien Elmes
fb029d844b
Merge branch 'master' into add-type-hints-for-qt-models
2020-07-30 16:05:55 +10:00
Fabian Wood
b23129c3eb
added typehints to modelchooser, updated mypy.ini
2020-07-30 15:25:25 +10:00
Fabian Wood
f0dabf4570
added type hints to qt models
2020-07-30 13:28:52 +10:00
Adam Plaice
df9e22aef5
Re-add previously supported file extensions for media
...
(They had been removed in 6939d8ba5b ).
2020-07-29 15:08:33 +02:00
Damien Elmes
bb8127517f
Merge pull request #703 from ANH25/master
...
fix help-wanted#13
2020-07-29 14:14:57 +10:00
Damien Elmes
aca9f5232c
Merge branch 'master' into help-wanted-4-add-type-hints-5
2020-07-29 13:56:57 +10:00
Damien Elmes
55891fc8f7
clearer message when template error is preventing save
2020-07-29 12:53:03 +10:00
Matt Krump
d4511e3287
Turn on check_untyped_defs for aqt.exporting
2020-07-28 18:42:22 -06:00
Matt Krump
98d8e1c926
Turn on check_untyped_defs for aqt.editor
...
* Turn on check_untyped_defs for aqt.browser
* Add type hints
2020-07-28 18:42:22 -06:00
Damien Elmes
e1bfe68b9e
Merge pull request #706 from mkrump/help-wanted-4-add-type-hints-4
...
Turn on check_untyped_defs for aqt.taglimit, aqt.update and aqt.browser
2020-07-28 13:16:49 +10:00
Damien Elmes
d3653ab6d5
bump version
2020-07-28 12:59:56 +10:00
Damien Elmes
ee10fd9008
don't throw error on empty path
...
https://forums.ankiweb.net/t/anki-2-1-28-error-message-when-reviewing-cards/1439
2020-07-27 11:28:32 +10:00
Matt Krump
1317b9f2b5
Fix browser.py import sorting
2020-07-26 13:16:06 -06:00
Matt Krump
0d8979f05e
Cast set to list to fix mypy failure in browser.py
2020-07-26 13:00:06 -06:00
Damien Elmes
1d1f5e1afc
apply AltGr workaround on qt 5.14 as well
2020-07-26 10:13:53 +10:00
Matt Krump
f27d465d69
Turn on check_untyped_defs for aqt.browser
...
* Turn on check_untyped_defs for aqt.browser
* Add type hints to browser
2020-07-25 17:31:49 -06:00
Matt Krump
a389e3ca94
Turn on check_untyped_defs for aqt.update
...
* Turn on check_untyped_defs for aqt.update
2020-07-25 17:31:44 -06:00
Matt Krump
8d988d2b6f
Turn on check_untyped_defs for aqt.taglimit
...
* Add type hints taglimit
* Turn on check_untyped_defs for aqt.taglimit
2020-07-25 15:45:31 -06:00
ANH
9279d5e33d
Merge branch 'master' into master
2020-07-25 05:24:45 +03:00
Damien Elmes
6ad544cf62
Merge branch 'master' into help-wanted-4-add-type-hints-3
2020-07-25 11:43:46 +10:00
Matt Krump
e93ae88cdf
Add type hints to importing
...
* Add type hints to importing
* Turn on type checking for aqt.importing
2020-07-24 12:38:34 -06:00
Matt Krump
38651d6a4e
Add type hints to errors
...
* Add type hints to errors
* Turn on type checking for aqt.errors
2020-07-24 11:20:54 -06:00
Matt Krump
a88f935a8c
Add type hints to aqt.models
...
* Add type hints to aqt.models
* Turn on type checking for aqt.models
2020-07-24 10:59:45 -06:00
ANH
a777784a38
add missing string r flag
2020-07-24 09:18:05 +03:00
ANH
3ad5c866b3
formatting
2020-07-24 09:00:34 +03:00
ANH
3276cc2e5e
avoid string concatenation
2020-07-24 08:12:46 +03:00
Matt Krump
90457e5f20
Add type hints for apt.deckconf
...
* Add type hints for apt.deckconf
* Turn on check_untyped_defs for apt.deckconf
2020-07-23 21:53:12 -06:00
ANH
939f3c8dc7
fix ankitects/help-wanted#13
2020-07-24 06:00:55 +03:00
Damien Elmes
7e4b2ac4d9
fix lint issue in previewer, and drop unused code
...
No add-ons appear to be using the removed code, and Anki wasn't
using it either.
2020-07-24 12:18:37 +10:00
Damien Elmes
4dff66cd10
formatting and debug statement tweak
2020-07-24 11:57:37 +10:00
Damien Elmes
d8ff54c884
fix preview not updating on edit
...
https://forums.ankiweb.net/t/modification-and-preview/1331
2020-07-24 11:57:22 +10:00
Damien Elmes
5104c0fd1b
enable AltGr workaround by default
...
5.15.1 may still be another month away
2020-07-24 10:32:50 +10:00
Damien Elmes
d460549b8f
ask user to check db when graphs fail to load
2020-07-24 09:56:28 +10:00
Damien Elmes
538f399787
Merge pull request #702 from mkrump/help-wanted-4-add-type-hints
...
Add type hints for apt.dyndeckconf
2020-07-24 09:01:07 +10:00
Matt Krump
51e50c176b
Add type hints for apt.dyndeckconf
...
* Add type hints for apt.dyndeckconf
* Turn on check_untyped_defs for apt.dyndeckconf
2020-07-23 16:04:46 -06:00
kelciour
6f8585b98a
Add --no-autoload-files option to mpv
2020-07-23 14:28:47 +03:00
Damien Elmes
fd45d7e2ae
fix misaligned deck heading in RTL languages
...
https://forums.ankiweb.net/t/anki-2-1-29-beta/1220/2?u=dae
2020-07-22 11:00:39 +10:00
Damien Elmes
f33451f12f
fix pylint failing in CI
2020-07-21 16:16:34 +10:00
Damien Elmes
47a9b523f7
protect against exception on initial recording wait
2020-07-21 16:07:58 +10:00
Damien Elmes
7e78d12b99
bump version
2020-07-21 15:54:14 +10:00
Damien Elmes
d084898b92
trigger recording permission on newer macOS SDKs
2020-07-21 15:54:04 +10:00
Damien Elmes
1b0228c4fc
formatting
2020-07-21 14:17:56 +10:00
Damien Elmes
876f474b7d
apply rtl dir to webviews
...
https://forums.ankiweb.net/t/gui-problems-with-right-to-left-languages/1205
2020-07-21 11:52:25 +10:00
Damien Elmes
976d42cc90
full sync terminates media sync; start it again afterwards
...
https://forums.ankiweb.net/t/media-files-not-downloaded-in-first-full-sync-v2-1-28/1198/3
2020-07-21 11:26:41 +10:00
Damien Elmes
3ca4a882a1
Merge pull request #692 from Arthur-Milchior/remove_useles_variables
...
Remove useless variables
2020-07-20 11:35:40 +10:00
Damien Elmes
8fb3da2e27
split add-ons window title from menu bar action
...
https://anki.tenderapp.com/discussions/private/4781-print-mistake
2020-07-19 09:49:36 +10:00
Damien Elmes
2ed481c37a
catch SIGTERM, and respond more quickly
2020-07-18 11:26:04 +10:00
Arthur Milchior
71afb2b4d3
Remove useless variables
2020-07-17 08:38:48 +02:00
Damien Elmes
5f93eaaf8f
i18n downgrade&quit button
2020-07-17 15:06:14 +10:00
Damien Elmes
9a457266f4
Merge pull request #690 from glutanimate/stats-will-show-hooks
...
Add a couple of hooks to trigger add-on actions before showing stats
2020-07-17 14:38:41 +10:00
Glutanimate
7056765179
Fix type annotation for old stats dialog class
2020-07-17 03:08:09 +02:00
Glutanimate
b7c8374095
Add a couple of hooks to trigger add-on actions before showing stats
2020-07-16 21:48:46 +02:00
Glutanimate
a9334014d3
Make sure to set domDone to False before loading URLs
...
Fixes an issue where JS would be evaluated prematurely in views
directly loaded from URLs.
2020-07-16 19:56:57 +02:00
Damien Elmes
baed2d8fa5
formatting
2020-07-16 13:55:53 +10:00
Damien Elmes
e471497bd2
add platform version back into sync metadata
2020-07-16 10:12:41 +10:00
Damien Elmes
d598a76f4a
can't rely on stdout to handle unicode
2020-07-15 09:36:29 +10:00
Damien Elmes
c6f8854ec8
Revert "Added parameter/return types, fixed possible logic error and typo"
2020-07-13 21:25:44 +10:00
Damien Elmes
9a3a96e599
Merge pull request #686 from zerrs/master
...
Added parameter/return types, fixed possible logic error and typo
2020-07-13 21:25:16 +10:00
Damien Elmes
178a8fb29e
Update customstudy.py
2020-07-13 21:24:18 +10:00
Damien Elmes
35494414cc
Merge pull request #684 from flagist0/select-note-type-with-ctrl-plus-digit-key
...
Allow to choose note type from list by pressing ctrl + row number
2020-07-13 21:23:35 +10:00
Alexander Presnyakov
98238e1707
Don't call setCurrentRow if row didn't change
2020-07-13 12:33:36 +03:00
zzzz
f6c0560660
Added some return and parameter types in customstudy.py, also fixed a possible logic error in plus function and a small typo
2020-07-13 01:32:08 -04:00
kelciour
6ca239a247
Scroll media sync log to the last line
2020-07-13 03:06:44 +03:00
Alexander Presnyakov
3ccc6ce61a
Allow to choose note type from list by pressing ctrl + row number
2020-07-12 22:15:58 +03:00
Damien Elmes
4e1bc76596
mediasrv symlink fix
...
https://forums.ankiweb.net/t/anki-2-1-28-beta/629/39
2020-07-11 10:53:41 +10:00
Glutanimate
ee8696cbf3
Add top_toolbar_did_redraw hook
...
Notifies add-ons of the top toolbar being redrawn
2020-07-10 17:38:40 +02:00
Damien Elmes
6e07ab64af
formatting
2020-07-07 13:28:30 +10:00
Damien Elmes
a2b4160d60
tidy up logging
2020-07-07 10:50:12 +10:00
Damien Elmes
c5f36ccf08
if webexports does not match, return 403
2020-07-07 10:50:03 +10:00
evandrocoan
af731fa739
Fix _addons/ URL prefix not being removed on Windows systems
...
Anki 2.1.28 Beta
https://forums.ankiweb.net/t/anki-2-1-28-beta/629/26
> Did the requirements on how to expose resources on the internal server change? Because scripts, css files and the like, registered with setWebExports, do not work anymore with beta2.
> A look at the console shows the following for all resources:
> Failed to load resource: the server responded with a status of 500 (INTERNAL SERVER ERROR)
**\Anki2\addons21\someaddon\__init__.py**
```py
from aqt import mw
import aqt
# assuming add-on folder is named "test"
# and assuming a 'test.js' is in the same folder
addon_id = "someaddon"
port = mw.mediaServer.getPort()
mw.addonManager.setWebExports(addon_id, ".*\\.js$")
print("Hello")
aqt.editor._html += f"""
<script>
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'http://127.0.0.1:{port}/_addons/{addon_id}/test.js ';
document.body.appendChild(script);
</script>"""
```
2020-07-06 13:51:37 -03:00
Andreas Reis
3628011599
Always use standard QT color dialog on Linux
...
On Linux only Gnome uses its own color dialog, and it's inferior to QT's own: See the same issue @ https://github.com/OpenShot/openshot-qt/pull/2425
(This is/was visible only on some distributions' packaged versions of Anki, not via ./run.)
isLin check since QT on Windows already uses the default, whereas Mac's own picker seems superior (from what I can judge by screenshots).
2020-07-05 13:21:38 +02:00
Damien Elmes
85dd611b72
don't stuff mw into function objects
...
Using the global is preferable to fighting against mypy to insert mw
into a function object.
2020-07-03 10:55:29 +10:00
Damien Elmes
17f80e4a7a
port previous css workaround to flask
2020-07-03 10:40:23 +10:00
Damien Elmes
d1253bbfa0
Merge pull request #554 from evandroforks/fix_html5_media_support
...
Fixed HTML5 media tags
2020-07-03 10:25:43 +10:00
evandrocoan
f96e090b72
Replaced flask.Response by flask.make_response to simplify the
...
implementation and because make_response is preferred over Response
as it respects the server defined Response type.
2020-07-02 20:39:03 -03:00
evandrocoan
6c5311417f
Removed duplicated mediasrv.py security check and fixed invalid
...
command/path error message.
2020-07-02 20:39:03 -03:00
evandrocoan
2de914267b
Fix jest unit tests after merge
...
# Conflicts:
# qt/aqt/mediasrv.py
# qt/ts/src/ankimedia.ts
# qt/ts/src/reviewer-exceptions.test.ts
# qt/ts/src/reviewer.test.ts
# ts/package.json
2020-07-02 14:30:43 -03:00
evandrocoan
3ae83a0ec3
Replaced send_from_directory by send_file to simplify the code
2020-07-02 13:52:07 -03:00
evandrocoan
9bd8e494b3
Ensure protection against directory transversal
...
https://security.openstack.org/guidelines/dg_using-file-paths.html
2020-07-02 13:52:03 -03:00
evandrocoan
11183ac1f3
Fixed aqt/mediasrv.py:14: error: unused 'type: ignore' comment
...
from waitress.server import create_server # type: ignore
https://github.com/evandroforks/anki/runs/743801391#step:25:1129
2020-07-02 13:51:59 -03:00
evandrocoan
7033329012
Replaced the mediasrv.py SimpleHttp server by flask and waitress,
...
fixing HTML5 media support.
https://stackoverflow.com/questions/37044064/html-audio-cant-set-currenttime
https://stackoverflow.com/questions/21956683/enable-access-control-on-simple-http-server
https://stackoverflow.com/questions/5052635/what-is-relation-between-content-length-and-byte-ranges-in-http-1-1
https://stackoverflow.com/questions/16725907/google-app-engine-serving-mp3-for-audio-element-needs-content-range-header
I was trying to use HTML5 audio tag to display audios like:
```html
<audio id="elem_audio" src="myfile.mp3" controls></audio>
```

But the progress bar seek was not working. After researching, I found the problem was the HTML server not properly responding to the HTML5 header requests. The HTML server should respond to quite complicated things as 206 partial, properly handle keep-alive, provide media ranges and other HTTP headers: https://stackoverflow.com/questions/37044064/html-audio-cant-set-currenttime
To implement all these on the Simple HTTP server would be quite complicated. Then, instead, I imported the `flask` web server, which is quite simple and straight forward to use. Now, the back-end is using a secure complaint HTTP back-end:
1. https://palletsprojects.com/p/flask/
> Flask is a lightweight WSGI web application framework. It is designed to make getting started quick and easy, with the ability to scale up to complex applications. It began as a simple wrapper around Werkzeug and Jinja and has become one of the most popular Python web application frameworks.
>
> Flask offers suggestions, but doesn't enforce any dependencies or project layout. It is up to the developer to choose the tools and libraries they want to use. There are many extensions provided by the community that make adding new functionality easy.
1. https://docs.pylonsproject.org/projects/waitress/en/latest/
> Waitress is meant to be a production-quality pure-Python WSGI server with very acceptable performance. It has no dependencies except ones which live in the Python standard library. It runs on CPython on Unix and Windows under Python 2.7+ and Python 3.5+. It is also known to run on PyPy 1.6.0 on UNIX. It supports HTTP/1.0 and HTTP/1.1.
Right now, anki does not support fields passing file names directly to HTML audio tags, but this can be easily done with (https://github.com/ankitects/anki/pull 540 - Added arguments to the sound tag) plus the commit 826a97df61 , the HTML5 audio tag can be used like this:
```html
// Audio = [sound:myfile.mp3|onlyfilename]
<audio id="elem_audio" src="{{Audio}}" controls controlsList="nodownload"></audio>
```

# Conflicts:
# qt/aqt/mediasrv.py
2020-07-02 13:51:49 -03:00
Damien Elmes
f093acc0e8
dump error on profile load fail
...
may help diagnose
https://forums.ankiweb.net/t/i-couldnt-open-anki-resetting-corrupt-global/190
2020-07-02 10:35:01 +10:00
Damien Elmes
313b40f836
defer top toolbar drawing until after add-ons loaded
...
https://forums.ankiweb.net/t/anki-2-1-28-beta/629/13
2020-07-02 10:23:14 +10:00
Damien Elmes
67cde145b1
add new strings to .po files as part of template update
...
Pontoon appears to only update existing gettext translations; it
won't add new ones on its own. Fixes
https://forums.ankiweb.net/t/anki-2-1-28-beta/629/6
2020-07-02 10:03:39 +10:00
Damien Elmes
a5e78485f4
fix scrollbars on fields on Windows/Linux
2020-07-02 09:51:50 +10:00
Damien Elmes
4e7ae0969f
formatting
2020-07-01 14:01:24 +10:00
Damien Elmes
c5ef40e5ec
don't allow table inside field to extend outside of field
...
https://anki.tenderapp.com/discussions/private/4498-adjust-textbox-geometry-in-add-note-window
2020-07-01 12:13:04 +10:00
Damien Elmes
ed4c74ca4d
add option to disable media syncing
...
https://forums.ankiweb.net/t/error-when-adding-audio-file/495/2
2020-07-01 11:35:24 +10:00
Damien Elmes
9bb45673a8
show clearer error when media db locked
...
should not happen frequently during a sync, but may happen during
the initial change checking stage
https://forums.ankiweb.net/t/error-when-adding-audio-file/495/2
2020-07-01 11:19:06 +10:00
Damien Elmes
c61f52d871
shift+click on the graphs button to access old graphs for now
2020-06-30 20:07:46 +10:00
Damien Elmes
6ad4111723
graphs now work in night mode
2020-06-30 16:23:46 +10:00
Damien Elmes
33317d41b3
update edited/changed column labels
...
https://github.com/ankitects/anki/pull/674/files
2020-06-29 18:34:03 +10:00
Damien Elmes
78fbaf7724
plug new graphs code into GUI
...
Still some work to do. Feedback welcome!
2020-06-29 15:53:56 +10:00
Damien Elmes
06d9f64dea
lint fixes
2020-06-29 15:53:56 +10:00
Damien Elmes
d3feb931ba
add option to webview to skip external browser open
2020-06-29 15:48:01 +10:00
Damien Elmes
94f75f0728
include generated js in aqt_data
2020-06-29 15:48:01 +10:00
Damien Elmes
349eca843b
get i18n working in typescript
2020-06-29 15:48:01 +10:00
Damien Elmes
0293f2220c
qt's js code now shares ts/node_modules; more graph work
2020-06-29 15:48:01 +10:00
Damien Elmes
27ac65418c
update qt ts to prettier 2.0
2020-06-29 15:48:01 +10:00
Damien Elmes
93e1b907ba
add top level component and pass search/day limit back from frontend
2020-06-29 15:48:00 +10:00
Damien Elmes
1e9901e9bd
experiment with exposing raw card/revlog data to frontend
2020-06-29 15:48:00 +10:00
Damien Elmes
cfb76f8305
Merge pull request #675 from kelciour/mpv-changes-2
...
A few mpv changes 2
2020-06-29 15:47:09 +10:00
kelciour
66d69c3460
Fix "make check" by defining dummy _register_callbacks method in MPVBase
2020-06-27 13:07:46 +03:00
kelciour
39eec24c3d
Fix no sound after mpv restart
2020-06-27 03:46:40 +03:00
kelciour
7518597408
Replace mpv "idle" property with "end-file" event
2020-06-27 03:46:40 +03:00
kelciour
88103d29cf
Replace default mpv quit keybindings if mpv version is >= 0.30
...
4614d432a8
2020-06-27 03:46:40 +03:00
neitrinoweb
460ac4165d
add type hints
2020-06-25 17:27:52 +03:00
neitrinoweb
4d9fe86b3c
fix missing typing import
2020-06-25 16:53:24 +03:00
Damien Elmes
f38c9b4272
work around yet another qt bug
...
https://anki.tenderapp.com/discussions/beta-testing/2017-httpsforumsankiwebnettrestore-defaults-config-not-visually-updated420
2020-06-24 11:12:45 +10:00
Damien Elmes
3396dc3d18
remove the script-message commands that older mpv version don't support
...
https://github.com/ankitects/anki/pull/671#issuecomment-647798343
2020-06-23 14:30:42 +10:00
Damien Elmes
4d16dc243d
remove mpv keybindings on init
...
On a machine here, they cause the following error:
raise MPVCommandError("%r: %s" % (message["command"], e))
aqt.mpv.MPVCommandError: ['keybind', 'q', 'stop']: invalid parameter
2020-06-22 13:22:57 +10:00
Damien Elmes
8e73b77476
Merge pull request #671 from kelciour/mpv-changes
...
A few mpv changes
2020-06-22 12:12:58 +10:00
Damien Elmes
b43096c535
Merge pull request #670 from evandroforks/print_version
...
Create the command line argument -v/--version to print version
2020-06-22 12:06:18 +10:00
kelciour
fa635cfe17
Reset pause mode when switching to the next file
2020-06-20 02:04:35 +03:00
kelciour
1283e48603
Replace deprecated "idle" event with "idle-active" property
2020-06-20 02:04:35 +03:00
kelciour
ce3d3a3633
Disable OSC idle message
2020-06-20 02:04:34 +03:00
kelciour
ba9c4a5175
Replace default mpv "quit" keybindings with "stop"
...
https://github.com/mpv-player/mpv/blob/master/etc/input.conf
2020-06-20 02:04:34 +03:00
evandrocoan
5d166f990d
Create the command line argument -v/--version to print version
...
https://forums.ankiweb.net/t/i-couldnt-open-anki-resetting-corrupt-global/190
2020-06-19 13:13:10 -03:00
Arthur Milchior
7319ab8231
Strip name of added deck
...
There is currently what I believe to be a bug: create a deck " ".
The creation is accepted and the name is renamed to "blank". Instead,
I believe you'd want to strip the deck name before testing its
emptiness.
2020-06-17 11:58:33 +02:00
Damien Elmes
f5694a7e4a
migrate card stats to backend
...
Currently this renders the HTML directly like the previous Python
implementation - doing it in JS would probably make more sense in the
future.
2020-06-15 17:22:16 +10:00
Damien Elmes
fc99306d22
Merge pull request #667 from BlueGreenMagick/refresh-deck-list
...
refresh deck list when adding deck via deckchooser
2020-06-12 09:12:51 +10:00
Damien Elmes
e0e9b91b92
Merge pull request #666 from BlueGreenMagick/studydeck-name
...
get deck name after adding deck
2020-06-12 09:12:21 +10:00
Damien Elmes
91fb5c1658
Merge pull request #665 from BlueGreenMagick/remove-a-var
...
Add type hints to deckchooser
2020-06-12 09:11:54 +10:00
Damien Elmes
154ee7a962
remove ellipsis
2020-06-12 09:04:19 +10:00
BlueGreenMagick
c824d45b2e
add typehint to deckchooser.py
...
every occurunce of self.widget is type ignored
because QHBoxLayout has a method named widget
renaming this property will allow type hints
2020-06-11 14:19:36 +09:00
BlueGreenMagick
512a9afed6
refresh deck list when adding deck via deckchooser
2020-06-11 13:00:10 +09:00