Поддержка портала в 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-адреса mailto

  • Use QFileDialog class to open files and, as of Qt 5.18.90, directories. Avoid using QFileDialog::DontUseNativeDialog.

  • Используйте KNotification::notify(), чтобы показать уведомление