diff --git a/ftl/core/deck-config.ftl b/ftl/core/deck-config.ftl
index 1e193dc04..3c8e0d0c1 100644
--- a/ftl/core/deck-config.ftl
+++ b/ftl/core/deck-config.ftl
@@ -383,6 +383,7 @@ deck-config-which-deck = Which deck would you like to display options for?
deck-config-updating-cards = Updating cards: { $current_cards_count }/{ $total_cards_count }...
deck-config-invalid-parameters = The provided FSRS parameters are invalid. Leave them blank to use the default parameters.
+deck-config-manual-parameter-edit-warning = The parameters should only be generated with the optimize button. Manually editing them is heavily advised against.
deck-config-not-enough-history = Insufficient review history to perform this operation.
deck-config-must-have-400-reviews =
{ $count ->
diff --git a/ts/routes/deck-options/ParamsInput.svelte b/ts/routes/deck-options/ParamsInput.svelte
index d046c5e84..9917cbf64 100644
--- a/ts/routes/deck-options/ParamsInput.svelte
+++ b/ts/routes/deck-options/ParamsInput.svelte
@@ -46,6 +46,15 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
input.value = stringValue;
}
}
+
+ const UNLOCK_EDIT_COUNT = 3;
+ let rightClickCount = 0;
+ function onRightClick() {
+ rightClickCount += 1;
+ if (rightClickCount == UNLOCK_EDIT_COUNT) {
+ alert(tr.deckConfigManualParameterEditWarning());
+ }
+ }
@@ -56,6 +65,8 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
on:blur={update}
class="w-100"
placeholder={render(defaults)}
+ disabled={rightClickCount < UNLOCK_EDIT_COUNT}
+ on:contextmenu={onRightClick}
>