Commit Graph

1438 Commits

Author SHA1 Message Date
RumovZ
6d6cd87b8f Adjust frontend to normalized search syntax 2021-01-06 14:05:28 +01:00
Damien Elmes
d464d97f10
Merge pull request #891 from BlueGreenMagick/sidebar-delete-deck
Sidebar delete deck
2021-01-06 18:56:15 +10:00
Damien Elmes
25858c212c fix unhandled sync error
Thanks to Abdo:
https://forums.ankiweb.net/t/sync-anki-on-desktop-error/6299/2
2021-01-06 18:51:28 +10:00
BlueGreenMagick
adb8be92a0 format ask_delete_deck method more readable 2021-01-05 21:33:59 +09:00
BlueGreenMagick
95a62b20d3 delete deck in background 2021-01-05 21:33:59 +09:00
BlueGreenMagick
ada8c505f6 add BrowserDeleteDeck to ResetReason 2021-01-05 21:33:48 +09:00
BlueGreenMagick
2a1b6f90ae add delete_deck to sidebar context menu 2021-01-05 20:09:55 +09:00
BlueGreenMagick
f6f06986d0 seperate ask_delete_deck and _delete method 2021-01-05 20:09:47 +09:00
Damien Elmes
83136d2491
Merge pull request #890 from hgiesel/addonclose
Add closeWithCallback method to Addons dialog
2021-01-04 21:16:01 +10:00
Henrik Giesel
5f75d5694d Add silentlyClose method to Addons dialog 2021-01-04 11:52:00 +01:00
Damien Elmes
94fe1f898f
Merge pull request #888 from hgiesel/studiedtoday
Wrap studied_today in deckbrowser in div and span
2021-01-04 14:27:35 +10:00
Damien Elmes
f3fa9daae2 do tag rename and tag clearing in background; move logic to tags.py
Because the logic is in rename_tag() now, it means we create a
checkpoint even if the tag is orphaned. This is because currently
checkpointing is a GUI responsibility. In the future we need to introduce
multi-level undo, and should move responsibility for managing it
to the backend.
2021-01-04 14:14:39 +10:00
Damien Elmes
35ce1b0d29 types don't need quoting, as annotations is imported from future 2021-01-04 13:46:00 +10:00
Damien Elmes
03b10b0d44
Merge pull request #887 from BlueGreenMagick/deck-rename-checkpoint
don't set checkpoint when deck rename is cancelled
2021-01-04 13:44:28 +10:00
Henrik Giesel
0a121077de Wrap studied_today in div and span in deckbrowser 2021-01-03 14:54:44 +01:00
BlueGreenMagick
35d3d89705 escape tags when finding notes 2021-01-03 17:34:44 +09:00
BlueGreenMagick
46346d01a0 add rename_tag to browser sidebar contextmenu 2021-01-03 16:36:54 +09:00
BlueGreenMagick
53edeaf07f don't set checkpoint when deck rename is cancelled 2021-01-03 16:30:14 +09:00
Damien Elmes
b27259096e refreshing should happen outside of except clause 2021-01-03 10:09:42 +10:00
Damien Elmes
48ee35f6ad
Merge pull request #885 from Arthur-Milchior/hook_default_search
NF: Add a hook to change the default search from reviewer
2021-01-03 10:09:08 +10:00
Damien Elmes
e9c58382be
Merge pull request #884 from BlueGreenMagick/refresh-deckchooser
refresh deck browser after renaming deck in browser sidebar
2021-01-03 10:08:45 +10:00
Arthur Milchior
9166330618 NF: Add a hook to change the default search from reviewer
The goal here is to simplify my add-on which show a single card or the whole deck when the browser open
2021-01-02 19:49:11 +01:00
BlueGreenMagick
708d94714c refresh deck browser on renaming deck 2021-01-02 23:21:41 +09:00
BlueGreenMagick
1afbf4212e no need to call show() 2021-01-02 23:07:57 +09:00
Damien Elmes
5ec5a47708 merge separate vendor rules into single rule
Rather than creating a separate rule for each package, we can just
create a generic one and reuse it. Also switch to keyword arguments
in the resulting macros, as it's easier to read.
2021-01-02 11:14:00 +10:00
Henrik Giesel
450ff60815 Fix input type for _drawFlag 2021-01-01 14:14:50 +01:00
Henrik Giesel
f31b2312df Remove browsersel 2020-12-31 16:48:04 +01:00
Henrik Giesel
ffc40d8959 Replace browsersel with css-browser-selector in aqt files and add redirect 2020-12-31 16:47:20 +01:00
Henrik Giesel
ebb8171021 Add css-browser-selector to BAZEL build file in data/web/js/vendor 2020-12-31 16:41:31 +01:00
Henrik Giesel
4da27afba8 Remove hardcoded protobufjs 2020-12-31 16:17:46 +01:00
Henrik Giesel
2ba944640d Add build recipe to aqt/data/web/js 2020-12-31 16:15:25 +01:00
Damien Elmes
3d7b167947
Merge pull request #878 from hgiesel/updateQueue
Replace `_updatingQA` with promise-based `_updatingQueue`
2020-12-31 12:42:58 +10:00
Henrik Giesel
a7f17732b0 Replace () => void | Promise<void> with Callback typedef 2020-12-30 16:04:59 +01:00
Henrik Giesel
c6c52e06b4 Add types to reviewer.ts 2020-12-30 15:06:22 +01:00
Henrik Giesel
aaa30a5d49 Replace _updatingQa synchronization with promise-based _updatingQueue 2020-12-30 14:45:27 +01:00
Henrik Giesel
30b537c6e9 Put loads first in BUILD.bazel 2020-12-30 12:16:59 +01:00
Henrik Giesel
5f149a75a9 Remove jquery-ui from vendor folder 2020-12-30 12:12:49 +01:00
Henrik Giesel
ed8b12e1d6 Add redirect for jquery-ui 2020-12-30 12:08:12 +01:00
Henrik Giesel
173da02b2f Change include name for jquery ui in deckbrowser 2020-12-30 12:07:02 +01:00
Henrik Giesel
a22d303e2f Add jquery-ui to vendor/BUILD.bazel 2020-12-30 12:06:06 +01:00
Damien Elmes
eea6bf963b fix media attachment
insertHtmlRemovingInitialBR() was removed in a previous PR
2020-12-30 19:30:23 +10:00
Damien Elmes
9e1eaacc06 Revert "Merge pull request #873 from hgiesel/otherjsdeps"
This reverts commit 62600051ae, reversing
changes made to 88553acb0d.

