diff --git a/include/draw.h b/include/draw.h index 7d1e7aa..562845b 100644 --- a/include/draw.h +++ b/include/draw.h @@ -177,7 +177,7 @@ void draw_text_center(gfxScreen_t target, float y, float z, float scaleX, float void draw_home(u64 start_time, u64 cur_time); void draw_base_interface(void); -void draw_grid_interface(Entry_List_s * list, Instructions_s instructions); +void draw_grid_interface(Entry_List_s * list, Instructions_s instructions, int extra_mode); void draw_interface(Entry_List_s * list, Instructions_s instructions, DrawMode draw_mode); #endif diff --git a/source/draw.c b/source/draw.c index 1cc3336..c6c0234 100644 --- a/source/draw.c +++ b/source/draw.c @@ -514,7 +514,7 @@ static void draw_entry_info(Entry_s * entry) draw_text_wrap(20, 70, 0.5, 0.5, 0.5, colors[COLOR_WHITE], description, 363); } -void draw_grid_interface(Entry_List_s * list, Instructions_s instructions) +void draw_grid_interface(Entry_List_s * list, Instructions_s instructions, int extra_mode) { draw_base_interface(); EntryMode current_mode = list->mode; @@ -584,6 +584,11 @@ void draw_grid_interface(Entry_List_s * list, Instructions_s instructions) C2D_DrawRectSolid(horizontal_offset+list->entry_size-border_width, vertical_offset, 0.5f, border_width, list->entry_size, colors[COLOR_CURSOR]); } } + + if (extra_mode) + { + C2D_DrawRectSolid(0, 24, 0.6f, 320, 240-48, C2D_Color32(0, 0, 0, 128)); + } char entries_count_str[0x20] = {0}; sprintf(entries_count_str, "/%" JSON_INTEGER_FORMAT, list->tp_page_count); diff --git a/source/remote.c b/source/remote.c index c5c6d8e..c7e23db 100644 --- a/source/remote.c +++ b/source/remote.c @@ -494,7 +494,7 @@ bool themeplaza_browser(EntryMode mode) Instructions_s instructions = language.remote_instructions[mode]; if (extra_mode) instructions = language.remote_extra_instructions; - draw_grid_interface(current_list, instructions); + draw_grid_interface(current_list, instructions, extra_mode); } if (home_displayed) @@ -520,33 +520,36 @@ bool themeplaza_browser(EntryMode mode) if (extra_mode) { - if (kUp & KEY_X) - extra_mode = false; - if (!extra_mode) + if (kDown & KEY_B) { - if ((kDown | kHeld) & KEY_DLEFT) - { - change_mode: - mode++; - mode %= MODE_AMOUNT; + extra_mode = false; + } + else if (kDown & KEY_DLEFT) + { + extra_mode = false; + change_mode: + mode++; + mode %= MODE_AMOUNT; - free(current_list->tp_search); - current_list->tp_search = strdup(""); + free(current_list->tp_search); + current_list->tp_search = strdup(""); - load_remote_list(current_list, 1, mode, false); - } - else if ((kDown | kHeld) & KEY_DUP) - { - jump_menu(current_list); - } - else if ((kDown | kHeld) & KEY_DRIGHT) - { - load_remote_list(current_list, current_list->tp_current_page, mode, true); - } - else if ((kDown | kHeld) & KEY_DDOWN) - { - search_menu(current_list); - } + load_remote_list(current_list, 1, mode, false); + } + else if (kDown & KEY_DUP) + { + extra_mode = false; + jump_menu(current_list); + } + else if (kDown & KEY_DRIGHT) + { + extra_mode = false; + load_remote_list(current_list, current_list->tp_current_page, mode, true); + } + else if (kDown & KEY_DDOWN) + { + extra_mode = false; + search_menu(current_list); } continue; } diff --git a/source/ui_strings.c b/source/ui_strings.c index d929436..a5f7c97 100644 --- a/source/ui_strings.c +++ b/source/ui_strings.c @@ -286,7 +286,7 @@ const Language_s language_english = { "\uE001 Go back" }, { - "\uE002 Hold for more", + "\uE002 More options", "\uE003 Preview theme" }, { @@ -307,7 +307,7 @@ const Language_s language_english = { "\uE001 Go back" }, { - "\uE002 Hold for more", + "\uE002 More options", "\uE003 Preview splash" }, { @@ -323,7 +323,7 @@ const Language_s language_english = { }, .remote_extra_instructions = { - .info_line = "Release \uE002 to cancel or hold \uE006 and release \uE002 to do stuff", + .info_line = "\uE001 Leave extra menu", .instructions = { { "\uE079 Jump to page", @@ -542,7 +542,7 @@ const Language_s language_french = { .download_bgm = "Téléchargement de la musique,\nveuillez patienter...", .dump_single = "Extraction du thème installé,\nveuillez patienter...", .dump_all_official = "Extraction des thèmes officiels,\nveuillez patienter...", - .shuffle = "Shuffle: %i/10", + .shuffle = "Aléatoire: %i/10", }, .fs = { @@ -618,7 +618,7 @@ const Language_s language_french = { "\uE001 Retour" }, { - "\uE002 Maintenir pour +", + "\uE002 Plus d'options", "\uE003 Aperçu" }, { @@ -639,7 +639,7 @@ const Language_s language_french = { "\uE001 Retour" }, { - "\uE002 Maintenir pour +", + "\uE002 Plus d'options", "\uE003 Aperçu" }, { @@ -655,7 +655,7 @@ const Language_s language_french = { }, .remote_extra_instructions = { - .info_line = "Relâcher \uE002: annuler. Maintenir \uE006 et relâcher \uE002: choisir", + .info_line = "\uE001 Retour", .instructions = { { "\uE079 Aller à la page",