|
| 1 | +#![allow(clippy::await_holding_refcell_ref)] |
| 2 | + |
1 | 3 | use crate::components::renderer_fn::renderer_fn; |
2 | 4 | use crate::loaded_rows::{LoadedRows, RowState}; |
3 | 5 | use crate::selection::Selection; |
@@ -230,6 +232,7 @@ where |
230 | 232 | let set_known_row_count = set_known_row_count.clone(); |
231 | 233 |
|
232 | 234 | async move { |
| 235 | + // TODO: can we avoid this? |
233 | 236 | let row_count = rows.borrow().row_count().await; |
234 | 237 |
|
235 | 238 | // check if this component was disposed of |
@@ -298,7 +301,7 @@ where |
298 | 301 | }); |
299 | 302 |
|
300 | 303 | let selected_indices = match selection { |
301 | | - Selection::None => Signal::derive(|| HashSet::new()), |
| 304 | + Selection::None => Signal::stored(HashSet::new()), |
302 | 305 | Selection::Single(selected_index) => Signal::derive(move || { |
303 | 306 | selected_index |
304 | 307 | .get() |
@@ -479,6 +482,7 @@ where |
479 | 482 | async move { |
480 | 483 | let latest_reload_count = reload_count.get_untracked(); |
481 | 484 |
|
| 485 | + // TODO: can we avoid this? |
482 | 486 | let result = rows |
483 | 487 | .borrow() |
484 | 488 | .get_rows(missing_range.clone()) |
@@ -520,7 +524,7 @@ where |
520 | 524 | let on_selection_change = on_selection_change.clone(); |
521 | 525 |
|
522 | 526 | view! { |
523 | | - {row_placeholder_renderer.run(placeholder_height_before.into())} |
| 527 | + {row_placeholder_renderer.run(placeholder_height_before)} |
524 | 528 |
|
525 | 529 | <For |
526 | 530 | each=move || { |
@@ -576,7 +580,7 @@ where |
576 | 580 |
|
577 | 581 | let on_select = { |
578 | 582 | let on_selection_change = on_selection_change.clone(); |
579 | | - let row = row.clone(); |
| 583 | + |
580 | 584 | move |evt: web_sys::MouseEvent| { |
581 | 585 | update_selection(evt, selection, first_selected_index, i); |
582 | 586 |
|
@@ -640,7 +644,7 @@ where |
640 | 644 | } |
641 | 645 | /> |
642 | 646 |
|
643 | | - {row_placeholder_renderer.run(placeholder_height_after.into())} |
| 647 | + {row_placeholder_renderer.run(placeholder_height_after)} |
644 | 648 | } |
645 | 649 | .into_any() |
646 | 650 | }; |
@@ -683,10 +687,8 @@ fn compute_average_row_height_from_loaded<Row, ClsP>( |
683 | 687 | loading_row_start_index = Some(i); |
684 | 688 | } |
685 | 689 | loading_row_end_index = Some(i); |
686 | | - } else { |
687 | | - if loading_row_end_index.is_some() { |
688 | | - break; |
689 | | - } |
| 690 | + } else if loading_row_end_index.is_some() { |
| 691 | + break; |
690 | 692 | } |
691 | 693 | } |
692 | 694 |
|
|
0 commit comments