Merge branch 'main' into editor-3830

This commit is contained in:
Abdo 2025-05-24 03:28:49 +03:00
commit 0ace032dc6
10 changed files with 15 additions and 10 deletions

@ -1 +1 @@
Subproject commit d2e9201d62b906b029570931e9567fe8cf1889b6
Subproject commit ca04132a8f82296f3e0ea22b74bb4221e1d11d3f

View file

@ -85,10 +85,10 @@ preferences-third-party-description = Third-party services are unaffiliated with
## URL scheme related
preferences-url-schemes = URL Schemes
preferences-url-scheme-prompt = Allowed { preferences-url-schemes } (space-separated):
preferences-url-scheme-prompt = Allowed URL Schemes (space-separated):
preferences-url-scheme-warning = Blocked attempt to open `{ $link }`, which may be a security issue.
If you trust the deck author and wish to proceed, you can add `{ $scheme }` to your allowed { preferences-url-schemes }.
If you trust the deck author and wish to proceed, you can add `{ $scheme }` to your allowed URL Schemes.
preferences-url-scheme-allow-once = Allow Once
preferences-url-scheme-always-allow = Always Allow

@ -1 +1 @@
Subproject commit 5b855702dfe191e06cc3fbef4b684acc094500ec
Subproject commit f35acabb46dc9197a62c47eb7f2ca062628b1d94

View file

@ -87,7 +87,7 @@ except AttributeError:
appVersion = _version
appWebsite = "https://apps.ankiweb.net/"
appWebsiteDownloadSection = "https://apps.ankiweb.net/#download"
appDonate = "https://apps.ankiweb.net/support/"
appDonate = "https://docs.ankiweb.net/contrib.html"
appShared = "https://ankiweb.net/shared/"
appUpdate = "https://ankiweb.net/update/desktop"
appHelpSite = HELP_SITE

View file

@ -222,9 +222,11 @@ def show(mw: aqt.AnkiQt) -> QDialog:
"🦙 (siid)",
"Mukunda Madhav Dey",
"Adnane Taghi",
"Anon_0000",
)
)
allusers = [user.replace(" ", " ") for user in allusers]
abouttext += "<p>" + tr.about_written_by_damien_elmes_with_patches(
cont=", ".join(allusers) + f", {tr.about_and_others()}"
)

View file

@ -339,8 +339,11 @@ export function renderForgettingCurve(
1,
);
let text = tooltipText(d);
const desiredRetentionPercent = desiredRetention * 100;
if (y2 >= lineY - 10 && y2 <= lineY + 10) {
text += `<br>${tr.cardStatsFsrsForgettingCurveDesiredRetention()}: ${desiredRetention.toFixed(2)}`;
text += `<br>${tr.cardStatsFsrsForgettingCurveDesiredRetention()}: ${
desiredRetentionPercent.toFixed(0)
}%`;
}
showTooltip(text, x1, y1);
})

View file

@ -303,7 +303,7 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
/>
<HandleLabel>
{#if isSizeConstrained}
{#if isSizeConstrained && !shrinkingDisabled}
<span>{`(${tr.editingDoubleClickToExpand()})`}</span>
{:else}
<span>{actualWidth}&times;{actualHeight}</span>

View file

@ -116,7 +116,6 @@ function initCanvas(): fabric.Canvas {
modifiedPolygon(canvas, evt.target);
undoStack.onObjectModified();
}
saveNeededStore.set(true);
});
canvas.on("text:editing:entered", function() {
textEditingState.set(true);

View file

@ -4,7 +4,7 @@
import { fabric } from "fabric";
import { get } from "svelte/store";
import { opacityStateStore } from "../store";
import { opacityStateStore, saveNeededStore } from "../store";
import type { Size } from "../types";
export const SHAPE_MASK_COLOR = "#ffeba2";
@ -244,6 +244,7 @@ const setShapePosition = (
}
object.setCoords();
saveNeededStore.set(true);
};
export function enableUniformScaling(canvas: fabric.Canvas, obj: fabric.Object): void {

View file

@ -117,7 +117,7 @@ class UndoStack {
private push(): void {
const entry = JSON.stringify(this.canvas?.toJSON(["id"]));
if (entry === this.stack[this.stack.length - 1]) {
if (entry === this.stack[this.index]) {
return;
}
this.stack.length = this.index + 1;