- Standard graphs render incorrectly on latest version - the wrong number
of days are shown, and the grid lines look wrong. Any version after 0.8.3
seems to suffer from this problem.
- Pie graphs and stack graphs don't render - they are provided in separate
files, and plot.js in previous Anki versions has them included in the one
file. To maintain compatibility with add-ons, we'd need to create a single
file as before, instead of importing multiple files.

If the above issues are fixed I'd be happy to merge this in again, but
as the old graphs are on the way out, it's probably not worth the effort.
2020-12-30 14:13:52 +10:00
Damien Elmes
bdfdbda432
Merge pull request #875 from stayingpeachy/help-link
Update help link
2020-12-30 13:52:50 +10:00
Damien Elmes
1ee08c049e
Merge pull request #874 from hgiesel/jqueryreview
Update _updateQa
2020-12-30 13:51:54 +10:00
Meredith
c7e64b5fa0
update help link
old help link was outdated
2020-12-29 11:09:28 -05:00
Henrik Giesel
ff4780e005 Satisfy prettier 2020-12-29 14:45:20 +01:00
Henrik Giesel
7ef41ce573 Hook functions may also return void 2020-12-29 14:01:09 +01:00
Henrik Giesel
8f39c746d9 Replace ts-ignore with declare var 2020-12-29 13:43:47 +01:00
Henrik Giesel
53f77346d8 Fix typing of reviewer hooks 2020-12-29 13:42:30 +01:00
Henrik Giesel
ecdb06cbd6 Use async/await syntax in _updateQa 2020-12-29 13:34:39 +01:00
Henrik Giesel
f90b6b3430 Remove plot.js 2020-12-29 12:16:50 +01:00
Henrik Giesel
a6319326a9 Redirect references to old plotting library version 2020-12-29 12:15:46 +01:00
Henrik Giesel
ec9b4aa273 Use new version of plotting library in stats.py 2020-12-29 12:13:25 +01:00
Henrik Giesel
ef9b52f861 Copy flot file to vendor directory 2020-12-29 12:11:28 +01:00
RumovZ
95b4e4cc84 Make function names more explicit and add docs 2020-12-29 11:18:49 +01:00
Damien Elmes
666d847a0a
Merge pull request #856 from hgiesel/jquery
Update jQuery from 1.12.4 to 3.5.1, include in Bazel build process
2020-12-29 10:00:33 +10:00
Damien Elmes
d8778da3e8 fix legacy js remapping
Thanks to Henrik for catching it.
2020-12-29 09:57:34 +10:00
Henrik Giesel
083cd36e55 Fix formatting 2020-12-28 14:56:41 +01:00
Henrik Giesel
202fd6ffa5 Add mapping in redirectWebExport for new jquery file 2020-12-28 14:52:44 +01:00
Henrik Giesel
98407c3fea Avoid building jquery to its own directory 2020-12-28 14:18:07 +01:00
Henrik Giesel
37dcdcc4c0 Rename references from vendor/jquery.js to vendor/jquery/jquery.min.js 2020-12-28 13:16:12 +01:00
Henrik Giesel
0c95cb3514 Remove jquery from Anki repo and replace with Bazel BUILD 2020-12-28 13:16:12 +01:00
Damien Elmes
904419b052
Merge pull request #869 from Arthur-Milchior/trip_new_field_name
New field name checks are more specific
2020-12-28 16:53:32 +10:00
Damien Elmes
7397b9c0c4
Merge pull request #858 from hgiesel/editorwhitespace
Remove placeholder `<br>`s in empty fields in editor
2020-12-28 16:50:23 +10:00
Arthur Milchior
89ffbe0fbb Reject field name with : { or }
More than {{ is acceptable to start a tag, which means that `{{{Foo}}` won't be interpreted as "the content of `Foo`"
and should be rejected. For the sake of clarity and parsing, I suspect that those symbol should be rejected elsewhere
too.

Similary `{{Foo}}}` won't be interpreted as "Show the content of field `Foo}`" even if this field exists, so it's better
to reject `}`. It's clearly necessary to reject "}}" inside the field name, rejecting "}" seems easier to explain and
avoid future unexpected problem if the templates change.

The ":" are used to separate filters, and rejecting it in field name would ensure that there is no ambiguity.
2020-12-28 07:33:26 +01:00
Arthur Milchior
af6cb6612e Rejects field names starting with #, ^ and / 2020-12-28 06:23:49 +01:00
Arthur Milchior
3be90c444d New field are stripped
Otherwise, you can rename "Back" to " Front" and then get unexpected result
2020-12-28 06:18:42 +01:00
Damien Elmes
623c5b305a
Merge pull request #865 from hgiesel/configaction
Open AddonsDialog via dialog manager
2020-12-28 10:36:02 +10:00
Damien Elmes
910e5d58f6
Merge pull request #862 from hgiesel/reviewerbottombuttons
Hide stats buttons in reviewer bottom bar, if window width is too small
2020-12-28 10:33:14 +10:00
Henrik Giesel
44fb7e3dc2 Open AddonsDialog via dialog manager 2020-12-26 18:07:37 +01:00
Henrik Giesel
d6a090e1a8 Hide "Edit" and "More" buttons in reviewer bottom bar, if window width is too small 2020-12-26 15:50:32 +01:00
Damien Elmes
38614ab047 winrt 1.0.20239.1 isn't available for python 3.9 2020-12-23 20:31:13 +10:00
RumovZ
b712053c06 Norm search 2020-12-22 11:08:47 +01:00
Damien Elmes
32093bb428 further decrease default q/a fade time 2020-12-22 13:02:07 +10:00
Damien Elmes
0a633160c5 add video driver enum; allow setting angle+software on mac in prefs 2020-12-22 13:01:06 +10:00
Damien Elmes
212b251334 tag the wheels as manual so test ... doesn't build them 2020-12-21 19:28:47 +10:00
Damien Elmes
c18ea8ef78
Merge pull request #859 from hgiesel/tabindex2
Consider removing special handling of Shift+Tab in Editor on macOS
2020-12-21 18:38:35 +10:00
Damien Elmes
256db85577 work around --text-fg ending up in fields
https://forums.ankiweb.net/t/strange-behaviour-in-the-html-editor/5796/4
2020-12-21 17:56:20 +10:00
Damien Elmes
64173b5c02 .prettierrc needs to be in web/, as it's needed for sass as well 2020-12-21 17:05:31 +10:00
Henrik Giesel
2ae4d14bc5 Focus special handling of Shift+Tab on macOS 2020-12-21 08:00:47 +01:00
Damien Elmes
7d1c8c29f9 add a small delay before terminating recording
https://forums.ankiweb.net/t/anki-crashes-periodically-after-clicking-record-audio-button/5824/12
2020-12-21 16:37:28 +10:00
Damien Elmes
729293f5e3 remove voice recording fixme 2020-12-21 16:13:32 +10:00
Damien Elmes
4e1d57e2d2 check formatting of .js files in aqt/data
mathjax.js did not match //ts:format output
2020-12-21 16:10:59 +10:00
Damien Elmes
65a35fef55 link .prettierrc into qt/aqt/data/web/js
So automatic formatting in VS Code matches CI format
2020-12-21 16:09:06 +10:00
Damien Elmes
0bc4ea9c4d ask users to report if PyAudio works better for them 2020-12-21 16:04:41 +10:00
Damien Elmes
019a65efc1 drop QtRecorder driver; rename existing 2020-12-21 15:02:22 +10:00
Damien Elmes
68390eccde fail gracefully in winrt voice list fails to load
If no voices are installed, get_all_voices() throws a "file not found"
error.
2020-12-21 14:29:14 +10:00
Damien Elmes
f41d523cb8
Merge pull request #857 from hgiesel/editorspan
Wrap field name in editor in a span
2020-12-21 12:16:22 +10:00
Henrik Giesel
502049025a Remove special treatment of empty fields in editor ts 2020-12-21 03:13:31 +01:00
Ryan Aird
a30064d5e9 Make RT import statement conditional, fix formatting, ignore WinRT for type checking 2020-12-20 19:43:09 -06:00
Henrik Giesel
9b2de395e1 Wrap field name in editor in span 2020-12-20 23:40:51 +01:00
Ryan Aird
9a0b112a0f Lower default rank for non-RT voices and restrict to Windows 10 October 2018 or greater 2020-12-19 20:10:23 -06:00
Ryan Aird
56703e5f3a WinRT TTS API support 2020-12-19 19:29:34 -06:00
Damien Elmes
165007180a add winrt for TTS work
https://github.com/ankitects/anki/pull/855

Also update psutil version
2020-12-20 10:54:57 +10:00
Damien Elmes
e99a7c0f90 tweak naming and move method into col.decks 2020-12-20 10:26:16 +10:00
Damien Elmes
c739b9782e
Merge pull request #854 from k12ish/master
Add method `card_count_from_did()`
2020-12-20 10:17:25 +10:00
k12ish
cc0572a385 Added type hints, renamed kwarg 2020-12-19 18:12:58 +00:00
k12ish
ef1f58c8b6 Added method 2020-12-19 17:59:07 +00:00
abdo
e92eeda040 Strip isolation characters from app link
Reported in https://forums.ankiweb.net/t/bug-link-in-about-window/5894
2020-12-18 23:53:44 +03:00
Damien Elmes
3840686241 pin pyaudio and qtmultimedia 2020-12-18 19:57:19 +10:00
Damien Elmes
038f0a10ec expose recording driver in preferences (at least for now) 2020-12-18 19:49:17 +10:00
Damien Elmes
e7d9056acd write .wav in background 2020-12-18 19:24:53 +10:00
Damien Elmes
93eccd183f leave iodevice alone after calling .stop()
Docs say it should not be accessed, and it fails on Linux.
2020-12-18 19:14:24 +10:00
Damien Elmes
dc5ce3b9a2 experiment with lower-level QAudioInput
Allows us to discard the start of the recording like PyAudio, instead
of just muting it.
2020-12-18 18:59:10 +10:00
Damien Elmes
643e875342 add back pyaudio as an optional alternative 2020-12-18 16:52:00 +10:00
Damien Elmes
af92bb5e93 exhaustiveness checks on literals are now possible with the move to py38 2020-12-18 16:50:55 +10:00
Damien Elmes
32b6e8e198 document ANKI_PROFILE_CODE and add bazel command to run snakeviz 2020-12-17 12:03:24 +10:00
Damien Elmes
cd31780668 explicitly set sample rate and channels
Windows sounds awful by default on a machine here.
2020-12-16 20:18:13 +10:00
Damien Elmes
3a250f5238 formatting & mypy fix 2020-12-16 19:51:46 +10:00
Damien Elmes
1114ca75df update recording time more frequently; remove print statement 2020-12-16 19:45:08 +10:00
Damien Elmes
ecb7c1482f use QtMultimedia for recording instead of PyAudio
The unmute-on-first-duration-change approach is to try to prevent
clicks/pops that can happen at the start of recordings. If it doesn't
solve the problem, we may need to drop down to the lower-level
QAudioInput().

Closes https://github.com/ankitects/help-wanted/issues/23

May fix https://forums.ankiweb.net/t/anki-crashes-periodically-after-clicking-record-audio-button/5824,
which I suspect was caused by processEvents()
2020-12-16 19:33:25 +10:00
Damien Elmes
9439dfb98d
Merge pull request #850 from cecini/warn
fix float to int conversion DeprecationWarning
2020-12-16 15:40:35 +10:00
Damien Elmes
a61f3bbc48 fix some warnings on startup 2020-12-16 15:38:24 +10:00
Damien Elmes
e3c9502b46 ignore pickle.dumps() warning 2020-12-16 15:38:11 +10:00
Damien Elmes
17a221dfa0 bump pickle proto to v4; change column type to blob 2020-12-16 15:38:07 +10:00
Damien Elmes
8e7e01ccfd don't catch DeprecationWarnings in the GUI 2020-12-16 14:25:11 +10:00
Damien Elmes
24e69e3803
Merge pull request #851 from hgiesel/cardtypeprobs
Remove unicode isolation from card type names
2020-12-16 13:37:44 +10:00
Henrik Giesel
f06fd23319 Remove unicode isolation from card type names 2020-12-16 03:09:33 +01:00
Damien Elmes
53276b3044 symlink generated .py/.pyi into tree to fix Python code completion 2020-12-16 11:36:42 +10:00
cecini
d2ae874d9e fix float to int conversion DeprecationWarning 2020-12-15 13:10:12 +00:00
Damien Elmes
6d596c8fc9 avoid distributing BUILD.bazel in js/vendor 2020-12-12 10:35:01 +10:00
Damien Elmes
13d66b22f4 remove unwanted leading '/' in wheel records 2020-12-10 23:02:18 +10:00
Damien Elmes
0cbb60169c simplify wheel building 2020-12-10 20:27:21 +10:00
Damien Elmes
330d13d320 set the minimum ease to 131% for now
https://forums.ankiweb.net/t/force-sync-triggers-2-1-34-ease-fixup-behaviour/5632/
2020-12-10 15:46:22 +10:00
Henrik Giesel
0ad3c062bb Switch back to fadeTo rather than fadeIn/fadeOut 2020-12-09 14:19:45 +01:00
Damien Elmes
fcdc51aace add explicit entry point to start Anki; update docs 2020-12-07 11:22:31 +10:00
L.M.Sherlock
994f423466
Update about.py 2020-12-05 14:11:47 +08:00
Henrik Giesel
112895f04f Fix fields_did_rename_field 2020-12-01 02:28:10 +01:00
Damien Elmes
e38cecd88a update sync status after profile open sync
https://forums.ankiweb.net/t/why-is-my-sync-button-blue/2078/15
2020-12-01 10:20:55 +10:00
Damien Elmes
2c38ccad98 export mathjax.js 2020-11-30 15:15:37 +10:00
Damien Elmes
2e193c3e5b update sync color at end of sync
https://forums.ankiweb.net/t/why-is-my-sync-button-blue/2078/13
2020-11-30 10:14:43 +10:00
Damien Elmes
f1fbb9d82f update about
https://forums.ankiweb.net/t/may-i-trouble-you-to-add-my-name-on-the-about-page/5433/2
2020-11-29 12:00:16 +10:00
abdo
a8e4a58139 Fix UnboundLocalError in profiler code 2020-11-25 04:54:41 +03:00
Damien Elmes
d85d0b88a1
Merge branch 'master' into init-lang 2020-11-22 16:10:49 +10:00
Damien Elmes
0b848eae56 update remaining python format strings to Fluent 2020-11-22 14:57:53 +10:00
abdo
7d7745fbb5 Set up default language before loading profile
We can make more strings translatable this way.
2020-11-21 05:29:23 +03:00
Damien Elmes
e23d40e850
Merge pull request #823 from RumovZ/rework-search-parser
Rework search parser
2020-11-20 16:22:12 +10:00
Damien Elmes
f7fcdca54c
Merge pull request #833 from abdnh/setdeflang-fix
Initialize translation system to default language on first run
2020-11-20 16:11:13 +10:00
abdo
36319f1291 Initialize translation system to default language on first run
The setlang screen was trying to use the translation system before
we initialize it.
2020-11-20 06:18:51 +03:00
abdo
e3b4802f47 Fix description of exporters
Description broke yet again with the full migration to Fluent
2020-11-19 23:52:46 +03:00
abdo
f67e319f1f Strip isolation characters from more strings 2020-11-18 18:03:04 +03:00
Damien Elmes
c1d15a8e1f quieten MathJax 2020-11-18 21:34:44 +10:00
RumovZ
c185fb966b Merge branch 'master' into rework-search-parser
Conflicts:
    rslib/src/search/sqlwriter.rs
2020-11-18 09:04:04 +01:00
Damien Elmes
98a4a1927a formatting fix 2020-11-18 13:48:23 +10:00
Damien Elmes
c1e6149a1b fix browser updateTitle() 2020-11-18 13:40:21 +10:00
Damien Elmes
1c5f94d46f strip out unused gettext refs 2020-11-18 13:22:51 +10:00
Damien Elmes
ffa26fe4bc fix remaining _() references; remove unused imports 2020-11-18 12:43:46 +10:00
Damien Elmes
ba336d5de3 update multi-line _() references 2020-11-18 11:32:22 +10:00
Damien Elmes
b49805fef5 more ngettext references 2020-11-18 10:52:13 +10:00
Damien Elmes
1255e7530c update some qt ngettext references 2020-11-18 09:22:27 +10:00
Damien Elmes
e527d31dfc begin plural string migration 2020-11-17 23:29:08 +10:00
Damien Elmes
2453e5c488 update temporary val="%s" references to standard ftl 2020-11-17 22:00:44 +10:00
Damien Elmes
11dca54471 update designer references 2020-11-17 19:55:18 +10:00
Damien Elmes
9d1b6231d7 merge pylib references 2020-11-17 19:23:06 +10:00
Damien Elmes
8fcfdb57ab fix the preview shortcut references 2020-11-17 17:51:57 +10:00
Damien Elmes
6418993840 merge bulk of qt/ - designer files still to do 2020-11-17 17:42:43 +10:00
Damien Elmes
f65f101a16
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
ed3583b6fe
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
358d0f957e 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
07c183d2c2 Switch from jQuery pre 3.0.0 pseudo promises to ES6 promises 2020-11-16 01:09:59 +01:00
Henrik Giesel
435ecc3ae8 Satisfy formatter 2020-11-15 21:40:59 +01:00
Henrik Giesel
a7b5a7efe1 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
4229f21084 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
80232f4d33 Load require package in Mathjax 2020-11-15 13:58:51 +01:00
Damien Elmes
9f97baa3e2 Merge branch 'mathjax3' 2020-11-15 20:24:50 +10:00
Damien Elmes
8a80ffe53a add rule to copy mathjax from node_modules 2020-11-15 20:22:28 +10:00
Damien Elmes
9feccc785f ignore incorrect clock in dev mode 2020-11-15 18:29:16 +10:00
RumovZ
8d24fb89bf Update frontend search escapes to new parsing 2020-11-14 20:37:40 +01:00
Henrik Giesel
6104ea26fb Remove @types/mathjax as it is for MathJax 2 2020-11-14 14:14:25 +01:00
Henrik Giesel
aa44d64513 Add moving MathJax3 into mathjax directory to build process 2020-11-14 14:14:25 +01:00
Henrik Giesel
6d4ff1212d Rip out MathJax 2 and setup MathJax 3 environment 2020-11-14 14:14:25 +01:00
Henrik Giesel
c5cfbfa1ab 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
5bb3d7c114 format_fix -> format; rename svelte-check for consistency 2020-11-12 20:19:32 +10:00
Damien Elmes
81b9a3194e fix some unwanted leading space in i18n keys 2020-11-12 08:55:26 +10:00
Damien Elmes
8d4df820cc 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
f8f2839b55 add pyqtwebengine to wheel deps and bump minimum required pyqt 2020-11-11 10:33:49 +10:00
Damien Elmes
6e3f971ae1 handle packaged pylib buildinfo.txt; drop aqt buildinfo 2020-11-11 10:33:49 +10:00
Damien Elmes
e99c0dbe15
Merge pull request #793 from nwwt/object-audio-tags-support
Audio & object tag support
2020-11-11 10:33:31 +10:00
Andreas Reis
54f51da944 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
e68a40f13e 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
c2901e4859 Add hooks for filtering media. 2020-11-09 02:12:23 -08:00
Damien Elmes
20f0c887eb
Merge pull request #814 from k12ish/master
Improve compatibility with graphics pad/touchscreen
2020-11-09 19:42:41 +10:00
Damien Elmes
b38218f7c6
Merge pull request #813 from RumovZ/fix-search-combos
Fix clicking filters with keyboard modifiers
2020-11-09 19:42:13 +10:00
k12ish
b592e20a3c 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
557616f36a Fix clicking filters with keyboard modifiers 2020-11-08 11:05:11 +01:00
Damien Elmes
37695da713 fix missing QAudioDeviceInfo on macOS 2020-11-06 12:01:37 +10:00
Damien Elmes
ecab88d8c5
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
c42325cb49 fix aqt version requirement; use py3 instead of cp38 tag 2020-11-05 20:25:08 +10:00
Damien Elmes
29ae7480f2 cleanups 2020-11-05 11:21:13 +10:00
Damien Elmes
ecfeb71195 fix tests on Linux 2020-11-04 21:39:41 +10:00
Damien Elmes
0d354da93a move aqt_data into source folder; implement wheel building 2020-11-04 12:14:03 +10:00
Soren Bjornstad
7277e9485a 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
45ed97c56c rspy -> pylib/rsbridge 2020-11-02 15:21:12 +10:00
Damien Elmes
99140f6023 always return str in aqt_data_folder() 2020-11-01 14:38:13 +10:00
Damien Elmes
aea0a6fcc6 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
6b0b3fcd6a
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
8ef6420cdb
Merge pull request #804 from hgiesel/mime
Set MIME type for javascript files
2020-10-29 20:54:03 +10:00
Henrik Giesel
70aed820da Set MIME type for javascript files 2020-10-26 23:32:38 +01:00
RumovZ
aaf5770db9 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
6d68bfa594 Use replace instead of strip
https://github.com/ankitects/anki/pull/801
2020-10-22 15:21:30 +03:00
abdo
55f1d3773f 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
3d95d9e3c6
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
fe5c4a2593
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
930c264399
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
669769a5a2
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
f947a65ac5
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
5fc841de85
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
9e44b2be7f Turn update_search into its own method 2020-10-19 21:07:29 +02:00
Henrik Giesel
450e85d36d Add search prompt for setupSearch 2020-10-19 20:57:19 +02:00
Henrik Giesel
54dc97825e Add uses of search_for 2020-10-19 20:51:36 +02:00
Henrik Giesel
2d65e81b13 Add search_for method 2020-10-19 20:37:17 +02:00
abdo
5677a67025 Escape double quotes in search 2020-10-19 01:06:41 +03:00
abdo
d91f2a27b2 Remove unused code 2020-10-15 16:14:14 +03:00
abdo
236a6071d4 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
3531ae089a Set card to None in reviewer cleanup 2020-10-14 12:56:47 +03:00
abdo
44e3ef690f Don't apply suggestion when no suggestion list is shown 2020-10-14 05:00:24 +03:00
Damien Elmes
06292a45f3 formatting fix
formatting fix
2020-10-14 10:35:57 +10:00
Damien Elmes
02ceab55c0
Update __init__.py 2020-10-14 09:45:34 +10:00
Andreas Reis
21f072a666 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
cd0523712f Fix typing warning 2020-10-12 11:01:15 +03:00
abdo
7c1b855709 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
82993d16fd 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
f75e3e6486
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
1aa29f2e79
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
aad6785bab
Merge branch 'master' into opus-audio 2020-10-12 12:32:43 +10:00
Damien Elmes
153c8aed27 formatting fixes 2020-10-12 12:17:02 +10:00
Damien Elmes
a4a461c17b
Merge pull request #782 from johan456789/patch-1
fix outdated help site
2020-10-12 12:15:46 +10:00
Henrik Giesel
591d3738d1 Add fields_did_rename_field and fields_did_remove_field hooks 2020-10-11 19:16:30 +02:00
abdo
709e789ade Decode pasted URLs 2020-10-11 16:46:46 +03:00
Piotr Kubowicz
ed11f8e9d6 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
727ddd74b6 fixes for latest mypy 2020-10-10 19:02:59 +10:00
abdo
4f5fdc192a 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
3708279f31 Merge commit 'refs/pull/590/head' of https://github.com/ankitects/anki into sidebar2 2020-10-10 04:11:54 +03:00
johan456789
06f1aeb052 fix help url paths 2020-10-10 00:38:07 +08:00
johan456789
91d3ded689 remove never used link 2020-10-10 00:07:34 +08:00
abdo
7b392dd9d4 Escape ampersands in note type names too 2020-10-07 15:26:32 +03:00
abdo
994d167fdb Fix 'Filter' menu item in deck filters not working 2020-10-07 14:32:21 +03:00
abdo
176126417e Escape ampersands in filter menu
Fixes ankitects/help-wanted#20
2020-10-07 13:44:33 +03:00
Damien Elmes
301c9587d1
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
7460dfc830 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
234e03d44d 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
a08d83deda Add focus class which mimics built-in focus 2020-10-05 22:18:46 +02:00
Damien Elmes
bf72773531 fix IndexError when switching notetypes
Closes #780
https://github.com/ankitects/anki/pull/780
2020-10-05 13:33:54 +10:00
Damien Elmes
8fa865e8f4
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
d03cabf9a8
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
f569ba6e63
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
e9ca17b1b3 Turn _class into rightside boolean flag 2020-10-04 23:03:37 +02:00
Henrik Giesel
e8c80174eb Refactor out theclass assignment 2020-10-04 22:51:34 +02:00
Henrik Giesel
4c255b0289 Add editor_did_init_left_buttons gui_hook 2020-10-04 22:50:02 +02:00
Henrik Giesel
bf29fb8e83 Make icon Optional explicitly in function signature 2020-10-04 22:42:28 +02:00