Transfer-Laufwerke auch aus der Optionsmaske heraus verwalten

Wer merkt, dass ihm ein Laufwerk fehlt, merkt es genau dort - beim Blick auf
"Transfer-Laufwerke: keine". Bisher schickte der Hinweistext ihn dafuer zwei
Ebenen zurueck in die Uebersicht. Jetzt oeffnet  v  die Verwaltung direkt aus
der Maske, und beim Zurueckkommen steht der Balken auf der Auswahlzeile - also
da, wo man das eben Angelegte gleich anhaken will.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
duffyduck
2026-08-03 13:32:28 +02:00
co-authored by Claude Opus 5
parent e88a80cb25
commit 2c2ed79c76
2 changed files with 12 additions and 4 deletions
+11 -3
View File
@@ -220,8 +220,8 @@ def _options(win, guest, spec):
"das Austauschlaufwerk da.",
"resume": "Snapshots mit Arbeitsspeicher laufen genau dort weiter, wo "
"sie standen - ohne Crash-Recovery.",
"transfers": "Vorbereitete Austauschmedien. Anlegen und befuellen "
"in der Uebersicht mit v .",
"transfers": "Vorbereitete Austauschmedien. Mit v anlegen und "
"befuellen, mit Enter auswaehlen.",
"spice": "Zweiter Zugang ueber remote-viewer. Achtung: vertraegt "
"sich nicht mit geladenem Arbeitsspeicher.",
"usb": "Ein USB-Geraet vom eigenen Rechner in den Gast reichen - "
@@ -236,6 +236,7 @@ def _options(win, guest, spec):
for offset, line in enumerate(keybar(
width, [("Pfeile", "Auswaehlen", "Wahl"),
("Enter/Leer", "Aendern", "Aendern"),
("v", "Laufwerke verwalten", "Laufw."),
("F10", "Anlegen", "Anlegen"),
("q", "Abbrechen", "Abbr.")])):
fill(win, height - 2 + offset, " " + line, curses.color_pair(C_FOOTER))
@@ -243,7 +244,14 @@ def _options(win, guest, spec):
key = read_key(win)
current_key, _label, kind, choices = rows[index]
if key == curses.KEY_UP:
if key in ("v", "V"):
# Von hier aus verwalten statt zwei Ebenen zurueckzugehen: wer
# merkt, dass ihm ein Laufwerk fehlt, merkt es genau an dieser
# Stelle. Danach steht der Balken auf der Auswahlzeile.
transfer_ui.screen(win, browse=_browse_transfer)
index = next((i for i, r in enumerate(rows) if r[2] == "transfers"),
index)
elif key == curses.KEY_UP:
index = (index - 1) % len(rows)
elif key == curses.KEY_DOWN:
index = (index + 1) % len(rows)