diff --git a/README.md b/README.md index b4d86fd..64564e9 100644 --- a/README.md +++ b/README.md @@ -9,9 +9,9 @@ - Метаданные (длительность, разрешение, кодек) через ffprobe. - Постеры кадром из видео через ffmpeg, с кэшем на диске. - Виртуализированная сетка карточек, ленивая загрузка превью, поиск и сортировка. -- Настройки — выдвижной панелью в том же окне: папки библиотеки (с удалением), параметры - превью и сканирования, тема, очистка кэша. Всё пишется в `settings.json` и подхватывается - без перезапуска. +- Настройки — боковой панелью в том же окне (сетка сдвигается, а не перекрывается): папки + библиотеки с удалением, параметры превью и сканирования, тема, очистка кэша. Всё пишется + в `settings.json` и подхватывается без перезапуска. - Светлая, тёмная и системная темы; выбор запоминается. - Клик или Enter по карточке — открыть в системном плеере, правая кнопка — контекстное меню. @@ -63,9 +63,12 @@ dotnet test декодированием в нужную ширину. Память зависит от размера окна, а не от размера библиотеки. - **Scope на операцию.** `DbContext` живёт ровно одну операцию — ViewModel берёт `IServiceScopeFactory` и создаёт scope на каждый вызов. -- **Одно окно.** Настройки — панель поверх сетки, а не второе окно: библиотека остаётся - видна, в alt-tab ничего не добавляется, и приложение остаётся переносимым на +- **Одно окно.** Настройки — колонка макета, а не второе окно и не оверлей: открываясь, она + сдвигает сетку, и та переливается в меньшее число столбцов, оставаясь целиком доступной. + В alt-tab ничего не добавляется, и приложение остаётся переносимым на `ISingleViewApplicationLifetime`, где `ShowDialog` попросту не существует. + Верхняя и нижняя полосы обеих половин заданы одной парой стилей, поэтому разделители + читаются как сплошные линии через всё окно. - **Настройки — рабочая копия.** Панель правит снимок `AppSettings` и записывает его целиком только по «Сохранить», так что отмена не оставляет следов. Пересканирование запускается только если изменилось то, что влияет на состав библиотеки, — смена темы или ширины кадра diff --git a/src/PLib.Desktop/Themes/LibraryStyles.axaml b/src/PLib.Desktop/Themes/LibraryStyles.axaml index f293078..704e87f 100644 --- a/src/PLib.Desktop/Themes/LibraryStyles.axaml +++ b/src/PLib.Desktop/Themes/LibraryStyles.axaml @@ -104,56 +104,57 @@ - + - - - - - - - - + + + + + + + - diff --git a/src/PLib.Desktop/Themes/Palette.axaml b/src/PLib.Desktop/Themes/Palette.axaml index 5e0629c..dff86aa 100644 --- a/src/PLib.Desktop/Themes/Palette.axaml +++ b/src/PLib.Desktop/Themes/Palette.axaml @@ -1,49 +1,53 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/PLib.Desktop/Views/MainWindow.axaml b/src/PLib.Desktop/Views/MainWindow.axaml index 5a47ed0..718bd19 100644 --- a/src/PLib.Desktop/Views/MainWindow.axaml +++ b/src/PLib.Desktop/Views/MainWindow.axaml @@ -9,7 +9,7 @@ Title="PLib — видеотека" Width="1180" Height="760" - MinWidth="640" + MinWidth="1000" MinHeight="420" Background="{DynamicResource PageBackgroundBrush}" WindowStartupLocation="CenterScreen"> @@ -95,24 +95,22 @@ - + + + - + - @@ -122,6 +120,7 @@ -