feat(DM): instant cache load, manual refresh, full-screen season selector, season persistence fix
- Cache loads synchronously on onShow for instant startup, no auto fetch - Added manual Refresh button, removed auto refresh that blocked UI - Made UI non-blocking during fetch (episode list usable while fetching) - Fixed season loss after player/downloader by preserving season in static s_preserved_season surviving G memset - Season selector now full-screen overlay parented to lv_scr_act() - Removed DL Missing batch button and bottom help/status label per UX request - load_state no longer overwrites browsing season with last_slug season
This commit is contained in:
@@ -151,7 +151,8 @@ void load_state(){
|
||||
if(lsn&&cJSON_IsNumber(lsn)) G.cur_season=lsn->valueint;
|
||||
if(ls&&cJSON_IsString(ls)){
|
||||
strncpy(G.last_slug, ls->valuestring, sizeof(G.last_slug)-1);
|
||||
for(int i=0;i<G.ep_cnt;i++) if(strcmp(G.eps[i].slug,ls->valuestring)==0){ G.cur_ep_idx=i; G.cur_season=G.eps[i].season; break; }
|
||||
// Do NOT overwrite cur_season here based on slug – browsing season is independent
|
||||
// cur_ep_idx will be resolved after cache load in onShow
|
||||
}
|
||||
cJSON* poss=cJSON_GetObjectItem(r,"positions");
|
||||
if(poss && cJSON_IsObject(poss)){
|
||||
|
||||
Reference in New Issue
Block a user