Implementation of the XDG Desktop Portal API for TDE
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
Mavridis Philippe 2397c7e9cb
FileDialog: Use Async methods and result sender thread
2 months ago
interfaces FileDialog: Use Async methods and result sender thread 2 months ago
src FileDialog: Use Async methods and result sender thread 2 months ago
.gitignore Initial commit 10 months ago
CMakeLists.txt Fix installation prefix for XDG portal definition 9 months ago
ConfigureChecks.cmake Initial commit 10 months ago
README.md Updated README 5 months ago
config.h.cmake Initial commit 10 months ago

README.md

xdg-desktop-portal-tde

What is this?

This is an implementation of the FreeDesktop Portals API.

This implementation exposes TDE APIs to applications which use the Portals API. As a result, these applications can transparently use native APIs and dialogs.

Read more about the portals API on its official website.

How do I use this?

Before using this, make sure you have the xdg-desktop-portal package installed and running on your system.

Some applications respect the GTK_USE_PORTAL=1 and GDK_DEBUG=portals environment variables (most GTK applications and some Chromium-based browsers, e.g. Vivaldi).

To make Firefox use the Portals API, go to about:config, search for options that start with "widget.use-xdg-desktop-portal" and, if they are set to 2, set them to 1.

State of implementation

Currently implemented are the following interfaces:

  • Account - request user information (user ID, full name, user icon)
  • Email - request to send an e-mail via the system e-mail client
  • FileChooser - request a file dialog

The following implementations are planned (listed in no particular order):

  • Screenshot - request a screenshot
  • App Chooser - show a "Open with..." dialog for a file
  • Clipboard - request clipboard access (*)
  • OpenURI - request to open a URL
  • Secret - integration with TDEWallet
  • Access - show a grant access dialog
  • Wallpaper - request to change the user's wallpaper
  • Print - request a file to be printed

(*) Needs Session interface implementation

Additionaly, it must be noted that the implementation does not currently support the Documents portal API (and therefore sandboxed applications).