Skip to content

fix(gui): Kontextmenü-Tags/Metadaten, Editor-Dirty-Flag, deutsche Dialogbuttons (T-20260926-912169808) - #1

Merged
lukisch merged 1 commit into
masterfrom
fix/T-20260926-context-menu
Sep 26, 2026
Merged

lukisch merged 1 commit into
masterfrom
fix/T-20260926-context-menu

Conversation

@lukisch

@lukisch lukisch commented Sep 26, 2026

Copy link
Copy Markdown
Collaborator

Ticket T-20260926-912169808 (Usertest: Rechtsklick-Aktionen, Editor-Dirty-Flag, englischer Dialog).

Befunde und Fixes

Befund Ursache Fix
Tag setzen wirkungslos Tag-/Notizfelder wurden nirgends gespeichert FileIndex.get/set_tags, get/set_note + Laden/Speichern im MetadataPanel; index_file per UPSERT (Tags überleben Reindex)
Metadaten anzeigen / Tags bearbeiten ohne Wirkung Aktion aktualisierte nur das evtl. ausgeblendete Vorschaupanel MainWindow.show_file_metadata() blendet das Panel ein, fokussiert das Tag-Feld
Editor meldet Änderungen nach bloßem Öffnen Verzögertes Rehighlight löst textChanged aus Dirty-Flag über QTextDocument.modificationChanged
Speichern/Verwerfen-Dialog englisch Kein Qt-Übersetzer installiert QTranslator mit qtbase_<lang>.qm in main.py
Mehrfach-Umbenennen/Diff/Einstellungen stürzen im Quellstart ab translator.py nicht auf sys.path, Spec ohne Projektwurzel/locales main.py-Pfad + Spec pathex/datas

Umbenennen/Löschen funktionieren im aktuellen Quellstand (per Test über das Kontextmenü belegt). Lokal installiert ist die Store-Version 1.0.0.0, die älter ist als die Kontextmenü-Verdrahtung (1786288, 2026-08-21) – die Nutzerbeobachtung passt zu dieser veralteten Store-Version.

Verifikation

  • pytest: 359 passed, 2 skipped (inkl. 7 neue Regressionstests)
  • PyInstaller-Testbuild aus der Spec: _internal/locales/translations.json und PySide6/translations/qtbase_de.qm enthalten
  • GUI-Klicks nur offscreen simuliert, kein echter Desktop-Klicktest

Nicht selbst mergen (Zwei-Modell-Regel). Kein Tag, kein Store-Release.

🤖 Generated with Claude Code

https://claude.ai/code/session_01PTbvD41MCVmnQWaobvHfCk

…logbuttons (T-20260926-912169808)

- Tags/Notizen im Metadaten-Panel wurden nie gespeichert: FileIndex erhält
  get/set_tags und get/set_note (vorhandene Tabellen tags/file_tags/notes),
  MetadataPanel lädt/speichert sie; index_file nutzt UPSERT statt
  INSERT OR REPLACE, damit files.id und damit Tags beim Reindex erhalten bleiben.
- "Metadaten anzeigen"/"Tags bearbeiten" blendeten nichts ein, wenn das
  Vorschaupanel ausgeblendet war: neue MainWindow.show_file_metadata().
- QuickEditor meldete nach bloßem Öffnen Änderungen: der verzögerte
  Syntax-Highlighter löste textChanged aus. Dirty-Flag folgt jetzt
  QTextDocument.modificationChanged.
- Qt-Standardbuttons (Speichern/Verwerfen/Abbrechen, Ja/Nein) waren englisch:
  main.py installiert qtbase_<lang>.qm per QTranslator.
- Quellstart: translator.py lag nicht auf sys.path (Mehrfach-Umbenennen, Diff,
  Einstellungen -> ModuleNotFoundError); Spec bündelt jetzt translator.py und locales/.
- Regressionstests: tests/test_context_menu_actions.py (7 Tests).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PTbvD41MCVmnQWaobvHfCk
@github-actions

Copy link
Copy Markdown

Welcome! Thanks for your first pull request in this repository.

A maintainer will review it soon. Please make sure:

  • Your changes are tested
  • Documentation is updated if needed
  • The PR description explains what changed and why

Thanks for contributing.

@lukisch
lukisch merged commit 264aa6e into master Sep 26, 2026
4 of 13 checks passed
lukisch pushed a commit that referenced this pull request Sep 26, 2026
- Versionsbump 1.0.5 -> 1.0.6 harmonisiert (pyproject.toml, store_package.json,
  CLAUDE.md YAML-Header, llms.txt, README/README_de-Badges,
  tests/test_metadata_contract.py Versions-Contract-Tests).
- CHANGELOG: Eintraege fuer den bereits gemergten Kontextmenue-/Dirty-Flag-/
  QTranslator-Fix (T-20260926-912169808, #1, 264aa6e) und den Icon-Fix
  (T-20260820-729932431) ergaenzt.

Icon-Fix T-20260820-729932431 (weisser Rand/Halo im Store-Kachel-Icon):
- Ursache: store_assets/Square44x44Logo.png, Square150x150Logo.png,
  Square310x310Logo.png und StoreLogo.png hatten trotz RGBA-Modus einen
  opaken (nicht transparenten) Canvas-Hintergrund gebacken (Alpha 255 an
  den Ecken statt 0) - sichtbar als weisser Kasten um das Icon-Motiv in
  Kachel/Startmenue/Store-Listing.
- Fix: durch die im selben Ordner bereits korrekt transparenten Gegenstuecke
  gleicher Groesse und gleichen Motivs ersetzt (icon_44x44.png,
  icon_150x150.png, icon_310x310.png, icon_50x50.png) - Motiv unveraendert,
  keine Neugestaltung, nur echte Transparenz statt gebackenem Hintergrund.
  Wide310x150Logo.png war bereits korrekt; icon_310x150.png ist ein
  separates Marketing-Banner (nicht vom AppxManifest referenziert),
  unveraendert gelassen.
- Verifiziert per Kontaktbogen (Weiss/Schwarz/Grau/Akzentgruen): kein Halo,
  keine hellen Randflaechen auf allen vier Hintergruenden.

Lokal verifiziert: 364/364 Tests gruen (frisches venv,
requirements+pandas+Pillow+pytest).

Store-Ticket T-20260926-902661741.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant