Поддержка портала в GTK🔗
GTK будет прозрачно использовать порталы для некоторых функций, когда обнаружит, что используется внутри песочницы Flatpak. Вот несколько советов о том, что должны делать приложения GTK, чтобы извлечь из этого пользу.
Используйте
g_get_user_config_dir(),g_get_user_cache_dir()иg_get_user_data_dir()Чтобы найти правильное место для хранения конфигурации и данныхИспользуйте
GtkFileChooserNative(илиGtkFileChooserButton), чтобы открыть файлы. Поскольку «xdg-desktop-portal-gtk» 1.7.1 он также может открыть каталоги.Используйте
GtkPrintOperationдля печатиИспользуйте
gtk_show_uri_on_window()илиg_app_info_launch_default_for_uri()Чтобы открыть URIИспользуйте
gtk_application_inhibit()если вы хотите запретить простаивать или для выходаИспользуйте
g_application_send_notification()для отображения уведомленийИспользуйте свойство
GtkApplication::screensaver-activeдля отслеживания статуса экранной заставки
Кроме того, для тем и шрифтов GTK требуется xdg-desktop-portal-gtk. Он также используется в качестве запасного варианта для сборщика файлов, если основная реализация xdg-desktop-portal не поддерживает сбор файлов.
Поддержка портала в Qt и KDE🔗
Библиотеки Qt и KDE будут прозрачно использовать порталы для некоторых функций, когда обнаружат, что они используются внутри песочницы Flatpak. Вот несколько советов о том, что следует делать приложениям Qt или KDE, чтобы извлечь из этого пользу.
Используйте
QDesktopServices::openUrl(const QUrl &url)илиKIO::OpenUrlJob, чтобы открыть URI или отправить электронное письмо при использовании URL-адресаmailtoUse
QFileDialogclass to open files and, as of Qt5.18.90, directories. Avoid usingQFileDialog::DontUseNativeDialog.Используйте
KNotification::notify(), чтобы показать уведомление