mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-05-12 20:28:36 -07:00
@@ -480,33 +480,25 @@ static void browser_list_item_cb(
|
|||||||
browser->view,
|
browser->view,
|
||||||
FileBrowserModel * model,
|
FileBrowserModel * model,
|
||||||
{
|
{
|
||||||
model->list_loading = false;
|
if(model->item_cnt <= BROWSER_SORT_THRESHOLD) {
|
||||||
if(browser_is_list_load_required(model)) {
|
FuriString* selected = NULL;
|
||||||
model->list_loading = true;
|
if(model->item_idx > 0) {
|
||||||
int32_t load_offset = CLAMP(
|
selected = furi_string_alloc_set(
|
||||||
model->item_idx - ITEM_LIST_LEN_MAX / 2, (int32_t)model->item_cnt, 0);
|
items_array_get(model->items, model->item_idx)->path);
|
||||||
file_browser_worker_load(browser->worker, load_offset, ITEM_LIST_LEN_MAX);
|
}
|
||||||
|
|
||||||
if(model->item_cnt <= BROWSER_SORT_THRESHOLD) {
|
items_array_sort(model->items);
|
||||||
FuriString* selected = NULL;
|
|
||||||
if(model->item_idx > 0) {
|
|
||||||
selected = furi_string_alloc_set(
|
|
||||||
items_array_get(model->items, model->item_idx)->path);
|
|
||||||
}
|
|
||||||
|
|
||||||
items_array_sort(model->items);
|
if(selected != NULL) {
|
||||||
|
for(uint32_t i = 0; i < model->item_cnt; i++) {
|
||||||
if(selected != NULL) {
|
if(!furi_string_cmp(items_array_get(model->items, i)->path, selected)) {
|
||||||
for(uint32_t i = 0; i < model->item_cnt; i++) {
|
model->item_idx = i;
|
||||||
if(!furi_string_cmp(
|
break;
|
||||||
items_array_get(model->items, i)->path, selected)) {
|
|
||||||
model->item_idx = i;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
model->list_loading = false;
|
||||||
},
|
},
|
||||||
false);
|
false);
|
||||||
browser_update_offset(browser);
|
browser_update_offset(browser);
|
||||||
|
|||||||
Reference in New Issue
Block a user