# Changelog

## [0.1.33+34] – 2026-06-11

### Anrufe & Sprache
- Anruf-Steuerung neu platziert: eigenes "Dock" über dem Konto-Balken (Discord-Stil) statt darin eingebettet; das doppelte Mini-Panel im Profilbereich wurde entfernt.
- Alle Anrufe – auch Sprachkanäle – nutzen jetzt das vollwertige Mini-Call-Widget mit Mikrofon, Deafen, Kamera und Bildschirmübertragung.
- Ein-/Ausblenden des Call-Docks animiert (220 ms).
- Querformat-Optimierung: Stream-Vorschau schrumpft bei wenig Bildschirmhöhe (140 -> 84 px), damit die Raumliste nutzbar bleibt.
- Ausgabelautstärke-Regler (0–150 %) in "Sprache & Video", wirkt sofort auf laufende Anrufe.
- Geräteauswahl verdrahtet: Mikrofon/Lautsprecher/Kamera aus den Einstellungen werden jetzt tatsächlich auf Anrufe angewendet (vorher wurden die Einstellungen nirgends gelesen).
- Ehrliche Fehlermeldung, wenn Windows-Audiotreiber keine Geräteliste an WebRTC melden (bekannter libwebrtc-Bug; Anrufe laufen trotzdem über das Standardgerät).
- Bildschirmübertragungs-Picker passt sich kleinen Bildschirmen an.

### Chat & Medien
- Bilder werden nicht mehr abgeschnitten: Anpassung an die Chatbreite, kein Verzerren oder Hochskalieren mehr.
- SVG-Inline-Vorschau im Chat (vorher als generische Datei oder fehlerhaft).
- Video-Ladeplatzhalter passen sich der Breite an (keine festen 360 px).
- Lesebestätigungen verbessert: goldener Doppelhaken, Zusammenführung von globalen und Thread-Bestätigungen, korrektes Verhalten wenn die andere Person antwortet/liest.
- Drag-&-Drop-Overlay animiert (Scale + Fade + wippendes Icon, Akzent-Glow).
- Anhang-Dialog öffnet mit Scale-Animation.
- Tastatur-Zwischenablage (Android): frisch kopierte Bilder erscheinen in der Tastatur-Vorschlagsleiste und landen im Anhang-Dialog.
- Banner-Wechsel: Absturz ("setState returned a Future") und Doppelanzeige behoben.

### Profile & DMs
- Aufklappbarer DM-Header: Klick auf Avatar/Name klappt das Profil auf – Banner als Hintergrund, Avatar skaliert mit (32 -> 96 px), Name wächst, Handle + Biographie blenden ein.
- Profilbild-Bug beim schnellen DM-Wechsel behoben (kein Übersprechen mehr zwischen Kanälen).
- Profil-Einstellungen laden sofort aus dem Cache, Server-Daten parallel im Hintergrund.
- Persistenter Bild-Cache: Avatare und Banner sind nach Neustart sofort da statt nachzuladen.

### Spaces & Berechtigungen
- Selbst-Aussperr-Schutz: Berechtigungsänderungen werden gegen den echten Server-Stand gemischt (nie mehr den lokalen Cache überschreiben). Zusätzlich bricht Pyramid jede Änderung ab, die den eigenen Account aussperren würde.
- Space-Banner überleben jetzt App-Neustarts (importantStateEvents).
- Aussagekräftige Fehlerdiagnose bei abgelehnten Space-Änderungen.

### Präsenz / Online-Status
- Online wird nur noch angezeigt, wenn die letzte Aktivität < 5 Min. her ist (behebt "alle wirken online").
- Präsenz-Heartbeat von 10 s auf 55 s reduziert (weniger Netzwerk/Akku).

### Teilen
- "Teilen nach Pyramid" (Android): Text und Dateien aus anderen Apps teilen, mit Raum-Picker (Suche + Vorschau).

### Performance & Build
- Inter-Schrift als Asset gebündelt (google_fonts entfernt) – offline-fähig, schnellerer Start.
- Bilder laden zuerst als Thumbnail (spart Bandbreite, v. a. mobil).
- 12 tote Quelldateien und ungenutzte Abhängigkeit dynamic_color entfernt.
- Android-Release-Build: eigener Release-Keystore, R8/Minify + Resource-Shrinking, ProGuard-Keep-Regeln für WebRTC/LiveKit/Notifications.

### Infrastruktur (Server)
- Defekter Space "Just us serious" repariert: sauber dupliziert (gleicher Name/Topic/Avatar/Banner, alle 6 Kanäle, Admin-Rechte wiederhergestellt).

### Hinweis zur Verteilung
- Wegen des neuen Release-Keystores müssen bestehende (Debug-signierte) Android-Installationen einmalig deinstalliert und neu installiert werden – danach laufen Updates normal.
