Commit graph

1418 commits

Author SHA1 Message Date
Damien Elmes
2feddb3d70 update temporary val="%s" references to standard ftl 2020-11-17 22:00:44 +10:00
Damien Elmes
8b11c2c451 update translations
add qt ftl strings from external repo
2020-11-17 20:11:06 +10:00
Damien Elmes
bdd642a7a8 update designer references 2020-11-17 19:55:18 +10:00
Damien Elmes
1781e83252 merge pylib references 2020-11-17 19:23:06 +10:00
Damien Elmes
767933e2f5 fix the preview shortcut references 2020-11-17 17:51:57 +10:00
Damien Elmes
066b1498ae merge bulk of qt/ - designer files still to do 2020-11-17 17:42:43 +10:00
Damien Elmes
d2e97d8332 add script to rewrite py files 2020-11-17 17:39:48 +10:00
Damien Elmes
39fe93be1f output strings into ftl files 2020-11-17 15:12:05 +10:00
Damien Elmes
83cbe0d412 map gettext strings to keys/modules for ftl conversion 2020-11-17 14:11:09 +10:00
Damien Elmes
f4d424788e Merge pull request #825 from hgiesel/mathjax3plus2
Switch from jQuery pre 3.0.0 pseudo promises to ES6 promises for ts hooks
2020-11-16 11:44:21 +10:00
Damien Elmes
e92848e0c2 Merge pull request #826 from abdnh/write-dupes-fix
Make dupe search operate on non-stripped text
2020-11-16 11:43:33 +10:00
abdo
35bfd20240 Make dupe search operate on non-stripped text
See https://github.com/ankitects/anki/pull/822/
2020-11-16 04:01:04 +03:00
Henrik Giesel
0d94016193 Switch from jQuery pre 3.0.0 pseudo promises to ES6 promises 2020-11-16 01:09:59 +01:00
Henrik Giesel
35b82bcd72 Satisfy formatter 2020-11-15 21:40:59 +01:00
Henrik Giesel
f498ae88dc Improve ts hooks to allow for asynchronous actions
* reviewer ts hooks may now return a promise, which are then waited upon with Promise.all
* this does not break old ts hooks, as Promise.all allows for non-Promises in its array
2020-11-15 21:16:06 +01:00
Henrik Giesel
d18653cf16 Include default MathJax packages
* by default load all the default tex-chtml packages, which additionally include:
  * require: using \require{package-name} to load a package
  * autoload: using a command from a different package automatically loads it
  * configmacros: allows for definition of predefined macros
2020-11-15 20:56:50 +01:00
Henrik Giesel
cc2ba7d07f Load require package in Mathjax 2020-11-15 13:58:51 +01:00
Damien Elmes
7f040cad0d Merge branch 'mathjax3' 2020-11-15 20:24:50 +10:00
Damien Elmes
896a1e44b1 add rule to copy mathjax from node_modules 2020-11-15 20:22:28 +10:00
Damien Elmes
da58bbaaa3 ignore incorrect clock in dev mode 2020-11-15 18:29:16 +10:00
RumovZ
8fc5d4c897 Update frontend search escapes to new parsing 2020-11-14 20:37:40 +01:00
Henrik Giesel
06bd0376b1 Remove @types/mathjax as it is for MathJax 2 2020-11-14 14:14:25 +01:00
Henrik Giesel
3ec4b0da3a Add moving MathJax3 into mathjax directory to build process 2020-11-14 14:14:25 +01:00
Henrik Giesel
6a29e0cd4d Rip out MathJax 2 and setup MathJax 3 environment 2020-11-14 14:14:25 +01:00
Henrik Giesel
839e6652dd Update MathJax2 config to MathJax3 config
Used: https://mathjax.github.io/MathJax-demos-web/convert-configuration/convert-configuration.html
2020-11-14 14:14:25 +01:00
Damien Elmes
a4af59fc4d format_fix -> format; rename svelte-check for consistency 2020-11-12 20:19:32 +10:00
Damien Elmes
ba5dc96a6b fix some unwanted leading space in i18n keys 2020-11-12 08:55:26 +10:00
Damien Elmes
0cb2b3f0c1 update qt/ to 3.8 as well 2020-11-11 21:37:36 +10:00
Damien Elmes
48d07b7541 sort merged po files 2020-11-11 21:18:41 +10:00
Damien Elmes
c62e6e61c2 update i18n scripts
- export updated .po files for consumption
- add a script to pull and push translations
2020-11-11 21:08:06 +10:00
Damien Elmes
5ab4cbfd63 prep for i18n updates
Update scripts will be split into separate repo
2020-11-11 16:18:28 +10:00
Damien Elmes
5f8df09271 add Makefile and README from packaged Linux version 2020-11-11 13:57:38 +10:00
Damien Elmes
fb21e89653 add pyqtwebengine to wheel deps and bump minimum required pyqt 2020-11-11 10:33:49 +10:00
Damien Elmes
ec74cf6730 handle packaged pylib buildinfo.txt; drop aqt buildinfo 2020-11-11 10:33:49 +10:00
Damien Elmes
8147c9996a Merge pull request #793 from nwwt/object-audio-tags-support
Audio & object tag support
2020-11-11 10:33:31 +10:00
Andreas Reis
776c46e23b Allow <audio> to play without user interaction in accordance to autoplay setting
Since 2018, Chromium by default requires at least one user interaction with a page in order for sound to play. That's not what an Anki user expects.

