Everything from port rounds 1-5 plus today's fixes, on top of upstream develop:
- Branding: Blap name/id (lol.utn.blap), purple #7c66e0 accent (both colorGreen*
and colorAlphaGreen* Compound ramps remapped), Hanken Grotesk, squircle
avatars, five-dot notification icon, de-branded strings across all locales
- Push: new libraries/pushproviders/ntfy module — FGS websocket to an ntfy
server's Matrix gateway, no Google. Includes base64 payload decode, restart
on boot/update/app-open, background-FGS-start crash guard, and a proactive
battery-optimization banner (Doze kills the socket without the exemption)
- Spoilers (MSC2010, interops with Blap desktop 1.0.3): render + tap-to-reveal,
Discord ||text|| send syntax, SPOILER_ filename convention for media both ways
- Home: Discord-style space rail, client-side room-list sections, DM-first sort
- Calls: embedded Element Call fork 0.20.3 assets (camera-off joins, bottom strip)
- Threads on by default; RTC ping timeline items hidden; reply-quote restyle
- URLs now point at git.utn.lol/enki/blap (was codeberg); version 26.07.2
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2 replace all actions have been performed:
- "SPDX-License-Identifier: AGPL-3.0-only" to "SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial"
- "Please see LICENSE in the repository root for full details." to "Please see LICENSE files in the repository root for full details."