Компактный диалог операции и кнопки, которые не уезжают

Пары Switch + Label заменены на Checkbox с встроенной подписью: строка
вместо трёх. Поля стали однострочными, чекбоксы дампа встали в ряд,
заголовок и имя базы слились в одну строку — диалог ужался с почти
целого экрана до 17-18 строк на любом размере консоли.

Ряд кнопок пропадал потому, что .dialog с height: auto складывал высоту
детей и упирался в max-height, обрезая нижнюю строку. Теперь у диалога
операции своя высота, а форма забирает остаток через height: 1fr и
скроллится сама. Диалог restore приведён к тому же виду.
This commit is contained in:
2026-08-20 05:36:01 +03:00
parent 9fdb02c72a
commit e8fd19714a
3 changed files with 129 additions and 72 deletions
+39 -12
View File
@@ -232,9 +232,47 @@ ModalScreen {
min-height: 3;
}
/* высота фиксирована, форма забирает остаток: иначе длинная форма выдавливала
ряд кнопок за нижнюю границу диалога, и «Начать» становилось не видно */
.op-dialog {
height: 90%;
max-height: 22;
min-height: 12;
}
.dialog > .form {
height: 1fr;
padding: 0;
}
.check-row, .field {
height: auto;
max-height: 24;
width: 1fr;
}
.check-row > Checkbox {
margin-right: 2;
}
.dialog .form Label.inline, .dialog .field Label.inline {
padding: 0 1 0 0;
height: 1;
}
.dialog .form Input, .dialog .field Input {
width: 1fr;
height: 1;
border: none;
background: $boost;
margin: 0 1 0 0;
}
.dialog .form Input.num, .dialog .field Input.num {
width: 6;
}
.dialog .form Input:focus {
background: $panel;
}
.dialog .section {
@@ -259,17 +297,6 @@ ModalScreen {
.dialog .form Label {
color: $text-muted;
padding: 0 0 0 1;
}
.dialog .form Input {
width: 1fr;
border: tall $panel;
background: $boost;
}
.dialog .form Input:focus {
border: tall $primary;
}
.dialog Collapsible > CollapsibleTitle {