Wide-glyph damage expansion, screenshot dir in settings, install command on releases
- SafeBackend now tracks wide cells and explicitly overwrites the right half when a wide glyph is replaced by a narrow one — the case ratatui's diff cannot see (both buffers hold a space there) and the likely remaining source of ghost glyphs - Settings dialog: new 'Skärmbilder' row edits screenshot_dir (saved to config.toml, applied immediately) - Release workflow writes an install one-liner (arch-detecting curl) into the release body and updates it on every build - Integration suite: 50/50 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -396,10 +396,10 @@ def main():
|
||||
text = disp.frame_text(timeout=5.0, contains="Tema:")
|
||||
check("inställningsdialogen öppnas från panelen", "Tema:" in text
|
||||
and "Skugga" in text and "config.toml" in text)
|
||||
# Ned tre rader till Skugga (0=Tema, 1=Panel, 2=Editor, 3=Skugga)
|
||||
disp.send(key_event(code="Down"))
|
||||
disp.send(key_event(code="Down"))
|
||||
disp.send(key_event(code="Down"))
|
||||
# Ned fyra rader till Skugga
|
||||
# (0=Tema, 1=Panel, 2=Editor, 3=Skärmbilder, 4=Skugga)
|
||||
for _ in range(4):
|
||||
disp.send(key_event(code="Down"))
|
||||
disp.send(key_event(code="Enter"))
|
||||
time.sleep(0.5)
|
||||
cfg_now = open(os.path.join(cfgdir, "config.toml")).read()
|
||||
@@ -446,7 +446,7 @@ def main():
|
||||
text = disp.frame_text(timeout=5.0, contains="Filformat")
|
||||
check("inställningarna visar filformat-raden", "1 associationer" in text,
|
||||
f"frame: {text[:300]!r}")
|
||||
for _ in range(5):
|
||||
for _ in range(6):
|
||||
disp.send(key_event(code="Down"))
|
||||
disp.send(key_event(code="Enter"))
|
||||
text = disp.frame_text(timeout=5.0, contains=".txt")
|
||||
@@ -480,11 +480,35 @@ def main():
|
||||
check("PNG-skärmbilden har giltig header",
|
||||
magic == b"\x89PNG\r\n\x1a\n", f"magic: {magic!r}")
|
||||
|
||||
# ── 4k2. Skärmbildskatalog via inställningarna ───────────────────
|
||||
disp.send(mouse_event({"Down": "Left"}, gx, 0))
|
||||
disp.send(mouse_event({"Up": "Left"}, gx, 0))
|
||||
disp.frame_text(timeout=5.0, contains="Skärmbilder")
|
||||
for _ in range(3):
|
||||
disp.send(key_event(code="Down"))
|
||||
disp.send(key_event(code="Enter"))
|
||||
for ch in "bilder":
|
||||
disp.send(key_event(ch=ch))
|
||||
disp.send(key_event(code="Enter"))
|
||||
time.sleep(0.5)
|
||||
cfg_now = open(os.path.join(cfgdir, "config.toml")).read()
|
||||
check("skärmbildskatalogen sparas till config",
|
||||
'screenshot_dir = "bilder"' in cfg_now)
|
||||
disp.send(key_event(code="Esc"))
|
||||
time.sleep(0.3)
|
||||
disp.send(key_event(ch="p", modifiers="ALT"))
|
||||
disp.frame_text(timeout=8.0, contains="Skärmbild sparad")
|
||||
disp.send(key_event(code="Enter"))
|
||||
time.sleep(0.3)
|
||||
check("skärmbilden hamnar i den valda katalogen",
|
||||
os.path.isdir(os.path.join(cfgdir, "bilder"))
|
||||
and len(os.listdir(os.path.join(cfgdir, "bilder"))) >= 1)
|
||||
|
||||
# ── 4l. Tangent-fliken i inställningarna ─────────────────────────
|
||||
disp.send(mouse_event({"Down": "Left"}, gx, 0))
|
||||
disp.send(mouse_event({"Up": "Left"}, gx, 0))
|
||||
disp.frame_text(timeout=5.0, contains="Tangenter")
|
||||
for _ in range(6):
|
||||
for _ in range(7):
|
||||
disp.send(key_event(code="Down"))
|
||||
disp.send(key_event(code="Enter"))
|
||||
text = disp.frame_text(timeout=5.0, contains="Fönsterväxlare")
|
||||
|
||||
Reference in New Issue
Block a user