diff --git a/source/arm11/atp.c b/source/arm11/atp.c index 2e1899e..6a8b53d 100644 --- a/source/arm11/atp.c +++ b/source/arm11/atp.c @@ -203,10 +203,6 @@ static void draw_options( int start_row, int start_idx, int option_cnt, int sele uint8_t* title_data[2]; \ title_data[0] = (uint8_t*)title; \ title_data[1] = &title_offset[idx_top]; \ - for( int i=0; i < idx_top; ++i ) \ - { \ - title_data[0] += title_offset[i]; \ - } \ container_paint( title_paint, (atp_callerdata_t)title_data, title_len-idx_top, idx_top ); \ draw_options( title_len - idx_top, 0, cnt, item_sel, provider, data ); \ } \ @@ -307,14 +303,15 @@ atp_error_t atp_select( atp_text_t title, atp_counter_t cnt, atp_itemprovider_t // 更新view if( full_refresh ) {// 重新绘制全部 + item_sel = sel; REFRESH_PAGE; } else {// 重新绘制item_sel和sel draw_one_option( item_sel, sel, SELECTED_ROW(idx_top, title_len, item_sel), provider, data ); draw_one_option( sel, sel, SELECTED_ROW(idx_top, title_len, sel), provider, data); + item_sel = sel; } - item_sel = sel; } else if( key & (KEY_LEFT | KEY_RIGHT) ) {