Summary: | Пустое окно на некоторых шагах Мастера установки | ||
---|---|---|---|
Product: | Sisyphus | Reporter: | Evgeny Shesteperov <alimektor> |
Component: | howdy | Assignee: | Leontiy Volodin <lvol> |
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
Severity: | normal | ||
Priority: | P5 | CC: | golubevan, lvol |
Version: | unstable | ||
Hardware: | x86_64 | ||
OS: | Linux |
Description
Evgeny Shesteperov
2023-11-18 20:08:07 MSK
Такое же поведение воспроизводится со следующими шагами "Настройка камеры. Мигает ли инфракрасный диод", "Добавление образца лица". Это выглядит как некоторая особенность работы GTK, но странным образом, если по результатам обработчика клика на кнопку "Далее", эта кнопка имеет свойство sensivity == 1, то у контейнера следующего слайда не происходит перерасчёт размера. Поэтому слайд имеет нулевые размеры и не отображается. Если же изменить размер окна, это вызывает перерасчёт всех размеров, и слайд начинает отображаться нормально. Ещё более интересно, что ошибка не воспроизводится на одной из машин, доступных мне, хотя, кажется, версии всех пакетов совпадают. Видимо, основной причиной можно назвать то, что авторы gtk-howdy для отображения слайдов не использовали предназначенный для этого виджет Gtk.Stack, а использовали обычный Gtk.Box, при этом скрывая или показывая некоторые куски в зависимости от того, что должно быть видно. Поэтому, при "переключении" слайда не происходит перерасчёта размеров, что можно назвать особенностью GTK. Изменение свойства sensivity у кнопки "Далее" приводит к необходимости перерасчитать размеры всех сгруппированных с ней виджетов, в т.ч. контейнера слайдов и его видимых детей, поэтому новый слайд становится видим. На другой машине проблема не воспроизводится, потому что там другая GTK-3 тема, видимо после клика на кнопку далее происходит её анимация, которая также вызывает перерасчёт размеров и как следствие "проявление" слайда. Проблему можно исправить, принудительно вызывая метод queue_resize у виджета slidecontainer в конце обработчика клика на кнопку "Далее". howdy-3.0.0-alt11.beta1.gitc5b1766 -> sisyphus: Tue Dec 05 2023 Anton Golubev <golubevan@altlinux> 3.0.0-alt11.beta1.gitc5b1766 - howdy-gtk: Add default args to exit functions (ALT #48543) - Don't pkexec if already root - Handle the case if there are no cameras via except (ALT #48544) - Show real camera ID in the 'Video' tab (ALT #48542) - Don't add a model if the user list is empty (ALT #48529) - More correct preview when stretching the window (ALT #48527) - Remove reading of non-existent '_variables' file (ALT #48500) - Update the container when the slide changes (ALT #48502) - Also use PKEXEC_UID to get username (ALT #48503) |