As we need to add a file chooser to the overlay, we need the backend
functions for it to use.
This commit adds:
Local_Storage::get_parent_directory().
Local_Storage::is_directory().
Local_Storage::get_user_pictures_path().
Local_Storage::get_drive_list().
Posix version of DirectoryExists().
... settings directory.
Also adds some additional related debug logging, and a utility function
for converting between std::vector<image_pixel_t> used by Local_Storage::load_image(),
and std::string used by Settings::add_image().
... changes.
Implements STEAM_CALL_RESULT( AvatarImageLoaded_t ).
Adds support for a sending a STEAM_CALL_RESULT( PersonaStateChange_t ) with the k_EPersonaChangeAvatar flag.
Creates a mapping in Settings to hold the avatar image data.
Also adds additional debug logging to indicate which image handle is
returned for each user / image size.
Display achievement icons in steam_overlay, and during achievement
notifications.
Add total achievement counts and progress bar to steam_overlay.
Add new global settings for displaying unearned hidden achievements in
the achievement list and displaying achievement descriptions in unlock
notifications. (Both disabled by default.)
This creates a new "custom_master_server.txt" file that can be used to pre-seed a master server list.
This also allows for steam apps to manipulate the master server list in memory.
I.e. This implements:
Steam_Masterserver_Updater::AddMasterServer()
Steam_Masterserver_Updater::RemoveMasterServer()
Steam_Masterserver_Updater::GetNumMasterServers()
Steam_Masterserver_Updater::GetMasterServerAddress()
Signed-off-by: redpolline <11156324-redpolline@users.noreply.gitlab.com>
Note for googler's, this doesn't mean RemotePlay works / is being implemented.
Put the main stuff into its own .cpp.
Set up storage for holding descriptions. (*NOT* thread safe!)
Clears up a crash on init in SAO:FB.