Created attachment 22755 [details] transport Системы, обновленные до Sisyphus: kworkstation-11.4-x86-64 education-11.2-x86-64-kde Версия: kmailtransport-26.08.2-alt1 Шаги: 1. Запустить KMail. 2. Открыть Настройка → Настроить KMail → Учётные записи → Отправка. 3. Добавить 2 транспорта. 4. Назначить второй транспорт транспортом по умолчанию. Результат: Кнопка «Сделать основным» неактивна. Изменить транспорт по умолчанию невозможно. Ожидаемый результат: Кнопка «Сделать основным» активна. Выбранный транспорт можно назначить транспортом по умолчанию. Дополнительно: Не воспроизводится в p11
Анализ исходников объясняет регрессию между 26.04.3 и 26.08.2. В src/widgets/transportmanagementwidgetng.cpp, TransportManagementWidgetNgPrivate::updateButtonState(), доступность кнопки определяется сравнением: index.data(TransportModel::TransportRoles::DefaultRole).toInt() == TransportManager::self()->defaultTransportId() В TransportModel::data() роль DefaultRole возвращает ID текущего транспорта по умолчанию независимо от выбранной строки. Поэтому условие истинно для любого выбранного транспорта и кнопка отключается. Такое же сравнение используется при формировании контекстного меню. Ошибочное сравнение существовало и раньше, но изменение модели в серии 26.08 проявило дефект. В обновлении исходников до 26.08.1 (коммит ALT 7e292334ed22023e7ab1fbdfcbe3ad6f9b71b603) в src/transportmodel.cpp добавлена обработка ролей для QtQuick: раньше data() для роли, отличной от Qt::DisplayRole (за исключением отдельно обрабатываемой Qt::FontRole), возвращала пустой QVariant; теперь DefaultRole возвращает defaultTransportId(). Раньше пустое значение преобразовывалось в 0, и сравнение обычно позволяло включить кнопку; теперь сравниваются два одинаковых ID. Для исправления следует сравнивать ID выбранного транспорта (TransportIdentifierRole) с defaultTransportId(), а не значение DefaultRole. Исправить нужно как updateButtonState(), так и условие добавления действия «Set as Default» в контекстное меню. Аналогичное ошибочное сравнение обнаружено и в проверенном upstream master: https://invent.kde.org/pim/kmailtransport/-/blob/master/src/widgets/transportmanagementwidgetng.cpp Отдельный upstream bug report с этим симптомом при поиске не найден. Вывод о причине сделан по анализу исходников, без дополнительного GUI-воспроизведения.
kmailtransport-26.08.2-alt2 -> sisyphus: Wed Oct 21 2026 Sergey V Turchin <zerg@altlinux> 26.08.2-alt2 - fix changing the default transport (closes: #61139)