archeus/include/arc/linux/dbus/dbus.h

39 lines
1.2 KiB
C
Raw Permalink Normal View History

#ifndef ARC_DBUS_H_
#define ARC_DBUS_H_
#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
#include <dbus/dbus.h>
#include <arc/std/vector.h>
/**
* @brief
*/
typedef struct ARC_DBus ARC_DBus;
void ARC_DBus_Create(ARC_DBus **dbus);
void ARC_DBus_Destroy(ARC_DBus *dbus);
//Docs: https://flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.Request.html#org-freedesktop-portal-request-response
void ARC_DBus_RequestResponse();
//Docs: https://flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.GlobalShortcuts.html#org-freedesktop-portal-globalshortcuts-createsession
void ARC_DBus_InitSession(ARC_DBus *dbus);
//Docs: https://flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.GlobalShortcuts.html#org-freedesktop-portal-globalshortcuts-bindshortcuts
//NOTE: this is a vector of ARC_DBusShortcut
void ARC_DBus_BindShortcuts(ARC_DBus *dbus, ARC_Vector *dbusShortcutVector);
//NOTE: https://flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.GlobalShortcuts.html#org-freedesktop-portal-globalshortcuts-listshortcuts
void ARC_DBus_ListShortcuts(ARC_DBus *dbus);
#ifdef __cplusplus
}
#endif
#endif // !ARC_DBUS_H_