summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCedric BAIL <cedric.bail@free.fr>2019-11-01 08:03:00 -0700
committerCedric BAIL <cedric.bail@free.fr>2019-11-06 02:14:55 -0800
commitf7c6bec38ff0a19bdffab249836faaf7a1824c47 (patch)
treed73695bd94db6c42ee8a1b9d6127885379031047 /src
parent9ca84821fc91d3e5661edb9d2393788b28c56f7c (diff)
elementary: fix end of fast scroll not showing up during Efl.Ui.CollectionView scroll.
efl_ui_position_manager_entity_entities_ready is expecting the end offset and not the length of how many items have been updated. Sending the correct number fixes the problem. Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de> Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com> Differential Revision: https://phab.enlightenment.org/D10590
Diffstat (limited to 'src')
-rw-r--r--src/lib/elementary/efl_ui_collection_view.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/lib/elementary/efl_ui_collection_view.c b/src/lib/elementary/efl_ui_collection_view.c
index fa2dd42..3b7b813 100644
--- a/src/lib/elementary/efl_ui_collection_view.c
+++ b/src/lib/elementary/efl_ui_collection_view.c
@@ -575,7 +575,6 @@ _entity_fetched_cb(Eo *obj, void *data, const Eina_Value v)
575 } 575 }
576 } 576 }
577#endif 577#endif
578
579 // When requesting an entity, the model should already be in the cache 578 // When requesting an entity, the model should already be in the cache
580 if (!child) continue; 579 if (!child) continue;
581 580
@@ -624,8 +623,8 @@ _entity_fetched_cb(Eo *obj, void *data, const Eina_Value v)
624 search_index - 1); 623 search_index - 1);
625 updated_size = EINA_FALSE; 624 updated_size = EINA_FALSE;
626 } 625 }
627 }} 626 }
628 ; 627 }
629 628
630 // Currently position manager will flush its entire size cache on update, so only do 629 // Currently position manager will flush its entire size cache on update, so only do
631 // it when necessary to improve performance. 630 // it when necessary to improve performance.
@@ -642,7 +641,7 @@ _entity_fetched_cb(Eo *obj, void *data, const Eina_Value v)
642 { 641 {
643 efl_ui_position_manager_entity_entities_ready(pd->manager, 642 efl_ui_position_manager_entity_entities_ready(pd->manager,
644 updated_entity_start_id, 643 updated_entity_start_id,
645 i - 1); 644 request->offset + i - 1);
646 645
647 efl_event_callback_del(efl_main_loop_get(), EFL_LOOP_EVENT_IDLE, _idle_cb, obj); 646 efl_event_callback_del(efl_main_loop_get(), EFL_LOOP_EVENT_IDLE, _idle_cb, obj);
648 efl_event_callback_add(efl_main_loop_get(), EFL_LOOP_EVENT_IDLE, _idle_cb, obj); 647 efl_event_callback_add(efl_main_loop_get(), EFL_LOOP_EVENT_IDLE, _idle_cb, obj);
@@ -1054,7 +1053,7 @@ _batch_entity_cb(void *data, Efl_Ui_Position_Manager_Request_Range range, Eina_R
1054 1053
1055 entities = memory.mem; 1054 entities = memory.mem;
1056 //count = efl_model_children_count_get(parent); 1055 //count = efl_model_children_count_get(parent);
1057 limit = range.end_id - range.start_id;; 1056 limit = range.end_id - range.start_id;
1058 1057
1059 // Look in the temporary cache now for the beginning of the buffer 1058 // Look in the temporary cache now for the beginning of the buffer
1060#ifdef VIEWPORT_ENABLE 1059#ifdef VIEWPORT_ENABLE