Close the gap between the flashcards study screen and the mockup
Add real session-history navigation (Previous/Next/Shuffle), compact
side panels, and a segmented progress row to match the mockup layout.
Flashcards now opens straight into Study, with library management
moved into the Options menu ("Manage Flashcards") and Export hidden
from the UI (Import stays). Shuffle is backed by a real, due-before-new
randomized pick on the backend, not a decorative toggle.
This commit is contained in:
@@ -95,7 +95,7 @@ func current_study_day_start_utc() -> String:
|
||||
|
||||
# ---------- Next card / study session ----------
|
||||
|
||||
func request_next_card(deck_id: String, exclude_ids: Array, study_day_start_utc: String) -> void:
|
||||
func request_next_card(deck_id: String, exclude_ids: Array, study_day_start_utc: String, shuffle: bool = false) -> void:
|
||||
if loading_next or not AuthState.can_send_authenticated_request():
|
||||
next_card_failed.emit("Login is required to study flashcards.")
|
||||
return
|
||||
@@ -103,7 +103,8 @@ func request_next_card(deck_id: String, exclude_ids: Array, study_day_start_utc:
|
||||
var payload := {
|
||||
"deckId": deck_id,
|
||||
"excludeCardIds": exclude_ids,
|
||||
"studyDayStartUtc": study_day_start_utc
|
||||
"studyDayStartUtc": study_day_start_utc,
|
||||
"shuffle": shuffle
|
||||
}
|
||||
var error := next_request.request(
|
||||
"%s/study/next" % api_url, _headers(), HTTPClient.METHOD_POST, JSON.stringify(payload))
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
uid://46eks1fy86s4
|
||||
Reference in New Issue
Block a user