mirror of
https://github.com/libretro/RetroArch
synced 2025-03-02 19:13:34 +00:00
(Widgets) onscreen Notifications -> Add setting to enable/disable 'take
screenshot' widget individually
This commit is contained in:
parent
723b42f655
commit
ccd9b8ead4
@ -741,6 +741,12 @@ static const bool audio_enable_menu_bgm = false;
|
||||
#define DEFAULT_NOTIFICATION_SHOW_AUTOCONFIG true
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_SCREENSHOTS)
|
||||
#define DEFAULT_NOTIFICATION_SHOW_SCREENSHOT_TAKEN true
|
||||
#else
|
||||
#define DEFAULT_NOTIFICATION_SHOW_SCREENSHOT_TAKEN false
|
||||
#endif
|
||||
|
||||
/* Display a notification when cheats are being
|
||||
* applied */
|
||||
#define DEFAULT_NOTIFICATION_SHOW_CHEATS_APPLIED true
|
||||
|
@ -1473,6 +1473,7 @@ static struct config_bool_setting *populate_settings_bool(
|
||||
SETTING_BOOL("audio_enable", &settings->bools.audio_enable, true, DEFAULT_AUDIO_ENABLE, false);
|
||||
SETTING_BOOL("menu_enable_widgets", &settings->bools.menu_enable_widgets, true, DEFAULT_MENU_ENABLE_WIDGETS, false);
|
||||
SETTING_BOOL("menu_show_load_content_animation", &settings->bools.menu_show_load_content_animation, true, DEFAULT_MENU_SHOW_LOAD_CONTENT_ANIMATION, false);
|
||||
SETTING_BOOL("notification_show_screenshot_taken", &settings->bools.notification_show_screenshot_taken, true, DEFAULT_NOTIFICATION_SHOW_SCREENSHOT_TAKEN, false);
|
||||
SETTING_BOOL("notification_show_autoconfig", &settings->bools.notification_show_autoconfig, true, DEFAULT_NOTIFICATION_SHOW_AUTOCONFIG, false);
|
||||
SETTING_BOOL("notification_show_cheats_applied", &settings->bools.notification_show_cheats_applied, true, DEFAULT_NOTIFICATION_SHOW_CHEATS_APPLIED, false);
|
||||
SETTING_BOOL("notification_show_remap_load", &settings->bools.notification_show_remap_load, true, DEFAULT_NOTIFICATION_SHOW_REMAP_LOAD, false);
|
||||
|
@ -159,6 +159,7 @@ typedef struct settings
|
||||
bool filter_by_current_core;
|
||||
bool menu_enable_widgets;
|
||||
bool menu_show_load_content_animation;
|
||||
bool notification_show_screenshot_taken;
|
||||
bool notification_show_autoconfig;
|
||||
bool notification_show_cheats_applied;
|
||||
bool notification_show_remap_load;
|
||||
|
@ -4320,6 +4320,10 @@ MSG_HASH(
|
||||
MENU_ENUM_LABEL_NOTIFICATION_SHOW_AUTOCONFIG,
|
||||
"notification_show_autoconfig"
|
||||
)
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_NOTIFICATION_SHOW_SCREENSHOT_TAKEN,
|
||||
"notification_show_screenshot_taken"
|
||||
)
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_NOTIFICATION_SHOW_CHEATS_APPLIED,
|
||||
"notification_show_cheats_applied"
|
||||
|
@ -3408,6 +3408,10 @@ MSG_HASH(
|
||||
MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_AUTOCONFIG,
|
||||
"Input (Autoconfig) Connection Notifications"
|
||||
)
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_TAKEN,
|
||||
"Screenshot Notifications"
|
||||
)
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_CHEATS_APPLIED,
|
||||
"Cheat Code Notifications"
|
||||
@ -3420,6 +3424,10 @@ MSG_HASH(
|
||||
MENU_ENUM_SUBLABEL_NOTIFICATION_SHOW_AUTOCONFIG,
|
||||
"Display an on-screen message when connecting/disconnecting input devices."
|
||||
)
|
||||
MSG_HASH(
|
||||
MENU_ENUM_SUBLABEL_NOTIFICATION_SHOW_SCREENSHOT_TAKEN,
|
||||
"Display an on-screen message when screenshots are taken."
|
||||
)
|
||||
MSG_HASH(
|
||||
MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_REMAP_LOAD,
|
||||
"Input Remap Loaded Notifications"
|
||||
|
@ -381,6 +381,9 @@ DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_restart_retroarch, MENU_
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_widgets, MENU_ENUM_SUBLABEL_MENU_WIDGETS_ENABLE)
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_menu_show_load_content_animation, MENU_ENUM_SUBLABEL_MENU_SHOW_LOAD_CONTENT_ANIMATION)
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_notification_show_autoconfig, MENU_ENUM_SUBLABEL_NOTIFICATION_SHOW_AUTOCONFIG)
|
||||
#ifdef HAVE_SCREENSHOTS
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_notification_show_screenshot_taken, MENU_ENUM_SUBLABEL_NOTIFICATION_SHOW_SCREENSHOT_TAKEN)
|
||||
#endif
|
||||
#ifdef HAVE_CHEATS
|
||||
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_notification_show_cheats_applied, MENU_ENUM_SUBLABEL_NOTIFICATION_SHOW_CHEATS_APPLIED)
|
||||
#endif
|
||||
@ -2991,6 +2994,11 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs,
|
||||
case MENU_ENUM_LABEL_NOTIFICATION_SHOW_AUTOCONFIG:
|
||||
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_notification_show_autoconfig);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_NOTIFICATION_SHOW_SCREENSHOT_TAKEN:
|
||||
#ifdef HAVE_SCREENSHOTS
|
||||
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_notification_show_screenshot_taken);
|
||||
#endif
|
||||
break;
|
||||
case MENU_ENUM_LABEL_NOTIFICATION_SHOW_CHEATS_APPLIED:
|
||||
#ifdef HAVE_CHEATS
|
||||
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_notification_show_cheats_applied);
|
||||
|
@ -7563,6 +7563,9 @@ unsigned menu_displaylist_build_list(
|
||||
{MENU_ENUM_LABEL_MEMORY_UPDATE_INTERVAL, PARSE_ONLY_UINT, false },
|
||||
{MENU_ENUM_LABEL_MENU_SHOW_LOAD_CONTENT_ANIMATION, PARSE_ONLY_BOOL, false },
|
||||
{MENU_ENUM_LABEL_NOTIFICATION_SHOW_AUTOCONFIG, PARSE_ONLY_BOOL, true },
|
||||
#ifdef HAVE_SCREENSHOTS
|
||||
{MENU_ENUM_LABEL_NOTIFICATION_SHOW_SCREENSHOT_TAKEN, PARSE_ONLY_BOOL, true },
|
||||
#endif
|
||||
{MENU_ENUM_LABEL_NOTIFICATION_SHOW_CHEATS_APPLIED, PARSE_ONLY_BOOL, true },
|
||||
{MENU_ENUM_LABEL_NOTIFICATION_SHOW_REMAP_LOAD, PARSE_ONLY_BOOL, true },
|
||||
{MENU_ENUM_LABEL_NOTIFICATION_SHOW_CONFIG_OVERRIDE_LOAD, PARSE_ONLY_BOOL, true },
|
||||
|
@ -12606,6 +12606,21 @@ static bool setting_append_list(
|
||||
general_read_handler,
|
||||
SD_FLAG_NONE);
|
||||
|
||||
CONFIG_BOOL(
|
||||
list, list_info,
|
||||
&settings->bools.notification_show_screenshot_taken,
|
||||
MENU_ENUM_LABEL_NOTIFICATION_SHOW_SCREENSHOT_TAKEN,
|
||||
MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_TAKEN,
|
||||
DEFAULT_NOTIFICATION_SHOW_SCREENSHOT_TAKEN,
|
||||
MENU_ENUM_LABEL_VALUE_OFF,
|
||||
MENU_ENUM_LABEL_VALUE_ON,
|
||||
&group_info,
|
||||
&subgroup_info,
|
||||
parent_group,
|
||||
general_write_handler,
|
||||
general_read_handler,
|
||||
SD_FLAG_NONE);
|
||||
|
||||
CONFIG_BOOL(
|
||||
list, list_info,
|
||||
&settings->bools.notification_show_cheats_applied,
|
||||
|
@ -2565,6 +2565,7 @@ enum msg_hash_enums
|
||||
MENU_LABEL(MENU_SHOW_LOAD_CONTENT_ANIMATION),
|
||||
|
||||
MENU_LABEL(NOTIFICATION_SHOW_AUTOCONFIG),
|
||||
MENU_LABEL(NOTIFICATION_SHOW_SCREENSHOT_TAKEN),
|
||||
MENU_LABEL(NOTIFICATION_SHOW_CHEATS_APPLIED),
|
||||
MENU_LABEL(NOTIFICATION_SHOW_REMAP_LOAD),
|
||||
MENU_LABEL(NOTIFICATION_SHOW_CONFIG_OVERRIDE_LOAD),
|
||||
|
@ -67,6 +67,7 @@ struct screenshot_task_state
|
||||
bool is_paused;
|
||||
bool history_list_enable;
|
||||
bool widgets_ready;
|
||||
bool widgets_take_screenshot;
|
||||
|
||||
int pitch;
|
||||
unsigned width;
|
||||
@ -236,7 +237,8 @@ static void task_screenshot_callback(retro_task_t *task,
|
||||
if (!state)
|
||||
return;
|
||||
|
||||
if (!state->silence && state->widgets_ready)
|
||||
if (!state->silence && state->widgets_ready
|
||||
&& state->widgets_take_screenshot)
|
||||
gfx_widget_screenshot_taken(dispwidget_get_ptr(),
|
||||
state->shotname, state->filename);
|
||||
|
||||
@ -288,8 +290,10 @@ static bool screenshot_dump(
|
||||
state->userbuf = userbuf;
|
||||
#if defined(HAVE_GFX_WIDGETS)
|
||||
state->widgets_ready = gfx_widgets_ready();
|
||||
state->widgets_take_screenshot= settings->bools.notification_show_screenshot_taken;
|
||||
#else
|
||||
state->widgets_ready = false;
|
||||
state->widgets_take_screenshot= false;
|
||||
#endif
|
||||
state->silence = savestate;
|
||||
state->history_list_enable = settings->bools.history_list_enable;
|
||||
|
Loading…
x
Reference in New Issue
Block a user