Skip to content

Commit 63c4a39

Browse files
committed
RGUI: Playlist secondary thumbnail cycle improvement
1 parent f4e2cea commit 63c4a39

File tree

1 file changed

+23
-28
lines changed

1 file changed

+23
-28
lines changed

menu/drivers/rgui.c

Lines changed: 23 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -6811,6 +6811,18 @@ static void rgui_load_current_thumbnails(rgui_t *rgui, struct menu_state *menu_s
68116811
&thumbnails_missing))
68126812
rgui->flags |= RGUI_FLAG_ENTRY_HAS_THUMBNAIL;
68136813
}
6814+
else if (!string_is_empty(menu_st->thumbnail_path_data->left_path))
6815+
{
6816+
if (rgui_request_thumbnail(
6817+
(rgui->flags & RGUI_FLAG_SHOW_FULLSCREEN_THUMBNAIL)
6818+
? &rgui->fs_thumbnail
6819+
: &rgui->mini_left_thumbnail,
6820+
GFX_THUMBNAIL_LEFT,
6821+
&rgui->left_thumbnail_queue_size,
6822+
menu_st->thumbnail_path_data->left_path,
6823+
&thumbnails_missing))
6824+
rgui->flags |= RGUI_FLAG_ENTRY_HAS_LEFT_THUMBNAIL;
6825+
}
68146826

68156827
/* Left thumbnail
68166828
* (Note: there is no need to load this when viewing
@@ -7232,7 +7244,7 @@ static void rgui_action_switch_thumbnail(rgui_t *rgui)
72327244

72337245
/* Wrap secondary to no image, and skip logo */
72347246
if (cur_secondary > PLAYLIST_THUMBNAIL_MODE_LAST - PLAYLIST_THUMBNAIL_MODE_OFF - 2)
7235-
cur_secondary = 0;
7247+
cur_secondary = (cur_primary) ? 0 : 1;
72367248

72377249
configuration_set_uint(settings, settings->uints.menu_left_thumbnails, cur_secondary);
72387250
}
@@ -8014,17 +8026,18 @@ static void rgui_thumbnail_cycle_dupe(rgui_t *rgui)
80148026
{
80158027
settings_t *settings = config_get_ptr();
80168028

8017-
if (settings->uints.gfx_thumbnails == settings->uints.menu_left_thumbnails)
8029+
if ( settings->uints.gfx_thumbnails == settings->uints.menu_left_thumbnails
8030+
&& settings->uints.gfx_thumbnails)
80188031
{
80198032
unsigned tmp = (rgui->gfx_thumbnails_prev > 0)
8020-
? (unsigned)rgui->gfx_thumbnails_prev
8021-
: settings->uints.gfx_thumbnails + 1;
8033+
? (unsigned)rgui->gfx_thumbnails_prev
8034+
: settings->uints.gfx_thumbnails + 1;
8035+
8036+
if (tmp > 3)
8037+
tmp = 1;
8038+
80228039
configuration_set_uint(settings,
80238040
settings->uints.gfx_thumbnails, tmp);
8024-
8025-
if (settings->uints.gfx_thumbnails > 3)
8026-
configuration_set_uint(settings,
8027-
settings->uints.gfx_thumbnails, 1);
80288041
}
80298042
}
80308043

@@ -8138,28 +8151,10 @@ static enum menu_action rgui_parse_menu_entry_action(
81388151
new_action = MENU_ACTION_NOOP;
81398152

81408153
if ( (!(rgui->flags & RGUI_FLAG_SHOW_FULLSCREEN_THUMBNAIL))
8141-
&& rgui->gfx_thumbnails_prev < 0)
8154+
&& rgui->gfx_thumbnails_prev < 0
8155+
&& settings->uints.gfx_thumbnails)
81428156
rgui->gfx_thumbnails_prev = settings->uints.gfx_thumbnails;
81438157

8144-
/* Show fullscreen image from the left slot if main slot is empty */
8145-
if ( !rgui->mini_thumbnail.is_valid
8146-
&& rgui->mini_left_thumbnail.is_valid)
8147-
{
8148-
if ( (rgui->flags & RGUI_FLAG_SHOW_FULLSCREEN_THUMBNAIL)
8149-
&& rgui->gfx_thumbnails_prev > 0)
8150-
{
8151-
configuration_set_uint(settings,
8152-
settings->uints.gfx_thumbnails,
8153-
rgui->gfx_thumbnails_prev);
8154-
}
8155-
else if ((!(rgui->flags & RGUI_FLAG_SHOW_FULLSCREEN_THUMBNAIL)))
8156-
{
8157-
configuration_set_uint(settings,
8158-
settings->uints.gfx_thumbnails,
8159-
settings->uints.menu_left_thumbnails);
8160-
}
8161-
}
8162-
81638158
/* Avoid showing the same thumbnail after returning from fullscreen mode after cycling images */
81648159
if (rgui->flags & RGUI_FLAG_SHOW_FULLSCREEN_THUMBNAIL)
81658160
rgui_thumbnail_cycle_dupe(rgui);

0 commit comments

Comments
 (0)