Add 'restart replay on save' option

This commit is contained in:
dec05eba
2025-01-24 00:42:33 +01:00
parent 5b84d7421f
commit f036fcbc0f
11 changed files with 144 additions and 5 deletions

View File

@@ -90,6 +90,7 @@ namespace gsr {
RecordOptions record_options;
std::string turn_on_replay_automatically_mode = "dont_turn_on_automatically";
bool save_video_in_game_folder = false;
bool restart_replay_on_save = false;
bool show_replay_started_notifications = true;
bool show_replay_stopped_notifications = true;
bool show_replay_saved_notifications = true;

View File

@@ -2,6 +2,7 @@
#include <string>
#include <vector>
#include <stdint.h>
#include <mglpp/system/vec.hpp>
@@ -24,6 +25,21 @@ namespace gsr {
mgl::vec2i size;
};
struct GsrVersion {
uint8_t major = 0;
uint8_t minor = 0;
uint8_t patch = 0;
bool operator>(const GsrVersion &other) const;
bool operator>=(const GsrVersion &other) const;
bool operator<(const GsrVersion &other) const;
bool operator<=(const GsrVersion &other) const;
bool operator==(const GsrVersion &other) const;
bool operator!=(const GsrVersion &other) const;
std::string to_string() const;
};
struct SupportedCaptureOptions {
bool window = false;
bool focused = false;
@@ -40,6 +56,7 @@ namespace gsr {
struct SystemInfo {
DisplayServer display_server = DisplayServer::UNKNOWN;
bool supports_app_audio = false;
GsrVersion gsr_version;
};
enum class GpuVendor {

View File

@@ -97,6 +97,7 @@ namespace gsr {
std::unique_ptr<List> create_replay_time();
std::unique_ptr<RadioButton> create_start_replay_automatically();
std::unique_ptr<CheckBox> create_save_replay_in_game_folder();
std::unique_ptr<CheckBox> create_restart_replay_on_save();
std::unique_ptr<Label> create_estimated_replay_file_size();
void update_estimated_replay_file_size();
std::unique_ptr<CheckBox> create_save_recording_in_game_folder();
@@ -170,6 +171,7 @@ namespace gsr {
List *stream_url_list_ptr = nullptr;
List *container_list_ptr = nullptr;
CheckBox *save_replay_in_game_folder_ptr = nullptr;
CheckBox *restart_replay_on_save = nullptr;
Label *estimated_file_size_ptr = nullptr;
CheckBox *show_replay_started_notification_checkbox_ptr = nullptr;
CheckBox *show_replay_stopped_notification_checkbox_ptr = nullptr;