So this commit undoes this by setting the policy accordingly if the deck's settings have autoplay set, so that files in <audio> tags (if they further have the autoplay attribute set / are jscripted accordingly) are treated the same as ones in [sound:…] elements. OFC, it's obviously not a good idea to mix both on one card.

(AnkiDroid's WebView has already been unconditionally ignoring the requirement since forever.)
2020-11-10 14:53:45 +01:00
Andreas Reis
81d6d21ae3 cleanup / renames
・ soundRegexps →  sound_regexps

・ htmlRegexps →  html_media_regexps

・ HTML_TAGS →  HTML_MEDIA_TAGS

・ escapeImages →  escape_media_filenames + alias

・ strip_html_preserving_image_filenames →  strip_html_preserving_media_filenames
2020-11-10 14:53:04 +01:00
ianki
28ad68d490 Add hooks for filtering media. 2020-11-09 02:12:23 -08:00
Damien Elmes
27e14dc59e Merge pull request #814 from k12ish/master
Improve compatibility with graphics pad/touchscreen
2020-11-09 19:42:41 +10:00
Damien Elmes
b3db379655 Merge pull request #813 from RumovZ/fix-search-combos
Fix clicking filters with keyboard modifiers
2020-11-09 19:42:13 +10:00
k12ish
1ca0eb04bb Improve compatibility with graphics pad/touchscreen
When using anki with a graphics pad, text is often selected on accident. This snippet of CSS will fix that issue
2020-11-08 18:14:37 +00:00
RumovZ
7f9aa879b5 Fix clicking filters with keyboard modifiers 2020-11-08 11:05:11 +01:00
Damien Elmes
8cc6f338f5 fix missing QAudioDeviceInfo on macOS 2020-11-06 12:01:37 +10:00
Damien Elmes
5e3a4d2c88 Merge pull request #808 from sobjornstad/reposition-highlight
Start with default value in reposition spinbox selected
2020-11-06 11:09:15 +10:00
Damien Elmes
f128f0f79a fix aqt version requirement; use py3 instead of cp38 tag 2020-11-05 20:25:08 +10:00
Damien Elmes
338836ebb9 cleanups 2020-11-05 11:21:13 +10:00
Damien Elmes
d6e13ee28e fix tests on Linux 2020-11-04 21:39:41 +10:00
Damien Elmes
e4ba941cf1 move aqt_data into source folder; implement wheel building 2020-11-04 12:14:03 +10:00
Soren Bjornstad
e8b40ec7d5 start with default value in reposition text box highlighted
This saves a keystroke if you want to replace the default value. It's
hard to imagine a situation in which you would want to *prepend*
characters to the default value, as is the current behavior. If you want
to accept the default value, you can still hit enter or tab immediately.
2020-11-02 19:07:53 -06:00
Damien Elmes
9999ec8124 fix pywintypes issue when running tests on Windows 2020-11-02 21:36:01 +10:00
Damien Elmes
7c27c4b9a0 move backend.proto into rslib/ 2020-11-02 16:28:31 +10:00
Damien Elmes
a7f403f0b0 rspy -> pylib/rsbridge 2020-11-02 15:21:12 +10:00
Damien Elmes
99b20cbaa6 update CI 2020-11-01 16:33:40 +10:00
Damien Elmes
f9171eb3d3 remove old makefiles 2020-11-01 14:41:01 +10:00
Damien Elmes
e40be43843 always return str in aqt_data_folder() 2020-11-01 14:38:13 +10:00
Damien Elmes
ce3b08ac58 initial Bazel conversion
Running and testing should be working on the three platforms, but
there's still a fair bit that needs to be done:

- Wheel building + testing in a venv still needs to be implemented.
- Python requirements still need to be compiled with piptool and pinned;
need to compile on all platforms then merge
- Cargo deps in cargo/ and rslib/ need to be cleaned up, and ideally
unified into one place
- Currently using rustls to work around openssl compilation issues
on Linux, but this will break corporate proxies with custom SSL
authorities; need to conditionally use openssl or use
https://github.com/seanmonstar/reqwest/pull/1058
- Makefiles and docs still need cleaning up
- It may make sense to reparent ts/* to the top level, as we don't
nest the other modules under a specific language.
- rspy and pylib must always be updated in lock-step, so merging
rspy into pylib as a private module would simplify things.
- Merging desktop-ftl and mobile-ftl into the core ftl would make
managing and updating translations easier.
- Obsolete scripts need removing.
- And probably more.
2020-11-01 14:26:58 +10:00
Damien Elmes
4d861e4c95 Merge pull request #803 from RumovZ/fix-completer-focus
Work around Qt's focus bug (fix help-wanted#22)
2020-10-29 21:44:13 +10:00
Damien Elmes
fc46426951 Merge pull request #804 from hgiesel/mime
Set MIME type for javascript files
2020-10-29 20:54:03 +10:00
Henrik Giesel
3a4036d59d Set MIME type for javascript files 2020-10-26 23:32:38 +01:00
RumovZ
00a5a6ff33 Work around Qt's focus bug (fix help-wanted#22)
Manually hide the editor's completer popup before accepting a short cut which changes the focus widget. Thus, work around the bug in PyQt 5.15 where a QLineEdit with open QCompleter popup won't get notified about focus changes handled by the Main Window, leading to inconsistent focus.
2020-10-24 10:47:25 +02:00
abdo
96eadecdec Use replace instead of strip
https://github.com/ankitects/anki/pull/801
2020-10-22 15:21:30 +03:00
abdo
69da22a2b9 Strip double quotes from names
Strip double quotes from all kinds of names

https://github.com/ankitects/anki/pull/798
2020-10-21 21:48:49 +03:00
Damien Elmes
00a71b6499 Merge pull request #799 from hgiesel/cal
Introduce Browser.search_for and Browser.update_search
2020-10-21 21:31:21 +10:00
Damien Elmes
dff4849241 Merge pull request #798 from abdnh/escape-quotes-in-search
Escape double quotes in search
2020-10-21 21:28:51 +10:00
Damien Elmes
d32fd008c0 Merge pull request #797 from abdnh/importing-fix
Fix notes being imported to the wrong deck in some cases
2020-10-21 21:22:33 +10:00
Damien Elmes
75716d13ff Merge pull request #795 from abdnh/reviewer-cleanup
Set card to None in reviewer cleanup
2020-10-21 21:19:43 +10:00
Damien Elmes
1d330138cb Merge pull request #794 from abdnh/tagedit-enter-fix
Don't apply suggestion when no suggestion list is shown in tagedit
2020-10-21 21:19:05 +10:00
Damien Elmes
17de596fc1 Merge pull request #791 from abdnh/sidebar-context-menu
help-wanted#6: continue work on new browser sidebar (based on #590)
2020-10-21 21:13:32 +10:00
Henrik Giesel
ee34a3458c Turn update_search into its own method 2020-10-19 21:07:29 +02:00
Henrik Giesel
bd9fca786d Add search prompt for setupSearch 2020-10-19 20:57:19 +02:00
Henrik Giesel
634a6f04d1 Add uses of search_for 2020-10-19 20:51:36 +02:00
Henrik Giesel
ae26e2fc70 Add search_for method 2020-10-19 20:37:17 +02:00
abdo
0c7726f87e Escape double quotes in search 2020-10-19 01:06:41 +03:00
abdo
8f76fd5a39 Remove unused code 2020-10-15 16:14:14 +03:00
abdo
6e4d5453ac Save importing model in any case
https://forums.ankiweb.net/t/bug-notes-are-imported-to-the-wrong-deck-in-certain-cases/4318
2020-10-15 15:14:55 +03:00
abdo
d0aa8625b4 Set card to None in reviewer cleanup 2020-10-14 12:56:47 +03:00
abdo
51e5eba3fe Don't apply suggestion when no suggestion list is shown 2020-10-14 05:00:24 +03:00
Damien Elmes
74981145cf formatting fix
formatting fix
2020-10-14 10:35:57 +10:00
Damien Elmes
2c36fde269 Update __init__.py 2020-10-14 09:45:34 +10:00
Andreas Reis
4e35b1780d Add command-line argument to skip addons
Shift doesn't work for me occasionally, for whatever reason. So just add an -s to skip it that way.

(Also, update my github nick)
2020-10-14 01:31:07 +02:00
abdo
5463b13128 Fix typing warning 2020-10-12 11:01:15 +03:00
abdo
e0bbf38850 Do sidebar switch check in browser init
https://github.com/ankitects/help-wanted/issues/6#issuecomment-706880794
2020-10-12 10:28:21 +03:00
abdo
3d3e68ed7a Merge branch 'sidebar-context-menu' of https://github.com/abdnh/anki into sidebar-context-menu 2020-10-12 10:15:23 +03:00
Damien Elmes
874366fce7 formatting fix 2020-10-12 12:37:51 +10:00
Damien Elmes
362ebef832 Merge pull request #790 from hgiesel/fields
Add fields_did_rename_field and fields_did_remove_field hooks
2020-10-12 12:36:39 +10:00
Damien Elmes
b182c07a99 Merge pull request #789 from abdnh/editor-decode-urls
Decode pasted URLs for nicer display
2020-10-12 12:33:52 +10:00
Damien Elmes
089e48adac Merge branch 'master' into opus-audio 2020-10-12 12:32:43 +10:00
Damien Elmes
accffbd29a formatting fixes 2020-10-12 12:17:02 +10:00
Damien Elmes
597b81ebeb Merge pull request #782 from johan456789/patch-1
fix outdated help site
2020-10-12 12:15:46 +10:00
Henrik Giesel
0f09258e68 Add fields_did_rename_field and fields_did_remove_field hooks 2020-10-11 19:16:30 +02:00
abdo
9140c3597f Decode pasted URLs 2020-10-11 16:46:46 +03:00
Piotr Kubowicz
1add0e6c6b Add .opus as an audio extension
Wikimedia Commons has pronunciation recordings with .opus extension.
Anki is able to play such files, but until now adding them required
changing the extension to .ogg or some other supported one.

Also sort the audio extensions list.
2020-10-10 16:28:40 +02:00
Damien Elmes
909367efc1 fixes for latest mypy 2020-10-10 19:02:59 +10:00
abdo
401485834b Move new sidebar code to a separate file
- Move the new sidebar code and SidebarTreeView implementation to a
  new file. Old sidebar can be accessed with the shift key. The "new" sidebar
  doesn't add much for now.
- Make rename_deck work with subdecks
- Fix an issue when trying to open context menu over areas not populated
  with sidebar items
2020-10-10 04:42:49 +03:00
abdo
69f9543fda Merge commit 'refs/pull/590/head' of https://github.com/ankitects/anki into sidebar2 2020-10-10 04:11:54 +03:00
johan456789
0ebe5d14eb fix help url paths 2020-10-10 00:38:07 +08:00
johan456789
a5b452780e remove never used link 2020-10-10 00:07:34 +08:00
abdo
1b3b1e3329 Escape ampersands in note type names too 2020-10-07 15:26:32 +03:00
abdo
2e48b437eb Fix 'Filter' menu item in deck filters not working 2020-10-07 14:32:21 +03:00
abdo
2ebf8d5f0e Escape ampersands in filter menu
Fixes ankitects/help-wanted#20
2020-10-07 13:44:33 +03:00
Damien Elmes
53ceab9bd3 Merge pull request #778 from hgiesel/refocus
Always focus main web instead of bottom web in reviewer
2020-10-07 16:22:49 +10:00
Damien Elmes
515de117f4 add Gustavo Costa
A reminder that anyone who's contributed is welcome to send
a PR adding themselves!
2020-10-06 14:36:11 +10:00
Damien Elmes
8b0be88df5 fix invisible scrollbar in nightmode
vars.scss no longer contains the Qt theme definitions, so the
easiest solution was to duplicate the colour in this case
2020-10-06 14:35:21 +10:00
Henrik Giesel
5517e69f7e Have a "default" highlight, but naturally follow focus if focus is in container 2020-10-05 22:54:23 +02:00
Henrik Giesel
e7fe9b470f Give the focus on .focus element a red tint 2020-10-05 22:39:16 +02:00
Henrik Giesel
65f77ef44e Add focus class which mimics built-in focus 2020-10-05 22:18:46 +02:00
Damien Elmes
d3df6dd92a fix IndexError when switching notetypes
Closes #780
https://github.com/ankitects/anki/pull/780
2020-10-05 13:33:54 +10:00
Damien Elmes
0ed130b133 Merge pull request #781 from hgiesel/leftbtns
Refactor Buttons in editor and add editor_did_init_left_buttons gui_hook
2020-10-05 13:14:52 +10:00
Damien Elmes
28e00f487b Merge pull request #779 from david-allison-1/fix-sign-up-link
Fix "Sign Up" link location
2020-10-05 12:34:11 +10:00
Damien Elmes
bfd960af1a Merge pull request #777 from kelciour/mpv-anki-freeze-on-windows
Separate player for videos on Windows
2020-10-05 12:27:31 +10:00
Henrik Giesel
90572d1b7c Turn _class into rightside boolean flag 2020-10-04 23:03:37 +02:00
Henrik Giesel
b5b2a07a88 Refactor out theclass assignment 2020-10-04 22:51:34 +02:00
Henrik Giesel
716f8a103c Add editor_did_init_left_buttons gui_hook 2020-10-04 22:50:02 +02:00
Henrik Giesel
70b28b95a2 Make icon Optional explicitly in function signature 2020-10-04 22:42:28 +02:00
Henrik Giesel
b2d8db67f7 Rewrite so all editor toolbar buttons use _addButton 2020-10-04 22:41:18 +02:00
David Allison
94382867d0 Fix "Sign Up" link location
String states "Sign Up", but currently points to the "Sign In" screen: https://ankiweb.net/account/login

c8a6d81fde/rslib/ftl/sync.ftl (L38-L42)
2020-10-04 18:14:49 +01:00
Henrik Giesel
f7256569c5 Also focus main web instead of bottom web 2020-10-03 22:33:01 +02:00
kelciour
ec4bd071fe Separate player for videos on Windows
https://forums.ankiweb.net/t/anki-crashes-because-of-mpv/3359/13
2020-10-03 22:53:17 +03:00
abdo
375a395ef5 Paste links as plain text in basic mode 2020-10-03 19:46:05 +03:00
Damien Elmes
05f8ae116a Merge branch 'master' into fix-ui-scale 2020-10-03 09:44:04 +10:00
Akshara Balachandra
c5da91206b fix: sizing issue with scale UI
Fixes ankitects/help-wanted#18. Height of webview should be the height
of the contents inside it. Previously, scale factors increased fixed
height of the container webview, thus creating empty space (e.g.
at 200% scaling, height of webview was double the height of the inner
HTML page). Now height of webview is always the height of the contained
element.
2020-10-02 18:07:28 -04:00
abdo
a09a70fec2 Recognize ico files
Local icons were being pasted as normal links previously instead of
being enclosed in img tags.
2020-10-03 00:17:38 +03:00
Damien Elmes
2ed1507162 bump version 2020-10-02 10:22:21 +10:00
Damien Elmes
14885acc44 don't reschedule repeating timers that occur during progress
For things like updating the deck list, it makes no sense to do it
multiple times at the end of a long operation, and the once/second signal
timer was causing hundreds or thousands of 100ms timers to be created.

https://forums.ankiweb.net/t/anki-memory-usage/3842
2020-09-30 10:01:06 +10:00
Damien Elmes
722454bab1 Merge pull request #769 from abdnh/escape-sidebar-terms
Escape browser sidebar search terms
2020-09-27 16:06:10 +10:00
Damien Elmes
fa6ee12f47 fix links not opening externally after finishing
https://forums.ankiweb.net/t/anki-2-1-34-35-beta/3569/19
2020-09-27 14:36:55 +10:00
Damien Elmes
aefcdfa17f backups no longer happen on each sync
https://forums.ankiweb.net/t/accidentally-deleted-backs-one-deck/3740/6
2020-09-27 12:59:51 +10:00
Damien Elmes
86e8df58ee fix old content appearing when flagging
https://forums.ankiweb.net/t/very-specific-but-quite-consistent-bug-in-browser/3685
2020-09-27 12:31:25 +10:00
Damien Elmes
2cc4fad19a fix import shortcut
https://forums.ankiweb.net/t/anki-2-1-34-35-beta/3569/21
2020-09-27 11:57:12 +10:00
abdo
9ff8aa4830 Escape sidebar search terms 2020-09-25 21:05:34 +03:00
abdo
7aaf22b0a2 Fix previewer not refreshing when selecting multiple cards in browser 2020-09-24 07:05:16 +03:00
Damien Elmes
88114b0662 Merge pull request #767 from abdnh/context-menu-copy-image
Allow copying of images using context menu
2020-09-24 10:57:13 +10:00
Damien Elmes
1a619073d7 bump version 2020-09-24 10:52:24 +10:00
abdo
b20e022097 Allow copying of images using context menu 2020-09-22 06:32:37 +03:00
Damien Elmes
b57d1ed08a allow dragging of images in review screen again
when we were using webkit+file URLs, this deleted files from the
media folder! But we're behind a HTTP server now, so this should
be safe.

https://forums.ankiweb.net/t/no-longer-able-to-copy-latex-output/3128/5

originally disabled in
dd4bae6e8d
2020-09-22 10:29:53 +10:00
abdo
25c2eda7d2 'Show Both Sides' -> 'Back Side Only' 2020-09-20 19:31:00 +03:00
kelciour
401b1b43b2 Revert back to listening for idle callback
https://forums.ankiweb.net/t/anki-2-1-33-linux-audio-stops-working/3023
2020-09-16 09:25:18 +03:00
Damien Elmes
1b8d1303ca Merge pull request #758 from hgiesel/synchook
Add sync_will_start and sync_did_finish hook
2020-09-15 21:20:46 +10:00
Henrik Giesel
5981cebb8e Move sync_did_finish before reset 2020-09-15 13:06:11 +02:00
abdo
a410a1117a Support extended drag & drop 2020-09-14 17:07:31 +03:00
Henrik Giesel
306424455c Add some documentation to sync_did_finish hook 2020-09-14 13:18:16 +02:00
Henrik Giesel
52502fb1d3 Put sync_did_finish hook before after_sync because it might unload collection 2020-09-14 13:06:20 +02:00
Henrik Giesel
a685272e16 Add sync_will_start and sync_did_finish hook 2020-09-14 12:22:01 +02:00
Damien Elmes
32f5bc96a8 another showDupes fix from ANH
https://forums.ankiweb.net/t/show-duplicates-not-working/2883/10
2020-09-04 10:13:30 +10:00
Damien Elmes
a5955f0206 sound tags need filename html escaped
https://forums.ankiweb.net/t/unable-to-play-longer-audio-on-cards/1313/30
2020-09-04 09:36:38 +10:00
Damien Elmes
d81251676d Revert "Merge pull request #749 from ANH25/editor-media-autoplay"
This reverts commit 373402ed0a, reversing
changes made to 35c59cb899.

https://github.com/ankitects/anki/pull/749#issuecomment-686385112
2020-09-04 08:34:26 +10:00
Damien Elmes
bc60d233e5 rebuild_filtered_deck() and new_filtered() 2020-09-03 18:02:47 +10:00
Damien Elmes
6f7f5686e8 empty_filtered_deck() 2020-09-03 17:43:07 +10:00
Damien Elmes
f32d773e25 set_deck() 2020-09-03 17:42:46 +10:00
Damien Elmes
366c5c4774 log manual reschedule, but ignore the log entry in the stats 2020-09-02 17:56:23 +10:00