#ifndef ARC_DBUS_H_ #define ARC_DBUS_H_ #ifdef __cplusplus extern "C" { #endif #include #include #include /** * @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_