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 b8f8ce418e
Code reorganization and some improvements borrowed from kdbusnotification
5 months ago
interfaces Improve DBus XML code generation 5 months ago
src Code reorganization and some improvements borrowed from kdbusnotification 5 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 Add README 10 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 IS AN EARLY PROTOTYPE. USE WITH CARE.

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.

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:

  • 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 (*)
  • Email - request to send an e-mail via the system e-mail client
  • OpenURI - request to open a URL
  • Secret - integration with TDEWallet
  • Account - request user information (username, full name, user icon)
  • 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).