Sunshine0.0.5917
Sunshine 0.0.5917
Self-hosted game stream host for Moonlight.
Loading...
Searching...
No Matches
system_tray.h File Reference

Declarations for the system tray icon and notification system. More...

#include <memory>
#include <string>
#include <string_view>
Include dependency graph for system_tray.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  system_tray
 Handles the system tray icon and notification system.

Functions

int system_tray::end_tray ()
 Exit the system tray.
int system_tray::init_tray ()
 Initializes the system tray without starting a loop.
int system_tray::init_tray_threaded ()
 Initializes and runs the system tray in a separate thread.
void system_tray::prepare_tray_virtualhid_driver ()
 Query the Virtual HID Broker version and prepare its startup notification.
void system_tray::prepare_tray_virtualhid_license ()
 Query the Virtual HID Broker license and prepare the startup tray state.
int system_tray::process_tray_events ()
 Processes a single tray event iteration.
void system_tray::run_tray_until_exit (const std::shared_ptr< safe::event_t< bool > > &shutdown_event)
 Process tray events until exit and notify the application's workers.
void system_tray::tray_donate_github_cb (struct tray_menu *item)
 Callback for opening GitHub Sponsors from the system tray.
void system_tray::tray_donate_patreon_cb (struct tray_menu *item)
 Callback for opening Patreon from the system tray.
void system_tray::tray_donate_paypal_cb (struct tray_menu *item)
 Callback for opening PayPal donation from the system tray.
void system_tray::tray_open_ui_cb (struct tray_menu *item)
 Callback for opening the UI from the system tray.
void system_tray::tray_quit_cb (struct tray_menu *item)
 Callback for exiting Sunshine from the system tray.
void system_tray::tray_reset_display_device_config_cb (struct tray_menu *item)
 Callback for resetting display device configuration.
void system_tray::tray_restart_cb (struct tray_menu *item)
 Callback for restarting Sunshine from the system tray.
void system_tray::tray_virtualhid_download_cb (struct tray_menu *item)
 Callback for opening the latest Virtual HID Broker release.
void system_tray::tray_virtualhid_license_cb (struct tray_menu *item)
 Callback for opening Virtual HID Broker license settings in the Web UI.
void system_tray::update_tray_pausing (std::string app_name)
 Sets the tray icon in pausing mode (stream stopped but app running) and spawns the appropriate notification.
void system_tray::update_tray_playing (std::string app_name)
 Sets the tray icon in playing mode and spawns the appropriate notification.
void system_tray::update_tray_require_pin ()
 Spawns a notification for PIN Pairing. Clicking it opens the PIN Web UI Page.
void system_tray::update_tray_stopped (std::string app_name)
 Sets the tray icon in stopped mode (app and stream stopped) and spawns the appropriate notification.
void system_tray::update_tray_virtualhid_driver (bool installed, std::string_view version, bool version_compatible, std::string_view supported_versions)
 Show an update notification for an unsupported Virtual HID Broker.
void system_tray::update_tray_virtualhid_license (const lvh::LicenseStatus &license, bool notify_if_unlicensed)
 Update the Virtual HID Broker license submenu and optional notification.

Detailed Description

Declarations for the system tray icon and notification system.