Releases: peterm2024/PoE-VIEW2
Release list
v0.9.0
Behoben
- Veröffentlicht GGG die Erfahrung ausnahmsweise mitten in einer Karte
statt beim Verlassen, war die darauf folgende XP/h-Angabe viel zu
niedrig — im gemessenen Fall 38 statt 187 Millionen. Sie rechnete mit
der ganzen Zeit in der Karte, obwohl der größere Teil davon schon
abgerechnet war. Ein Abschnitt reicht jetzt höchstens bis zur vorigen
Veröffentlichung zurück; im Graphen überlappen sich dadurch auch keine
Balken mehr.
Hinzugefügt
- Über dem XP-Graphen zeigt jetzt ein schmaler Balken je eingesetztem
Gem, wie weit es zur nächsten Stufe ist — in der Farbe des Attributs,
das es verlangt. Ein voller Balken heißt fertig; wartet das Gem nur
auf einen Klick, sitzt eine gelbe Kappe darauf. Damit ist auf einen
Blick zu sehen, welche Gems durch sind und welche noch Aufmerksamkeit
brauchen. - Verlässt man eine Map zwischendurch (Items verkaufen) und kommt
zurück, erkennt der XP-Graph das jetzt als EINE Map: Hinter den
einzelnen Aufenthalten liegt eine dunkelgrüne Fläche auf Höhe der
Rate für die ganze Map. Die Lücke bleibt sichtbar — man sieht also,
was der Ausflug gekostet hat. - Eine gestrichelte Linie im Graphen zeigt die Gesamtrate über die
angezeigten drei Stunden.
Geändert
- Die Suche versteht jetzt mehrere Begriffe, so wie die Suche im Spiel:
Durch Leerzeichen getrennte Wörter müssen ALLE zutreffen.life resistancefindet damit Items mit beidem, auch wenn die zwei Wörter
im Text nie nebeneinander stehen — vorher fand diese Eingabe nichts.
Mehrere Wörter in Anführungszeichen bleiben ein Begriff ("maximum life").
Wer reguläre Ausdrücke benutzt: Jedes Wort ist ein eigenes Muster.
Socket-Muster von poe.re enthalten keine Leerzeichen und funktionieren
unverändert; ein Muster mit Leerzeichen gehört in Anführungszeichen. - Mitgesucht werden jetzt auch die Namen der eingesetzten Gems — "wo
steckt eigentlich meine Determination?" beantwortet die Suche selbst. - Zwei Kurzformen aus dem Spiel funktionieren jetzt auch hier:
ilvl:84findet Itemlevel genau 84,tier:16Map-Tier genau 16 —
beides kombinierbar mit allem anderen (ilvl:84 ring). Für Bereiche
bleibt der Spalten-Filter (>=84) der bessere Weg. - Strg+F springt ins Suchfeld und markiert den bisherigen Text.
v0.8.0
Hinzugefügt
- Rechtsklick auf ein Item bietet jetzt "Copy item text (for Path of
Building)" an: Das Item landet im Textformat des Spiels in der
Zwischenablage und lässt sich in Path of Building einfügen. Gedacht
vor allem für Truhen-Items — Charaktere holt sich PoB selbst von GGGs
Seite, an die Truhe kommt es nicht heran. Verzauberungen und
Flaschen-Effekte sind dabei, ebenso Sockel, Qualität und Item-Level. - Das Item-Detail unten ist nach Blöcken gegliedert — Eigenschaften,
Anforderungen, impliziter und explizite Mods durch dünne Linien
getrennt, wie im Spiel. Vorher lief alles als eine Liste
untereinander, und welcher Mod der implizite ist, war gar nicht zu
erkennen. Verzauberungen und Flaschen-Effekte werden jetzt überhaupt
angezeigt; passt der Text nicht ins Panel, steht das dort, statt still
abgeschnitten zu werden. - Neben dem Item-Detail sitzt ein Leveling-Feld mit Stufe,
Gesamterfahrung und XP/h des zuletzt abgeschlossenen Gebiets. Die
Trennlinie zwischen beiden lässt sich verschieben. - Eine Verbindungs-LED am rechten Ende der Statuszeile: grün, solange
GGG antwortet, rot während einer Wartung, grau bevor überhaupt etwas
abgefragt wurde. Sie geht von selbst wieder auf grün, sobald ein
Abruf gelingt — ohne Neustart. Die Bedeutung der drei Farben steht im
Hilfe-Fenster unter "Getting started". - Darunter zeichnet ein Graph die letzten drei Stunden: ein Balken je
abgeschlossenem Gebiet, so breit wie das Gebiet gedauert hat. Wo
nichts steht, wurde keine Erfahrung gemacht — Pausen bleiben als
Lücken sichtbar. Ein Gebiet, in dem unterm Strich Erfahrung verloren
ging, hängt rot unter der Null-Linie.
Behoben
- Billige Währung wurde teils viel zu hoch bewertet — ein Stapel von 921
Wisdom Scrolls stand mit 4,9 Divine in der Tabelle. poe.ninja kann
Kurse unter einem Chaos in einer Handelsrichtung nicht ausdrücken und
meldet dort glatt „1 Chaos"; die Gegenrichtung wird jetzt zuverlässig
ausgewertet, auch seit poe.ninja sie in umgekehrter Einheit angibt.
Fehlt die Gegenrichtung ganz, bleibt die Wertspalte leer, statt eine
Obergrenze als Preis auszugeben. - Das Item-Detail schnitt lange Items wieder ab, ohne es zu sagen: Die
Trennlinien zwischen den Blöcken brauchen selbst Platz, was bei der
Höhe nicht mitgerechnet war. Das Feld ist 16 Pixel höher und zeigt
jetzt 95 % aller Items vollständig; was darüber hinausgeht, wird wie
vorgesehen gemeldet. - Während einer GGG-Wartung meldete die Anwendung im Sekundentakt
"League not found" und verdeckte damit ihren eigenen Offline-Hinweis.
Der Truhen-Endpunkt beantwortet eine laufende Wartung nicht mit einem
Serverfehler, sondern mit einer abgelehnten Anfrage — gemessen an
einer echten Wartung in 19 von 22 Fällen, während der
Charakter-Endpunkt gleichzeitig sauber "Server nicht verfügbar"
meldete. Die Liga existierte dabei durchgehend. Solche Antworten
zählen jetzt als Wartung: Es erscheint der normale Offline-Hinweis,
und die zwischengespeicherten Daten bleiben durchsuchbar. - Nach der ersten Karte einer Sitzung blieb die XP/h-Anzeige leer,
obwohl alles Nötige gemessen war: Der Weg ins Hideout ändert die
Erfahrung nicht, es gab also nur eine Veröffentlichung, und die
Rechnung verlangte zwei. Sie nimmt jetzt den Stand beim
Programmstart als Vergleichspunkt — allerdings nur, wenn dieser
nachweislich vor dem Betreten des gemessenen Gebiets liegt,
andernfalls wäre die Rate erfunden.
v0.7.0
Hinzugefügt
- Das Anwendungssymbol erscheint jetzt auch in der README und im
Hilfe-Fenster unter "About". Dafür legttools/make_icon.pyneben der
mehrstufigen.icoeine einzelneassets/PoE-VIEW2.pngan — weder
GitHubs Markdown noch Qts Rich Text kommen mit einer mehrstufigen
Icondatei zurecht. - Charakter-XP/h in der Statuszeile, sobald ein Charakter offen ist —
ohne zusätzlichen API-Request (Level und Erfahrung stecken bereits in
der Antwort, die für die Ausrüstung ohnehin geladen wird). Gezeigt wird
die Rate der zuletzt abgeschlossenen Zone, gerechnet über die Zeit, die
der Charakter dort verbracht hat — Wartezeit im Hideout verwässert sie
also nicht, und eine Pause lässt sie nicht absacken, sondern einfach
stehen. Ab einer Minute steht dahinter, wie alt der Wert ist
(24.1M XP/h (3m ago)), denn neue Erfahrung liefert die API von GGG
erst, wenn eine Map verlassen wird. Erster Schritt einer größeren,
noch offenen Idee (Gem-XP/h, ein echter Graph). - Der Live-Refresh reagiert jetzt nicht mehr nur auf Zonenwechsel,
sondern auch auf Händler-Verkäufe und das Identifizieren von Items —
beides steht in PoEs eigenerClient.txt, die für den Zonenwechsel
ohnehin schon gelesen wird. Damit die zusätzlichen Anlässe kein
Rate-Limit-Budget verbrennen, verschiebt jeder vorgezogene Abruf den
nächsten regulären Takt um die eingesparte Zeit; eine Serie von
Ereignissen ist auf vier Abrufe begrenzt, danach wird gewartet, bis
der Takt wieder aufgeholt hat. Ob GGG zu diesen Anlässen tatsächlich
neue Daten bereitstellt, ist unterschiedlich — verlässlich ist nach wie
vor nur der Zonenwechsel. Der vorgezogene Abruf kostet aber nichts
extra, weil er den nächsten regulären um dieselbe Zeit verschiebt. - Ist in einem Item ein Sockel-Gem eine Stufe aufgestiegen, leuchtet die
Zeile grün statt türkis. Damit ist der häufigste Grund, aus dem
angelegte Ausrüstung überhaupt aufleuchtet, auf einen Blick von einem
echten Neuzugang zu unterscheiden. Ein frisch eingesockeltes Gem bringt
seine Stufe nur mit und bleibt türkis.
Behoben
- Die kurzen Hänger beim Aktualisieren der Fächer sind weg. Ursache: Bei
jedem eintreffenden Fach wurde der komplette Datenbestand neu in die
Cache-Datei geschrieben — bei einer großen Truhe 1,4 Sekunden lang,
und zwar im Vordergrund. Das Schreiben läuft jetzt in einem eigenen
Thread, und mehrere Anforderungen kurz hintereinander fallen zu einer
zusammen. In der Oberfläche bleiben davon 0,009 Sekunden übrig; beim
Beenden wird auf den letzten Speichervorgang gewartet. - Beim Spielen leuchtete ständig die halbe Ausrüstung türkis auf, als
wäre gerade etwas Neues passiert, obwohl nichts geschehen war.
Ursache: Die Erfahrung der Sockel-Gems zählt permanent hoch und ist
Teil der Item-Daten — damit galt jedes sockelbare Ausrüstungsteil bei
fast jedem Refresh als "geändertes Item" (in Peters Spielrunde
gemessen: 25 von 29 Gems mit neuen Erfahrungswerten binnen zwölf
Sekunden). Der Erfahrungsstand zählt für die Hervorhebung jetzt nicht
mehr mit; ein Gem, das tatsächlich eine Stufe aufsteigt, wird
weiterhin angezeigt. - Aus demselben Grund leuchteten Flaschen regelmäßig auf: Ihre aktuelle
Ladungszahl steht in den Item-Daten und schwankt beim Spielen
ununterbrochen. Sie zählt für die Hervorhebung nicht mehr mit — die
maximale Ladungszahl, die sich tatsächlich ändern kann, dagegen schon.
v0.6.0
Windows-Anwendung: PoE-VIEW2.exe herunterladen und starten — Python,
Qt und alles Weitere stecken darin, es muss nichts installiert werden.
Hinweis zu SmartScreen: Die Datei ist nicht codesigniert, deshalb
warnt Windows vor einem „unbekannten Herausgeber". Über „Weitere
Informationen" → „Trotzdem ausführen" lässt sie sich starten. Wer das
lieber nicht möchte, kann das Programm aus dem Quellcode betreiben
(siehe README).
Hinzugefügt
- Hilfe-Fenster (Fragezeichen-Knopf in der Toolbar) mit elf Themen: was
die Spalten bedeuten, wofür die Farbfilter stehen, wie Suche und
Refresh-Modi arbeiten, warum die beiden Zähler in "Load All Tabs"
auseinanderlaufen, was die Symbole im Item-Verlauf heißen, warum die
Wertspalte in SSF-Ligen leer bleibt, und wo die eigenen Daten liegen.
Das Fenster ist nicht modal — es kann offen bleiben, während man das
Erklärte ausprobiert. - Statuszeile zeigt jetzt "Updated HH:MM:SS" — wann der Inhalt der
Tabelle zuletzt neu aufgebaut wurde. Damit ist auf einen Blick
erkennbar, wie frisch das Angezeigte ist. - Datum und Uhrzeit rechts oben in der Toolbar. Zusammen mit dem
"Updated"-Zeitstempel der Statuszeile ist damit auch auf einem
Screenshot allein erkennbar, wie aktuell die angezeigten Daten sind. - Neben dem "Updated"-Zeitstempel erscheint "unchanged for 12m", wenn
die Daten zwar weiter eintreffen, aber unverändert bleiben. Damit ist
"wir holen nichts mehr" von "wir holen, die API liefert denselben
Stand" zu unterscheiden — letzteres ist der Normalfall, solange im
Spiel kein Zonenwechsel stattgefunden hat. Zeiten, in denen wegen des
Rate-Limits gar nicht abgefragt wurde, zählen dabei nicht mit — die
Angabe nennt nur geprüfte Zeit. - Der Spaltenfilter (Rechtsklick auf einen Spaltenkopf) vervollständigt
jetzt schon beim Tippen: Der passende Rest steht markiert hinter dem
Cursor und wird mit Return oder Tab übernommen. Die bisherige
Vorschlagsliste bleibt daneben bestehen — sie findet auch Werte, bei
denen man nur einen Teil aus der Mitte kennt. - Der Fortschrittsdialog von "Load All Tabs" erklärt jetzt seine
Zahlen: Der Fach-Zähler steht vorn, die Abrufe heißen "requests"
statt "Section" (ein Wort, das es in der Truhen-Oberfläche gar
nicht gibt), eine kleine Tabelle rechnet vor, woraus sich die
Gesamtzahl zusammensetzt, und die Restzeit nennt das Rate-Limit
von GGG als Grund. Die Zahlen selbst waren immer richtig — sie
sahen nur nach einem Widerspruch aus. - "📌 Pin" im Rechtsklick-Menü der Item-Liste: setzt den Spaltenfilter
auf genau den Wert der angeklickten Zelle. Rechtsklick auf
"MainInventory" in der Tab-Spalte zeigt also nur noch Items von
dort. Der Wert, nach dem man filtern will, steht meistens schon
unter dem Mauszeiger — bisher musste man ihn im Header-Menü
abtippen. - Das Hilfe-Fenster ist auf dem Stand der Oberfläche: Es beschrieb
noch den alten "Load All Tabs"-Dialog mit einem Zähler namens
"Section", den es nicht mehr gibt, und kannte weder den
Nur-Lese-Modus eines zweiten Fensters noch "Pin" und die
Vervollständigung im Spaltenfilter. - Die Symbole im Item-Verlauf (↑ ↓ ±) erklären sich jetzt per Tooltip.
- In Ligen, für die poe.ninja keine Preise führt, steht in der
Statuszeile "No prices for this league" statt einer wortlos leeren
Wertspalte. Der Tooltip nennt den Grund: Solo Self-Found hat keinen
Handel, aus dem sich Preise ableiten ließen. - Der Daten-Cache wird bei jedem Programmstart gesichert, bevor die
neue Sitzung etwas daran ändern kann — nach
%LOCALAPPDATA%\PoE-VIEW2\backups, gepackt auf etwa ein Zehntel
(67 MB werden zu 7,5 MB, in einer Drittelsekunde). Der Dateiname nennt
den Zeitpunkt. Sicherungen werden 24 Stunden aufbewahrt; die neueste
bleibt immer erhalten, egal wie alt sie ist. Hat sich seit der letzten
Sicherung nichts geändert, wird keine neue angelegt. Zurückgespielt
wird von Hand über den Explorer — das Hilfe-Fenster beschreibt den Weg. - Die vergrößerte Item-Ansicht (Doppelklick auf eine Zeile) zeigt jetzt
den Spruchtext des Items — bei einer Divination Card das, was die Karte
ausmacht, bei Uniques die Hintergrundgeschichte. Er steht zwischen Bild
und Zahlen, kursiv in einer Serifenschrift und etwas größer; bei Karten
innerhalb des Kartenrahmens, durch eine Zierlinie vom Artwork getrennt. - Die Belohnung einer Divination Card erscheint in der Farbe, die GGG ihr
selbst gibt: Währung gold, Gems grün, Uniques orange, "Corrupted" rot.
Die Angabe steckt in denselben Auszeichnungen, die aus dem Text
entfernt werden — statt sie wegzuwerfen, wird sie jetzt ausgewertet. - Alle Texte in der vergrößerten Ansicht sind zentriert, wie in den
Item-Tooltips des Spiels. - Bei einer Divination Card steht statt "Stack Size: 7/5" der Fortschritt
zum nächsten Satz:1 ▮ + ▮ ▮ ▯ ▯ ▯— ein voller Satz (grün), und vom
nächsten sind zwei von fünf Karten da. Damit ist ohne Kopfrechnen zu
sehen, wie weit man ist. Die genauen Zahlen stehen im Tooltip. Nur bei
Karten — bei Währung ist die Stapelgröße keine Satzgröße, sondern
Lagerkapazität und reicht bis 50 000. - Karten, von denen eine einzelne schon ein voller Satz ist ("Society's
Remorse", "The Cartographer" und fünf weitere), zeigten bisher gar
keine Stückzahl an — die API liefert für sie kein Stack-Size-Feld.
Jetzt steht dort die Anzahl mit einem grünen Rechteck (16 ▮).
Geändert
-
Das Charakter-Fenster (Doppelklick auf einen Charakter) zeigt die
Ausrüstung endlich lesbar: Die Hälfte der Namen war abgeschnitten — an
einem echten Charaktersatz gemessen 87 von 171 Teilen, vier Flaschen
lasen sich allesamt als "Flagell…" und waren nicht auseinanderzuhalten.
Die Plätze sind jetzt breiter, brechen lange Namen auf zwei Zeilen um
und zeigen die Basis statt des gewürfelten Fantasienamens eines Rares
("Gutting Knife" statt "Vortex Bane"); der vollständige Name steht im
Tooltip. Ergebnis: kein einziger gekürzter Name mehr. -
Die Ausrüstungsplätze tragen jetzt die Rarity-Farben der Item-Tabelle —
vorher war alles weiß, und man sah der Puppe nicht an, welches Teil das
Unique ist. -
Die Juwelen aus dem Passiv-Baum sind anklickbar wie jeder andere Platz,
mit Icon und Farbe. Vorher waren sie eine reine Textliste in einem
Rollbereich, die einzigen Items im Fenster ohne Reaktion auf einen
Klick, und die Liste schnitt regelmäßig mitten in einer Zeile ab. -
Die Ausrüstungsplätze liegen jetzt so wie in PoEs eigenem
Inventar-Fenster: Ringe links und rechts der Rüstung, Amulett rechts
neben dem Helm, Handschuhe/Gürtel/Stiefel auf einer Höhe. Bisher stand
das Amulett zwischen den Waffen und die Ringe flankierten den Gürtel. -
Statuszeile aufgeräumt: Die beiden Refresh-Angaben sind zu einer
zusammengefasst ("Single — next update in 1s · 0/94 tabs"), und der
Hinweis zur fehlenden Zugehörigkeit zu Grinding Gear Games steht jetzt
im Hilfe-Fenster unter "About" statt dauerhaft in der Statuszeile. -
Settings-Dialog und Charakter-Fenster sind jetzt durchgehend englisch
wie die übrige Oberfläche. Vorher waren im Settings-Dialog nur die
Reiter englisch und alle Beschriftungen deutsch; im Charakter-Fenster
standen die Ausrüstungsplätze, "Ausrüstung", "Flasche" und "Jewels im
Passiv-Baum" auf Deutsch. -
Der Hintergrund-Refresh taktet in den Modi "Single" und "Stash" etwas
langsamer (bei GGGs üblichem Kontingent 13 statt 11 Sekunden).
Grund: Der bisherige Takt schöpfte das Abruf-Kontingent so weit
aus, dass schon wenige zusätzliche Abrufe — etwa durch mehrere
Zonenwechsel kurz hintereinander — die Notbremse auslösten und
der Refresh dann minutenlang ganz aussetzte. Etwas langsamer,
dafür ohne diese Aussetzer.
Behoben
- Markierte man im Fach-Baum einen Spezial-Tab ("Unique Items", "Map
Stash") zusammen mit anderen Fächern, blieben seine Items in der
Tabelle aus — und damit auch im CSV-Export. Ordner lösten sich richtig
in ihre Fächer auf, Spezial-Tabs nicht: Sie sind technisch keine
Ordner und galten deshalb als einzelnes Fach, unter dessen ID es aber
gar keine Items gibt (die stecken in den Unter-Fächern). Maßgeblich
ist jetzt allein, ob ein Knoten Unter-Knoten hat. - Item-Eigenschaften mit Platzhaltern wurden falsch dargestellt: Statt
"Consumes 35 of 65 Charges on use" stand dort "Consumes {0} of {1}
Charges on use: 35" — die Platzhalter blieben stehen und der zweite
Wert fehlte ganz. Betraf das Detail-Panel, die vergrößerte Item-
Ansicht, den CSV-Export und den Suchindex. - Item-Verlauf: Nach einem Programmstart tauchten dort Ereignisse auf,
die längst vergangen waren — mit der aktuellen Uhrzeit versehen. Der
Verlauf selbst wird nicht gespeichert, der Inventarstand der
Charaktere schon; der erste Abruf nach dem Start verglich deshalb
gegen einen womöglich wochenalten Stand. Protokolliert wird jetzt erst
ab dem zweiten Abruf eines Charakters, der erste setzt nur die
Vergleichsbasis. - Währungen unter einem Chaos wurden alle mit genau einem Chaos
bewertet — ein voller Stapel Scrolls of Wisdom stand dadurch mit 40c
in der Value-Spalte statt mit 0,2c. Ursache war poe.ninjas
"receive"-Seite, die kein kleineres Verhältnis als 1:1 ausdrücken
kann; die Gegenrichtung derselben Zeile kennt den echten Kurs und wird
jetzt verwendet. Betraf in der Liga Allflame 20 von 67 Währungen.
Nebenbei behoben: poe.ninja rundet auf zwei Nachkommastellen, was sich
bei großen Stapeln aufsummierte. - Ein zweites PoE-VIEW2-Fenster mit demselben Konto läuft jetzt nur
lesend: Der Cache bleibt vollständig durchsuchbar (Suche, Filter,
Item-Details, CSV-Export), aber es ruft nichts ab und speichert nichts.
Vorher hätten sich zwei Fenster gegenseitig die Daten überschrieben und
sich obendrein das Abruf-Kontingent geteilt. Mit einem anderen Konto
angemeldet, ist das zweite Fenster uneingeschränkt nutzbar. Die
Statuszeile sagt, welcher Fall gerade gilt. - Die lokalen Cache-Dateien werden jetzt vollständig oder gar...
v0.5.1
[0.5.1] - 2026-08-04
Behoben
- Datenverlust beim Ab- und Wieder-Anmelden: Wer sich abmeldete und
danach erneut mit demselben Konto anmeldete, bekam seine gespeicherten
Truhen- und Charakterdaten nicht zurück — der leere Zustand wurde
stattdessen über die vorhandene Datei geschrieben. Beim nächsten Start
wirkte es, als müsse alles neu geladen werden. Die Daten kommen jetzt
nach dem erneuten Anmelden wieder von der Platte. - Zusätzlicher Schutz gegen Datenverlust: Die lokale Datendatei wird
nicht mehr überschrieben, wenn dabei der allergrößte Teil des
gespeicherten Bestands verlorenginge. Im Zweifel bleibt lieber zu viel
gespeichert — beide bisherigen Datenverluste entstanden genau so, und
der Schutz greift unabhängig davon, welcher Programmteil das
Speichern auslöst.
v0.5.0
[0.5.0] - 2026-08-03
Hinzugefügt
- Logout: der Konto-Button in der Toolbar öffnet nach dem Login jetzt ein
Menü mit "Log out", statt einfach nur deaktiviert zu sein. Vorher gab
es keinen Weg, sich mit einem anderen GGG-Konto anzumelden, ohne den
gespeicherten Eintrag von Hand aus dem Windows-Anmeldeinformations-
manager zu löschen. Ein Logout widerruft nur lokal die Anmeldung bei
PoE-VIEW2 — die Freigabe auf der GGG-Kontoseite bleibt davon
unberührt, dort lässt sie sich bei Bedarf separat entziehen. - Cache-Trennung pro Konto: jedes GGG-Konto bekommt jetzt seine eigene
lokale Datendatei statt einer gemeinsamen. Vorher blieben Stash-Baum,
Items und Charaktere eines vorherigen Kontos nach einem Kontowechsel
im Speicher stehen und vermischten sich mit dem neuen. Nichts wird
dabei gelöscht — jedes Konto behält seinen eigenen Stand, auch beim
Zurückwechseln. Existiert die kontospezifische Datei noch nicht (z. B.
gleich nach der Umstellung), wird die alte gemeinsame Datei automatisch
übernommen, sofern sie zum selben Konto gehört — die alte Datei bleibt
dabei unverändert erhalten. - Item-Verlauf: reine Mengenänderungen (z. B. Currency-Stacks) tauchen
jetzt als eigenes Ereignis auf und wandern dabei ganz nach oben, mit
Vermerk, wie viel sich geändert hat (z. B. "53 (+3)"). Vorher wurden
solche Änderungen komplett ignoriert — nur echte Neuzugänge und
verschwundene Items landeten im Verlauf. Gilt nur für das
Charakter-Inventar, nicht für Stash-Fächer. - Eigenes Anwendungssymbol: PoE-VIEW2 hat jetzt ein eigenes Icon in
Explorer, Taskleiste und Fenstertitel statt des allgemeinen
Standardsymbols. Es steckt in sieben Größenstufen in der Datei, wobei
die kleinen Stufen eine bewusst vereinfachte Fassung der Grafik
verwenden — sonst würde der Runenring bei 16 Pixeln zu Matsch. - Live-Zonenanzeige in der Toolbar: zeigt die zuletzt aus der Client.txt
erkannte Zone an — unabhängig davon, ob danach tatsächlich ein Refresh
folgt (Pause-Modus/Rate-Limit können das weiterhin verhindern). Auch
eine Diagnose-Anzeige nebenbei: bleibt sie leer, war der Zonen-
Beobachter entweder deaktiviert oder hat nichts erkannt.
Behoben
- Der Zonenwechsel-Refresh löste in Wirklichkeit nie aus: die
Datei-Überwachung von Qt bemerkt neue Zeilen in PoEs Client.txt nicht,
solange das Spiel läuft. Aufgefallen ist das erst durch die neue
Zonenanzeige, die dauerhaft leer blieb; die Daten waren trotzdem nie
veraltet, weil der reguläre getaktete Refresh unabhängig davon
weiterlief — der Zonenwechsel beschleunigt ihn nur. Die Erkennung
prüft die Datei jetzt selbst im 2-Sekunden-Takt. - Ein Liga-Wechsel im Dropdown leerte die Itemliste bisher nicht — der
zuletzt angezeigte Fach- oder Charakterinhalt der vorherigen Liga blieb
sichtbar stehen, obwohl keine Auswahl mehr dazu passte. Die Liste wird
jetzt beim Liga-Wechsel geleert, bis erneut ein Tab oder Charakter
ausgewählt wird.
v0.4.0
[0.4.0] - 2026-08-03
Hinzugefügt
- CSV-Export: deutlich breiterer Spaltensatz statt bisher 10 fester
Spalten — jetzt u. a. Position (Tab/X/Y), Kategorie, alle
Anforderungen (Level/Str/Dex/Int), Sockets/Links, sämtliche Mod-Arten
(Implicit/Explicit/Crafted/Enchant/Fractured/Veiled/Utility),
Influences, Merkmale (Mirrored/Fractured/Synthesised/Veiled/Replica/
Searing/Tangled), Notiz, Chaos-Wert und Item-ID. Optional zusätzlich
eineRawJSON-Spalte mit dem vollständigen, unveränderten API-Objekt
je Item — über einen zweiten Dateityp im Speichern-Dialog wählbar,
bewusst nicht die Voreinstellung (Dateigröße bei großen Exporten). - Export per Rechtsklick auf ein Item: "Export selected items" (die
markierten Zeilen, Mehrfachauswahl per Strg-/Umschalt-Klick möglich)
und "Export visible items" (identisch zum bisherigen Toolbar-Knopf),
jeweils mit der Anzahl im Menütext. "Export visible items" steht jetzt
auch im Rechtsklick-Menü des Stash-Baums (auf einem Fach, einem Ordner
oder im leeren Bereich) und der Charakterliste (mit oder ohne
Charakter unter dem Cursor) zur Verfügung. - Der vorgeschlagene CSV-Dateiname nennt jetzt zusätzlich die
exportierte Item-Anzahl und einen Zeitstempel (z. B.
poe-view2-Settlers-Chaos-Orb-12items-2026-08-03_1542.csv) — vorher
schlugen "Export selected items" und "Export visible items" aus
derselben Ansicht denselben Namen vor. - Mehrfachauswahl im Stash-Baum: Strg-/Umschalt-Klick auf mehrere Fächer
oder einen Ordner (auch die "Tier N"-Gruppen im Map-Stash) zeigt deren
Items zusammen an. Zeigt ausschließlich bereits gecachte Items — löst
nie selbst einen Abruf aus, nicht gecachte Fächer werden in der
Statuszeile genannt ("3 tabs selected: 2 loaded, 1 never loaded").
Einzelauswahl eines Fachs verhält sich unverändert, inklusive
automatischem Nachladen bei Cache-Miss. - Das Suchfeld wird beim Auswählen eines Stash-Tabs, Ordners oder
Charakters jetzt automatisch geleert und die globale Suche beendet —
vorher blieb ein Suchtext stehen und filterte unbemerkt weiter, sobald
man in eine andere Ansicht wechselte. Die globale Suche selbst bleibt
von jeder Ansicht aus uneingeschränkt nutzbar.
v0.3.0
Windows-Anwendung, keine Installation nötig: PoE-VIEW2.exe herunterladen und starten.
Hinweis: Die Datei ist nicht codesigniert. Windows SmartScreen und Virenscanner warnen deshalb vor einem unbekannten Herausgeber — das ist bei unsignierten PyInstaller-Builds normal.
Behoben
- Ein Spalten-Filter auf der Tab-Spalte (Header-Rechtsklick) überlebte
bisher den Wechsel von der Charakter- zur Truhen-Ansicht (oder zwischen
zwei Truhenfächern) — passte der Filterwert dort auf keinen einzigen
Fach-/Slot-Namen, verschwanden alle Items kommentarlos, ohne sichtbaren
Hinweis (die Tab-Spalte ist im Einzelfach-View automatisch ausgeblendet,
der 🔍-Marker also unsichtbar). Ein solcher Filter wird jetzt beim
tatsächlichen Wechsel der angezeigten Quelle automatisch entfernt.
Filter auf anderen Spalten (Name, Base, Value, …) bleiben unverändert
über einen View-Wechsel hinweg erhalten. - Refresh-Modus "Stash": bereits geladene Remove-only-Fächer (können nur
schrumpfen, nie wachsen) wurden im Rundlauf wie jedes andere gefüllte
Fach behandelt und damit unnötig oft neu geladen. Sie kommen jetzt nur
noch dran, wenn es sonst kein anderes gefülltes Fach gibt — die gleiche
Nachrangigkeit, die der Auto-Refresh-Modus schon hatte. - Preis-Anzeige: Ein poe.ninja-Abruf ohne eine einzige Preiszeile (z. B.
ein transienter Ausrutscher) wurde bislang wie ein normaler Erfolg 6
Stunden lang gecacht — eine Liga konnte dadurch stundenlang ohne jeden
Preis dastehen, obwohl poe.ninja längst wieder normal antwortete. Ein
solches Ergebnis läuft jetzt nach 1 Stunde statt 6 Stunden ab.
Hinweis: SSF-Ligen (z. B. "Solo Self-Found") werden von poe.ninja
grundsätzlich nicht getrackt — ohne Spieler-Handel gibt es dort keine
Handelsaktivität, aus der sich Preise ableiten ließen. Das ist eine
Grenze der Datenquelle, kein Fehler in PoE-VIEW2. - "Load All Tabs" wirkte bei großen Truhen eingefroren: Der
Fortschrittsbalken zählte Truhenfächer, die Arbeit fällt aber pro Abruf
an. Ein Map-Stash bündelt hunderte Sektionen in einem einzigen Fach —
die Anzeige stand dadurch über eine Stunde auf derselben Zahl. Der
Balken läuft jetzt über die tatsächlichen Abrufe, das Label nennt
zusätzlich das Fach ("Section 128 of 1088 · tab 3 of 519") und eine
geschätzte Restzeit. - Unique-Stash: Die selbst vergebenen Fach-Namen ("Ring", "Sceptre", …)
gingen verloren, sobald das Eltern-Fach erneut geladen wurde — nach
einem "Load All Tabs"-Lauf hießen dadurch fast alle Unterfächer wieder
"UniqueStash". Die Namen bleiben jetzt erhalten; bereits betroffene
Caches füllen sich beim nächsten Laden des Eltern-Fachs wieder auf,
soweit die Items noch zwischengespeichert sind. - Unique-Stash: Kinder eines Remove-only-Tabs zeigten nur noch
"(Remove-only)" statt der Kategorie ("Ring (Remove-only)") — der
GGG-Suffix im Namensfeld wurde fälschlich als vollständiger Name
gewertet. - Rate-Limit-Dashboard zeigt jetzt sofort "(Paused)" neben dem
Policy-Namen, sobald der Refresh-Modus "Pause" aktiv ist. - Rate-Limit-Dashboard: der angezeigte Verbrauch je Regel zeigt jetzt immer
den zuletzt von GGG gemeldeten Rohwert. Reale Header-Logs zeigten, dass
GGGs Zähler nicht gleitend pro Treffer altert, sondern in Blöcken von
~60 Sekunden auf einmal sinkt — die vorherige, feiner gedachte
Interpolation traf dadurch systematisch daneben. Die tatsächliche
Warte-Entscheidung war davon nie betroffen und bleibt unverändert
konservativ. - Die Refresh-Modi "Single" und "Stash" liefen nach einiger Zeit in eine
fünfminütige Zwangspause. Ihr gleichmäßiger Takt war so berechnet, dass
er das Rate-Limit gerade eben nicht reißt — er unterstellte dabei aber,
der einzige Verbraucher zu sein. Klicks auf noch nicht geladene Fächer,
Liga-Wechsel und die Abrufe direkt nach dem Programmstart füllen dasselbe
Kontingent jedoch mit, wodurch die verbleibende Marge von einer einzigen
Anfrage sofort aufgebraucht war. Der Takt pausiert jetzt selbsttätig,
sobald das Fenster zu voll ist, und nennt den Grund in der Statuszeile. - Liga-Wechsel trugen weiterhin zur 300s-Zwangspause bei: der Abruf der
Fach-LISTE der neu gewählten Liga lief ungebremst, und eine Lücke im
gerade erst gebauten Rate-Limit-Schutz ließ auch den Refresh-Modus-Takt
direkt danach ungebremst durch. Beides behoben — der Listen-Abruf
entfällt jetzt bei zu vollem Fenster (der gecachte Baum bleibt sichtbar),
und der Refresh-Modus-Schutz greift jetzt auch unmittelbar nach einem
Liga- oder Modus-Wechsel zuverlässig. - "Load All Tabs", "Refresh" und der Refresh-Modus-Umschalter blieben ohne
gültigen Login anklickbar, solange noch ein Daten-Cache aus einer
früheren Sitzung sichtbar war — der Fortschrittsdialog von "Load All
Tabs" öffnete sich dann, hing aber für immer bei 0 %, weil der Job vom
Worker lautlos verworfen wurde. Diese drei Online-Funktionen sind jetzt
gesperrt, solange kein Login besteht; Stash-Baum, Charakterliste und
Liga-Auswahl bleiben zum Durchsuchen des Caches weiter nutzbar.
Hinzugefügt
- Frei konfigurierbare Item-Nachschlagewerke: Über den Settings-Dialog
(Reiter "External Tools") lassen sich eigene Seiten mit Name und
URL-Vorlage eintragen, in der{slug}durch den Item-Namen ersetzt
wird. Ein Rechtsklick auf ein Item öffnet die so hinterlegten Seiten.
Die Liste ist ab Werk leer — PoE-VIEW2 bringt bewusst keine fremde
Seite mit und kontaktiert von sich aus keine; wer einen Eintrag anlegt,
trifft diese Entscheidung selbst. Der Slug berücksichtigt dabei, dass
nur Uniques einen eigenständig auffindbaren Namen haben: bei allen
anderen Seltenheiten wird der Basis-Typ verlinkt statt eines zufällig
gewürfelten Namens. - Charakter-Item-Verlauf: ein neues, aufziehbares Panel unterhalb der
Item-Tabelle protokolliert die letzten 120 Items, die neu im
Charakter-Inventar aufgetaucht oder daraus verschwunden sind (↑/↓) —
über alle Charaktere hinweg, unabhängig davon, welcher gerade angezeigt
wird. Damit lässt sich kurz nachschauen, was man gerade in die Truhe
gelegt, verkauft oder gehandelt hat. Eigenes, kompaktes Spaltenformat
(Zeit, Charakter, Ereignis, Icon, Name, Base, Stack, Value);
standardmäßig auf eine Zeile eingeklappt, per Ziehen am Splitter
aufziehbar. Rechtsklick/Doppelklick funktionieren wie in der
Haupttabelle (externe Tools, vergrößerte Ansicht). - Charakter-Ansicht: Beim Beobachten eines Charakter-Inventars (z. B. per
Zonenwechsel-Trigger, siehe unten) werden Zeilen, die sich seit dem
letzten Refresh geändert haben oder neu hinzugekommen sind, türkis
hervorgehoben. Aus dem Inventar verschwundene Items werden nicht
sofort entfernt, sondern für einen Refresh-Zyklus grau und
durchgestrichen angezeigt. - Optionaler Zonenwechsel-Trigger für den Live-Refresh (Settings-Dialog,
Reiter "Zone Refresh", standardmäßig AUS): PoE-VIEW2 kann Peters lokale
Client.txt beobachten (rein lesend, Pfad muss selbst eingetragen
werden) und lädt die gerade offene Truhe/den Charakter sofort neu,
sobald PoE einen Zonenwechsel meldet — GGGs Stash-API liefert neue
Daten offenbar ohnehin erst danach, gezieltes Nachladen spart also
Rate-Limit-Budget gegenüber reinem Zeit-Takt. - Neuer Settings-Dialog (⚙-Button in der Toolbar) mit einem Reiter
"Columns": welche Item-Tabellen-Spalten sichtbar sind und in welcher
Reihenfolge lässt sich dort per Häkchen und Drag & Drop einstellen,
zusätzlich zum bisherigen schnellen Ein/Aus-Schalter im
Header-Rechtsklickmenü. Beide Wege teilen sich denselben gespeicherten
Stand. - Fenster lässt sich nicht mehr kleiner als 800x600 ziehen — darunter
wurden Bedienelemente in der Toolbar (u. a. das Suchfeld) hinter einem
Overflow-Pfeil versteckt. - Doppelklick auf ein Item öffnet eine vergrößerte Ansicht: großes Icon
und der vollständige Property-/Mod-Text ohne die Zeilen-Kürzung des
kompakten Detail-Panels. Bei Divination Cards zeigt sie das echte
Karten-Artwork (GGGs eigenes CDN) statt des für jede Karte identischen
generischen Icons aus der Stash-API, mit einem dekorativen
Pergament-Rahmen angelehnt an die bekannte Karten-Optik. - Doppelklick auf einen Charakter öffnet eine Paperdoll: Ausrüstung als
Puppenlayout (Helm, Waffen, Rüstung, Ringe, Gürtel, Handschuhe, Stiefel,
Flaschen, ggf. Waffentausch-Set/Trinket) statt flacher Tabellenzeilen,
inklusive Liste der Jewels im Passiv-Baum. Klick auf einen Slot zeigt das
Item im Detail-Panel. - Item-Tabelle startet jetzt voreingestellt aufsteigend nach Wert sortiert
statt in roher API-Reihenfolge — Items mit unbekanntem oder geringem
Preis ("wahrscheinlich Schrott") gruppieren sich dadurch von selbst oben.
Ein Klick auf eine andere Spalte überschreibt die Voreinstellung wie
jede normale Sortierung. - Rate-Limit-Dashboard: jede Regel zeigt jetzt zusätzlich eine grobe
Schätzung, wann der Zähler das nächste Mal sinkt ("12/30 · 300 s · next
in2:19", immer mit "" — GGGs Zähler sinkt blockweise statt gleitend
pro Treffer, sobald zwei Absenkungen beobachtet wurden, ist ihr
ungefährer Rhythmus gelernt). Kurz nach dem Start kann bauartbedingt
minutenlang nichts sinken — ohne diese Angabe sah der stillstehende
Zähler wie ein Hänger aus. - "Load All Tabs" zeigt im Fortschrittsdialog einen Sekunden-Countdown bis
zum nächsten Abruf ("Next tab in 8s") und, falls das Rate-Limit gerade
bremst, dessen Restzeit statt scheinbaren Stillstands. Zusätzlich springt
der Stash-Baum jeweils auf das gerade abgerufene Fach und klappt es auf. - Neuer Refresh-Modus Pause: keinerlei Hintergrund-Anfragen. Manuelle
Klicks, die ⟳-Buttons im Baum und "Load All Tabs" funktionieren
unverändert und bekommen das volle Rate-Limit-Budget. - Log: jede Rate-Limit-Antwort schreibt jetzt zusätzlich eine Zeile mit den
rohen X-Rate-Limit-Werte...
v0.2.0
[0.2.0] - 2026-07-29
Hinzugefügt
- Refresh-Modus-Dropdown (Auto / Single / Stash) in der Toolbar: Single
hält gezielt die aktuell gewählte Zeile aktuell, Stash zyklisiert durch
die ganze Truhe — beide in einem gleichmäßigen, aus den echten
Rate-Limit-Regeln abgeleiteten Takt statt eines Bursts. Stash bevorzugt
gefüllte Fächer, hängt aber nach jeder vollständigen Runde durch diese
automatisch einen Check für das nächste noch leere Fach an (Häufigkeit
passt sich an die Truhengröße an) — reihum der Fächerreihenfolge nach,
sodass ein im Spiel nach vorne verschobenes Fach automatisch schneller
wieder drankommt. - Sichtbarer Countdown bis zum nächsten Auto-Refresh-Tick bzw. der Grund,
warum er gerade pausiert (Rate-Limit, Token, archivierte Liga, …). - Stash-Baum: Name-Spalte skaliert automatisch mit dem Panel, Anzahl- und
Status-Spalte bleiben dadurch immer sichtbar. - Stash-Baum: Kontextmenü bietet jetzt "Expand All"/"Collapse All" für
den ganzen Baum, unabhängig vom angeklickten Fach. - Stash-Baum: neue Pos.-Spalte zeigt die tatsächliche Position eines
Fachs in der Truhen-Reihenfolge (leer bei Ordnern/Gruppen) — ein
Zeilenheader-Äquivalent für Bäume, die (anders als die ItemList) keinen
eigenen vertikalen Header kennen. - Stash-Baum: Name-Spalte geladener Fächer wird nach Datenalter
abgeblendet (aktuell < 1h normal, < 3h leicht, älter deutlicher),
damit veraltete Fächer sofort auffallen. Das zuletzt aktualisierte Fach
ist zusätzlich türkis markiert, bis das nächste Fach an der Reihe ist. - Der Stash-Modus lädt nach jeder vollständigen Runde durch die Truhe
zusätzlich einmal die Fach-Liste still nach — Umsortierungen, neue
oder entfernte Fächer im Spiel werden dadurch automatisch erkannt, ohne
auf einen manuellen Refresh oder Liga-Wechsel zu warten. - Typ-Filter-Symbole (Toolbar) reagieren jetzt auf drei Gesten statt nur
simplem An/Aus: ein Klick zeigt nur diesen einen Typ, Strg+Klick
schaltet gezielt einen weiteren Typ dazu oder wieder raus, und
Strg+Umschalt+Klick sowie Doppelklick zeigen wieder alle Typen. - Summe der Stack-Größe der gerade sichtbaren (gefilterten) Items in der
Statuszeile — reagiert live auf Suche, Spalten- und Typ-Filter. Erscheint
nur, wenn genau ein Item-Name sichtbar ist (sonst wäre die Summe über
verschiedene Item-Typen hinweg bedeutungslos).
Geändert
- Oberfläche und README vollständig auf Englisch umgestellt (internationale
Zielgruppe). Code-Kommentare und interne Doku bleiben Deutsch. - Auto-Refresh reserviert nur noch 10 % statt 50 % des Rate-Limit-Budgets
für manuelle Klicks. - Ein Klick auf ein Fach im Single-/Stash-Modus löst keinen sofortigen
Extra-Request mehr aus, sondern stellt das Fach an den Anfang der
Abarbeitungsliste — es ist damit beim nächsten regulären Takt dran.
Das kostet ein paar Sekunden, hält die Anfragerate aber konstant. - "Load All Tabs" beginnt jetzt mit den ältesten bzw. noch nie geladenen
Fächern statt mit der zufälligen Truhen-Reihenfolge — bricht man vorzeitig
ab, sind die dringendsten Fächer schon durch. - Stash-Baum standardmäßig breiter (340 statt 260px), damit Name-, Anzahl-,
Status- und Pos.-Spalte ohne manuelles Nachziehen sichtbar sind;
Fensterbreite entsprechend erhöht, damit die Toolbar-Suche nicht hinter
"…" verschwindet.
Behoben
- Rate-Limit-Dashboard und der Auto-Refresh-Zähler ("X von Y Stash-Tabs")
konnten dauerhaft veraltet bzw. bei 0 hängen bleiben, obwohl im
Hintergrund weiter aktualisiert wurde. - Der gleichmäßige Refresh-Takt konnte kurzzeitig mit der Rate-Limit-Policy
eines fremden Endpunkts statt der eigenen rechnen. - Beim Programmstart lief ohne gültiges Token trotzdem eine Stash-Abfrage
los und scheiterte mit HTTP 401. Ein solcher selbstverschuldeter 401
verwarf zudem das gespeicherte Token, was einen erneuten Browser-Login
erzwingen konnte. - "Load All Tabs" lief nach rund 29 Fächern in die 300-Sekunden-
Zwangspause. Es lädt jetzt im gleichmäßigen Takt (~11s pro Fach) einmal
durch die ganze Truhe; der Refresh-Modus pausiert solange. - Map- und Unique-Stash-Tabs wurden bei der Positionsnummer übergangen:
sie selbst bekamen keine, während jede ihrer internen Sektionen eine
eigene verbrauchte und alle folgenden Fächer verschob (in einer echten
Truhe 923 statt 391 Positionen). Gezählt wird jetzt, was in der
Truhen-Leiste tatsächlich einen Platz belegt. - Derselbe Zähl-Fehler betraf auch den Auto-Refresh-Zähler in der
Statuszeile ("X of Y stash tabs updated") — Y zeigte die aufgeblähte
Zahl ladbarer Einheiten (939) statt der tatsächlichen Fächer-Anzahl. - Die Reihenfolge im Stash-Baum wich sichtbar von der im Spiel ab: Fächer,
die im Spiel in einem Ordner liegen, standen auf der obersten Ebene und
schoben sich zwischen die echten Fächer, während die Ordner leer blieben
(in einer echten Truhe 165 statt 44 Einträge oben). Ordner-Inhalte hängen
jetzt in ihrem Ordner, auch ohne ihn vorher anzuklicken. - Nach dem Öffnen eines Ordners konnten dessen Fächer doppelt im Baum
stehen — einmal oben, einmal im Ordner (in einer Liga 47 Fächer). - Und ein drittes Mal denselben Fehler: der Fortschrittsbalken von
"Load All Tabs" zeigte z. B. "58/561" statt "58/391" — mehrere
Map-/Unique-Sektionen desselben Fachs zählten als mehrere Tabs statt
als einer. - Der Stash-Modus konnte sich in eine endlose Kette von 300-Sekunden-
Zwangspausen aufschaukeln: nach einer Pause feuerten zwei Requests
direkt hintereinander, was die nächste Pause auslöste. Der Takt zählt
jetzt ab dem Eintreffen der Antwort statt ab dem Absenden und hält
zusätzlich einen Request Sicherheitsabstand zur Sperrschwelle. - Die Suche fand Implicit-Mods nicht — nur explicitMods flossen in den
Suchindex ein, obwohl implicitMods im Datenmodell längst vorhanden war. - Die Suche filterte bei jedem Tastendruck sofort — bei einem liga-weiten
Aggregat mit mehreren zehntausend Items (z. B. "All Tabs" oder "*")
spürbar langsam. Der Zeilen-Filter läuft jetzt gedämpft (350ms nach dem
letzten Tastendruck). - Die neue Stack-Summen-Anzeige (siehe oben) konnte bei einer Suche über
ein liga-weites Aggregat mit stark verstreuten Treffern eine
Zwangspause von mehreren Minuten auslösen — pro betroffener Zeile lief
eine eigene Neuberechnung über die komplette sichtbare Menge statt
einmal pro Sucheingabe. - Bei sehr großen Ligen (deutlich mehr Fächer/Items als üblich) baute die
Suche beim ersten Tastendruck das komplette ungefilterte Aggregat auf,
bevor überhaupt gefiltert wurde — je nach Größe mehrere Sekunden
Verzögerung, die kein Dämpfer beheben konnte. Oberhalb von 50.000 Items
läuft die Suche jetzt "on demand": Sanduhr statt Live-Filterung, das
Ergebnis erscheint, sobald man kurz aufhört zu tippen.