Full-screen dog loader overlay with dim background and input blocking
- DogLoader now covers the whole window (dock top + _loading layer),
dims the dashboard behind it ($background 80%), draws a centered
rounded panel with a running ASCII dog and a 🐾 paw trail
- block keyboard bindings (check_action) and drop focus while refreshing;
restore focus to models table afterwards
- removed the docked progress line (covered by the overlay)
- docs updated; tests: full-screen coverage + input blocking
This commit is contained in:
+11
-4
@@ -7,13 +7,20 @@
|
||||
Анимация-«собачка» при обновлении статистики.
|
||||
|
||||
### Добавлено
|
||||
- Экран **Dashboard**: ASCII-«собачка» (`DogLoader`) как индикатор загрузки —
|
||||
центрированный overlay поверх дашборда с анимацией (виляет хвостом,
|
||||
кадры меняются каждые 0,15 с) и подписью «Обновление статистики…».
|
||||
- Индикация обновления в нижней строке (`#progress-line`, `dock: bottom`).
|
||||
- Экран **Dashboard**: полноэкранный индикатор загрузки — бегущая ASCII-собачка
|
||||
поверх всего окна с полупрозрачным затемнением (`$background 80%`),
|
||||
панелью по центру (рамка `border: round`), дорожкой из 🐾 и подписью
|
||||
«Обновление статистики…». Анимация: переставляет лапы и виляет хвостом
|
||||
(4 кадра, 0,12 с).
|
||||
- На время загрузки ввод блокируется (горячие клавиши и фокус), после
|
||||
завершения — возвращается.
|
||||
- Показывается при автообновлении по таймеру и при ручном обновлении (`r`);
|
||||
скрывается по завершении загрузки.
|
||||
|
||||
### Исправлено
|
||||
- Индикатор больше не конфликтует со встроенным `Widget.loading` Textual
|
||||
(ранее из-за одноимённого reactive показывались встроенные «точки»).
|
||||
|
||||
### Примечание
|
||||
- Реализует задачу #1 («Новая загрузка обновления статистики»).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user