fix shader next/prev
This commit is contained in:
parent
7a433a60a6
commit
c38adcabd3
|
@ -89,9 +89,15 @@ struct string_list *dir_list_new_special(const char *input_dir,
|
||||||
strlcat(ext_shaders, "cg|cgp", sizeof(ext_shaders));
|
strlcat(ext_shaders, "cg|cgp", sizeof(ext_shaders));
|
||||||
#endif
|
#endif
|
||||||
#ifdef HAVE_GLSL
|
#ifdef HAVE_GLSL
|
||||||
|
if (strstr(ext_shaders, "cg|cgp"))
|
||||||
|
strlcat(ext_shaders, "|glsl|glslp", sizeof(ext_shaders));
|
||||||
|
else
|
||||||
strlcat(ext_shaders, "glsl|glslp", sizeof(ext_shaders));
|
strlcat(ext_shaders, "glsl|glslp", sizeof(ext_shaders));
|
||||||
#endif
|
#endif
|
||||||
#ifdef HAVE_VULKAN
|
#ifdef HAVE_VULKAN
|
||||||
|
if (strstr(ext_shaders, "cg|cgp") || strstr(ext_shaders, "glsl|glslp"))
|
||||||
|
strlcat(ext_shaders, "|slang|slangp", sizeof(ext_shaders));
|
||||||
|
else
|
||||||
strlcat(ext_shaders, "slang|slangp", sizeof(ext_shaders));
|
strlcat(ext_shaders, "slang|slangp", sizeof(ext_shaders));
|
||||||
#endif
|
#endif
|
||||||
exts = ext_shaders;
|
exts = ext_shaders;
|
||||||
|
|
|
@ -504,10 +504,13 @@ static bool shader_dir_init(rarch_dir_list_t *dir_list)
|
||||||
static void runloop_check_shader_dir(rarch_dir_list_t *dir_list,
|
static void runloop_check_shader_dir(rarch_dir_list_t *dir_list,
|
||||||
bool pressed_next, bool pressed_prev)
|
bool pressed_next, bool pressed_prev)
|
||||||
{
|
{
|
||||||
|
|
||||||
char msg[128] = {0};
|
char msg[128] = {0};
|
||||||
const char *shader = NULL;
|
const char *shader = NULL;
|
||||||
enum rarch_shader_type type = RARCH_SHADER_NONE;
|
enum rarch_shader_type type = RARCH_SHADER_NONE;
|
||||||
|
|
||||||
|
RARCH_LOG("SWITCH \n");
|
||||||
|
|
||||||
if (!dir_list || !dir_list->list)
|
if (!dir_list || !dir_list->list)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -527,6 +530,7 @@ static void runloop_check_shader_dir(rarch_dir_list_t *dir_list,
|
||||||
return;
|
return;
|
||||||
|
|
||||||
shader = dir_list->list->elems[dir_list->ptr].data;
|
shader = dir_list->list->elems[dir_list->ptr].data;
|
||||||
|
RARCH_LOG("SWITCH %s,\n", shader);
|
||||||
|
|
||||||
switch (msg_hash_to_file_type(msg_hash_calculate(path_get_extension(shader))))
|
switch (msg_hash_to_file_type(msg_hash_calculate(path_get_extension(shader))))
|
||||||
{
|
{
|
||||||
|
@ -702,9 +706,13 @@ static bool runloop_check_state(event_cmd_state_t *cmd,
|
||||||
if (runloop_cmd_triggered(cmd, RARCH_MOVIE_RECORD_TOGGLE))
|
if (runloop_cmd_triggered(cmd, RARCH_MOVIE_RECORD_TOGGLE))
|
||||||
runloop_check_movie();
|
runloop_check_movie();
|
||||||
|
|
||||||
|
if (runloop_cmd_triggered(cmd, RARCH_SHADER_NEXT) ||
|
||||||
|
runloop_cmd_triggered(cmd, RARCH_SHADER_PREV))
|
||||||
|
{
|
||||||
runloop_check_shader_dir(shader_dir,
|
runloop_check_shader_dir(shader_dir,
|
||||||
runloop_cmd_triggered(cmd, RARCH_SHADER_NEXT),
|
runloop_cmd_triggered(cmd, RARCH_SHADER_NEXT),
|
||||||
runloop_cmd_triggered(cmd, RARCH_SHADER_PREV));
|
runloop_cmd_triggered(cmd, RARCH_SHADER_PREV));
|
||||||
|
}
|
||||||
|
|
||||||
if (runloop_cmd_triggered(cmd, RARCH_DISK_EJECT_TOGGLE))
|
if (runloop_cmd_triggered(cmd, RARCH_DISK_EJECT_TOGGLE))
|
||||||
command_event(CMD_EVENT_DISK_EJECT_TOGGLE, NULL);
|
command_event(CMD_EVENT_DISK_EJECT_TOGGLE, NULL);
|
||||||
|
|
Loading…
Reference in New Issue