Commit graph

3724 commits

Author SHA1 Message Date
Luc Mcgrady
e16a49d376
Added: New reviewer config bool 2025-10-31 17:16:31 +00:00
Luc Mcgrady
b66a10ea26
Added: ShowQusestion TypedAnswer replacement 2025-10-31 12:38:21 +00:00
Luc Mcgrady
d47cb1bd55
PlayAudio -> PlayAVTags 2025-10-31 08:36:20 +00:00
Luc Mcgrady
8da0491ae5
Refactor PlayAudio 2025-10-31 08:28:39 +00:00
Luc Mcgrady
112f951a13
Fix: use HasField 2025-10-30 18:11:41 +00:00
Luc Mcgrady
7561bf8d6a
Added: Placeholder audio autoplay 2025-10-30 17:56:19 +00:00
Luc Mcgrady
386133743e
Added: Playaudio endpoint 2025-10-29 15:29:38 +00:00
Luc Mcgrady
45120aef14
Merge branch 'main' into svelte-reviewer-bottom 2025-10-27 21:08:43 +00:00
llama
739e41ce16
fix(launcher): apply cache settings to all uv invocations (#4404) 2025-10-27 19:42:45 +07:00
jcznk
23d0657a01
(UI polish) Filtered decks: replace maximumSize with sizePolicy in "Limit to" QSpinBox (#4398)
* Fix (UI) / Increase width of "Limit to" QSpinBox (Filtered Decks)

Increased the width from 60 px to 75 px, so that there is always enough space, even in the case of large numbers (e.g., 99999).

* Update filtered_deck.ui (replace maximumSize with sizePolicy)
2025-10-27 19:35:07 +07:00
user1823
62c950120c
Fix(launcher)/Exclude pre-release if a newer major_minor exists (#4388)
The current main produces a list like "25.09.2, 25.08b5, 25.07.5, 25.06b7, 25.02.7"
Here, 25.08b5 and 25.06b7 should be filtered out for the same reason this code filters out the older patch releases.
2025-10-27 19:26:09 +07:00
llama
a05c90cbce
fix: make uv use system certstore (#4386) 2025-10-27 19:19:28 +07:00
llama
23263caea2
feat: show launcher if different version was installed (#4381) 2025-10-27 19:08:40 +07:00
Luc Mcgrady
fc880259a8
Give main webview api access 2025-10-24 09:58:43 +01:00
Luc Mcgrady
b2fe07462a
Added: Context menu flag setting 2025-10-22 18:36:42 +01:00
Luc Mcgrady
2a92213118
Added: web.eval based refresh 2025-10-22 16:50:06 +01:00
Luc Mcgrady
46ce7d5b94
Added: Extract av tags 2025-10-21 17:45:24 +01:00
Luc Mcgrady
b0a8c341a1
add bodyclass field 2025-10-21 15:44:19 +01:00
Luc Mcgrady
6d62fcc096
next_card_data mediasrv function 2025-10-21 15:16:08 +01:00
Ranjit Odedra
d24d2e3394
Fix sync login dialog not using newly-set custom sync server #4395 (#4396)
* Fix sync login with custom server URL

Call update_network() before showing login dialog to ensure
the custom sync server URL is saved before attempting login.

Previously, the custom URL was only saved when closing the
preferences dialog, causing login to fail on first attempt.

Fixes #4395

* Add contributor info
2025-10-18 01:11:50 +03:00
nav1s
ab2fe98c54
feat: add tooltips for sidebar items in the browse cards window (#4385)
* feat: add tooltips for all of the sidabar items in the browse cards window

* fix: add name to CONTRIBUTORS
2025-10-13 09:27:40 +03:00
Luc Mcgrady
9550b127d9
Basic fix for shortcuts 2025-10-07 01:10:25 +01:00
Arold0
d11b74fd38
Fix fatal error when double clicking Add button (#4377)
Prevent adding a note that has already been added by checking if
note.id is set before attempting to add it. This fixes a race
condition when the Add button is clicked multiple times quickly.

Fixes #4376
2025-10-05 15:58:16 +03:00
Luc Mcgrady
c76f013b16
./check 2025-10-04 17:30:58 +01:00
Luc Mcgrady
aa42d87558
Added: NextCardData 2025-10-04 16:29:13 +01:00
Luc Mcgrady
b8678424cf
Merge remote-tracking branch 'upstream/main' into svelte-reviewer-bottom 2025-10-02 18:03:30 +01:00
Luc Mcgrady
32601abe1f
Added: Answer button times 2025-10-02 17:36:38 +01:00
user1823
1ba4512011
Fix launcher strings (#4375)
* Fix launcher strings

* Add prompt to press enter for installation

* Prompt should appear after ensuring that the OS is supported
2025-10-02 21:50:44 +07:00
matbe766
b2bb85b1a2
Avoid QProgressBar overflow by normalizing to kilobytes (fixes #4341) (#4354)
* qt: normalize large progress totals to kilobytes to avoid QProgressBar overflow (#4341); docs: update CONTRIBUTORS

* update

* revert: keep ProgressManager generic; no autoscaling in progress.py

* revert: keep ProgressManager generic; do scaling only in full sync

* Simplify sync progress update by scaling to KB, fix CONTRIBUTORS
2025-10-02 16:59:09 +07:00
Luc Mcgrady
986a56993a
sandbox iframe and use ts-page 2025-10-01 13:44:34 +01:00
llama
a842ba1498
replace more hardcoded strings in the launcher with translations (#4368) 2025-09-30 00:13:09 +10:00
Luc Mcgrady
654701da4d
reviewer-inner poc 2025-09-28 01:47:30 +01:00
Luc Mcgrady
ccdc391097
Remove html writable 2025-09-28 00:43:50 +01:00
Elias
f5f60548db
Fix browser search newlines and update CONTRIBUTORS (#4336) 2025-09-27 17:21:57 +10:00
llama
e0b0d0d19b
feat: add i18n to launcher (#4361)
* add anki_i18n and locale_config crates to launcher

* add launcher.ftl

* add tr to state

* replace most hardcoded strings with translations

* add support for `launcher` rustcfg to trim translations

* use marker structs to denote type of translations

* move underscores into generated code

* Update cargo-license, which may fix the license order issue (dae)
2025-09-27 16:58:46 +10:00
llama
c56e6e55ec
feat: show saved custom colours as options in fill tool colour picker on mobile (#4348)
* add GetCustomColours rpc method

* save colours as rgb instead of argb

* show saved custom colours as possible options in colour picker

this is primarily for mobile clients, as qt currently ignores this

* save custom colours on colour picker change (for desktop)
2025-09-25 06:34:27 +03:00
Damien Elmes
04a0b10a15 Launcher now checks Windows version
https://forums.ankiweb.net/t/issue-with-installing-anki-launcher-into-custom-folder/66355
2025-09-23 19:50:40 +10:00
Damien Elmes
0d31c6de4a Hard-code more mime types
If I had a dollar for all the weird and wonderful ways Windows systems
can be broken, I'd be a very rich man.

https://forums.ankiweb.net/t/the-gear-icon-in-the-anki-interface-is-not-displaying-properly/66274
2025-09-23 18:00:55 +10:00
Luc Mcgrady
f68f5284a5
Fix: showQuestion _showAnswerButton 2025-09-22 02:26:03 +01:00
Damien Elmes
48f774c711 Add Kazakh to language list 2025-09-21 22:45:11 +10:00
llama
80cff16250
fix: persist colour picker's custom palette in profile (#4326)
* add SaveCustomColours rpc method

* restore custom colour palette on editor init

* save custom colour palette on colour picker open and input

there doesn't seem to be an event fired when the picker is
cancelled/closed, so it's still possible for work to be lost

* save colours on `change` instead of `input`

`input` is supposed to be fired on every adjustment to the picker
whereas `change` is only fired when the picker is accepted, but qt
seems to treat both as the latter, so this is currently a no-op

* Store colors in the collection

One minor tweak to the logic while I was there: an invalid color no
longer invalidates all the rest.

---------

Co-authored-by: Damien Elmes <gpg@ankiweb.net>
2025-09-17 16:46:53 +10:00
jcznk
ec6f09958a
(UI polish) Improved margins in Card Browser's "Previewer" (#4337)
* Improved margins in Card Browser's "Preview" pane

* Alternate approach that looks good on Mac too

---------

Co-authored-by: Damien Elmes <gpg@ankiweb.net>
Co-authored-by: Damien Elmes <dae@users.noreply.github.com>
2025-09-17 15:30:22 +10:00
snowtimeglass
c2957746f4
Make timebox message translatable with flexible variable order (#4338)
* Make timebox message translatable with flexible variable order

Currently, the timebox dialog message is built from two separate strings,
each containing one variable:
"{ $count } cards studied in" + "{ $count } minutes."

As a result, translators cannot freely reorder the variables in their translations.

This change introduces a single string with both variables, allowing translators
to adjust the order for more natural expressions in their languages.

* Preserve old string for now

* Ensure message doesn't display over two lines

---------

Co-authored-by: Damien Elmes <gpg@ankiweb.net>
2025-09-17 15:13:59 +10:00
jcznk
4506ad0c97
Prevent clipping for QPushButton:default (#4323) 2025-09-14 20:44:16 +03:00
Damien Elmes
58deb14028 Ensure the newly-spawned terminal doesn't inherit the env var
It seems like the open call was leaking it into the newly spawned
process.

Follow-up fix to 2491eb0316
2025-09-04 16:18:11 +10:00
Damien Elmes
08431106da Exclude SSLKEYLOGFILE from Python
Closes #4308
2025-09-04 13:20:12 +10:00
Damien Elmes
b4b1c2013f Use the audio input device's preferred format
19f9afba64 broke recording for devices that
only support a single channel. Instead of hard-coding the values, we should
be using what the device prefers.

Apparently some devices may only support float formats, so conversion code
has been added to handle that case as well.

https://forums.ankiweb.net/t/cant-record-my-voice-after-upgrading-to-25-7-3/64453
2025-09-04 12:55:36 +10:00
Luc Mcgrady
d775efcb06
hide bottomweb 2025-09-03 23:40:37 +01:00
Luc Mcgrady
a08bca2673
dumb initial _showQuestion call 2025-09-03 23:24:45 +01:00
Luc Mcgrady
1ec9f4902e
Merge branch 'main' into svelte-reviewer-bottom 2025-09-03 22:08:20 +01:00