Dialog jako jedna vrstva, hlavicka bez rozmazani, znacka Zive odstranena

Otevreny dialog sekal video vedle portalu. Posledni rozmazana vrstva na
dashboardu byla lepici hlavicka (backdrop-blur-xl); pod prekryvem dialogu
ji prohlizec prepocitaval pri kazdem prekresleni (blikajici kurzor,
kolecko obnovy dat). Hlavicka ma plnou barvu, dialog je jeden fixed prekryv
s vycentrovanym panelem. Tecka a znacka Zive odstraneny z dashboardu
i z ukazkoveho panelu na webu, duplicitni blok prefers-reduced-motion
v index.css sloucen. Dokumentace 05, 22, 99.
This commit is contained in:
JiriUhlir
2026-09-09 20:55:13 +02:00
parent ea9387bea9
commit 5d41600578
10 changed files with 73 additions and 100 deletions
+3 -2
View File
@@ -20,8 +20,9 @@ V postrannim menu je pod Nastavenim tlacitko **Simulace**.
Portal drzi jedno SSE spojeni pro celou aplikaci. Zajistuje ho
`EventStreamProvider` v `web/src/components/dashboard/`.
- Stav spojeni ukazuje `LiveIndicator` v horni liste. Uzivatel musi poznat,
ze data nejsou ziva.
- Stav spojeni se v liste neukazuje. Ukazatel "Zive" s teckou byl
odstranen (rozhodnuti zadavatele); vypadek spojeni se pozna podle toho,
ze se prestanou objevovat bubliny udalosti.
- Prichozi udalosti ukazuje `EventToasts` jako bubliny vpravo dole.
- Data se obnovuji sama. `useApiQuery` ma volitelny `refetchOn` se seznamem typu
udalosti, po kterych se ma dotaz zopakovat. Vice udalosti tesne po sobe se
+13 -13
View File
@@ -193,22 +193,22 @@ karta si za to drzela vlastni rozmazanou vrstvu ve skladaci. Pri dvaceti
kartach na obrazovce to vytizilo GPU natolik, ze vedle portalu sekalo
prehravani videa.
Rozmazani patri jen tam, kde pod nim neco opravdu projizdi:
Na dashboardu **nema `backdrop-filter` nic**, ani lepici hlavicka. Rozmazani
zustalo jen na verejnem webu, kde neni zadny stream ani dialog:
| Kde | Trida |
| -------------------------- | ----------------- |
| lepici hlavicka dashboardu | `backdrop-blur-xl` |
| lepici hlavicka webu | `backdrop-blur-xl` |
| Kde | Trida |
| ----------------------------- | ------------------ |
| lepici hlavicka webu | `backdrop-blur-xl` |
| prekryv menu na verejnem webu | `backdrop-blur-xl` |
Podklad modalu a prekryv menu v portalu rozmazani **nemaji**: je to vrstva
pres celou obrazovku a pod ni lezi hlavicka, ktera rozmazana je. Kazda
animace pod dialogem (pulz tecky "Zive", spinner, obnova seznamu) pak
nutila prohlizec prepocitat rozmazani cele plochy, jeste pres to druhe -
a vedle portalu sekalo video pri kazdem otevrenem dialogu. Tmavy prekryv
s vyssim krytim (`bg-ink-950/85`) dela tutez praci zadarmo. Ze stejneho
duvodu tecka "Zive" nepulzuje: pulz ma jen stav, kdy se spojeni teprve
navazuje nebo obnovuje.
Duvod je dialog. Jeho prekryv (`bg-ink-950/85`) lezi pres cely viewport,
tedy i pres hlavicku. Rozmazana vrstva pod prekryvem se prepocitava pri
kazdem prekresleni pod nim, a v otevrenem dialogu se prekresluje porad:
blika kurzor ve fokusovanem poli, toci se kolecko obnovy dat, prichazi
bublina udalosti. Bez dialogu se hlavicka neprekresluje a rozmazani nic
nestoji, s dialogem bezelo cely cas a vedle portalu sekalo video. Plna barva
hlavicky (`bg-ink-900`) vypada pod tmavym prekryvem stejne a nestoji nic.
Tecka a znacka "Zive" v hlavicce byly odstraneny uplne.
**Zadna nekonecna animace nad velkou rozmazanou plochou.** Zare na prihlaseni
a na webu jsou staticke: animovat pruhlednost objektu s `blur(120px)` znamena
+23
View File
@@ -64,6 +64,29 @@ konektoru a provoznich dat, audit). V `tests/setup.ts` je `SEED_FILE`
prazdny, aby testy v pameti nezavisely na obsahu repa. Nove `scripts/**/*.mjs`
v eslintu jako Node ESM, `SEED_FILE` v `.env.example`.
## 2026-09-09 - Otevreny dialog sekal video (potreti): hlavicka bez rozmazani
Po dvou predchozich opravach (`.glass` a podklad dialogu bez rozmazani)
sekani trvalo, a to na kazdem dialogu a jen kdyz je otevreny. Spolecny
jmenovatel vsech dialogu je `Modal.tsx`: portal do `document.body`, prekryv
`fixed inset-0` pres cely viewport, zamek scrollu a focus do prvniho pole.
Sam o sobe nic trvale nedela. Co zmeni pro zbytek stranky: prekryv lezi
nad lepici hlavickou dashboardu, ktera mela jako posledni `backdrop-blur-xl`.
Rozmazana vrstva pod prekryvem se prepocitava pri kazdem prekresleni pod
nim, a v otevrenem dialogu se prekresluje porad (blikajici kurzor ve
fokusovanem poli, kolecko obnovy dat po udalosti ze streamu, bublina
udalosti). Bez dialogu se hlavicka neprekresluje a rozmazani nic nestoji.
Hlavicka dashboardu ma plnou barvu (`bg-ink-900`) bez `backdrop-blur`
(`DashboardLayout.tsx`). Dialog je jedna vrstva: prekryv `fixed inset-0`
s plnou vyskou a sirkou obrazovky a v nem vycentrovany panel (`m-auto`);
driv byl obal s posuvnikem a pod nim zvlast druhy fixed prvek s pozadim. Tecka a znacka "Zive" jsou odstraneny uplne, na
dashboardu i v ukazkovem panelu na webu (`LiveIndicator.tsx` smazan,
`Hero.tsx`, klic `panel.live` z prekladu). V `index.css` byl blok
`prefers-reduced-motion` dvakrat, zustal jeden. Rozmazani ma uz jen
hlavicka a menu verejneho webu, viz
[22-znacka-a-design.md](22-znacka-a-design.md).
## 2026-09-09 - Otevreny dialog sekal video (podruhe)
Po predchozi oprave (`.glass` bez rozmazani) zustalo rozmazani na podkladu