4 Commits

Author SHA1 Message Date
dfb8c2fc72 fix: Status-Text-Suche liest auch das AT-SPI-Text-Interface
Der 'wird ueberprueft'-Text wurde trotz sichtbar auf dem Screenshot nie
gefunden - GtkLabel exponiert seinen Text ueblicherweise nicht ueber
.name/.description (bleiben oft leer), sondern nur ueber das separate
Text-Interface (queryText().getText(0, -1)). _node_text() sammelt jetzt
alle drei Quellen.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-29 18:02:09 +02:00
4bf1992eb9 fix: Autoklicker wartet auf Ubiquitys Hintergrundpruefung statt sie zu unterbrechen
Timing-Hypothese fuer den partman-rebuild-cache-Loop: der $bootable{}-Fix
brachte live keine Aenderung (siehe ADR-0023-Nachtrag), was gegen einen
rein rezeptseitigen Fehler spricht. Stattdessen zeigt die 'Etwas
Anderes'-Seite waehrend der Klickphase ein Status-Panel 'Konfiguration
der Installation wird ueberprueft ...' - ein Klick auf 'Jetzt
installieren' WAEHREND dieser Pruefung noch laeuft koennte sie
unterbrechen/neu anstossen statt sie abschliessen zu lassen.

atspi_click.py sucht jetzt vor jedem Klickversuch aktiv nach diesem
sichtbaren Text (find_showing_text(), rollenunabhaengig) und gibt bei
Treffer Exit-Code 3 zurueck, ohne zu klicken. autoclicker.sh behandelt
das als eigenen, nicht als Fehlversuch gezaehlten Zustand.

Noch nicht live verifiziert - naechster Schritt.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-29 17:53:10 +02:00
6e99b3bf3a fix: atspi_click.py sprachunabhaengig statt reine deutsche Werteliste
Real beim Testen entdeckt: die Mint-eigene 'Multimedia-Codecs'-Seite zeigt
trotz debian-installer/language=de englische Buttons ('Quit'/'Back'/
'Continue') - vermutlich derselbe fehlende .mo-Uebersetzungskatalog wie
beim bereits gepatchten ubi-prepare.py-None-Bug. Die deutsche
FORWARD_LABELS-Werteliste haette hier fuer immer haengen bleiben.

Neue Strategie in select_target(): bekannte rueckwaerts-/abbrechende
Beschriftungen (zweisprachig) werden ausgeschlossen, danach wird bevorzugt
wer eine bekannte vorwaerts-Beschriftung traegt, sonst der einzige
verbleibende Kandidat (Sole-Survivor) - deckt auch unbekannte/nicht
uebersetzte Labels ab. Bei echter Mehrdeutigkeit (mehrere unbekannte
Kandidaten gleichzeitig) wird bewusst NICHT geklickt statt zu raten.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-29 15:42:55 +02:00
a415de1eaa feat: Autoklicker auf AT-SPI umgestellt statt Bildschirmkoordinaten
xdotool/Enter-Taste-Ansatz war nicht zuverlaessig genug (Metacity erzeugt
mehrere ueberlappende X11-Fenster aehnlicher Groesse, 'groesstes Fenster'-
Heuristik traf wiederholt das falsche; Enter aktiviert auf der
Partitionierungs-Uebersicht einen Ausklapp-Pfeil statt 'Jetzt
installieren' - siehe ADR-0023-Nachtrag).

- live-updates/usr/share/ubiquity/tuxflotte-atspi-env.sh (neu): aktiviert
  GTK_MODULES=gail:atk-bridge + Session-/A11y-Bus VOR dem GTK-Start von
  Ubiquity - muss vor dem Init passieren, eine Bruecke wird von einer
  bereits laufenden GTK-App nicht nachgeladen.
- initrd-hooks/casper-bottom/99casperboot: bindet obige Datei per
  Ein-Zeilen-Sed-Patch in start-ubiquity-dm ein (dry-run gegen den echten
  Datei-Inhalt verifiziert).
- live-updates/opt/tuxflotte/scripts/atspi_click.py (neu): findet+klickt
  den passenden 'Weiter'-Button ueber Rolle+Name im Accessibility-Baum,
  feste deutsche Werteliste (Sprache per Preseed fest de_DE), niemals
  Zurueck/Abbrechen/Beenden.
- autoclicker.sh: ruft atspi_click.py in Schleife statt xdotool/Enter auf,
  wartet auf den ubiquity-Prozess statt auf den X-Socket.

Noch nicht live verifiziert - naechster Schritt: QEMU-Testlauf auf lenny.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-29 15:34:28 +02:00