slint/internal/compiler/passes
Olivier Goffart 4da79ac69a Fix layouting of huge ListView with millions of items
The problem is that the precision of f32 for coordinate wouldn't be
accurate enough with such big viewport to put the elements so that they
are next to eachother.
So put the elements relative to the Flickable instead of relative to the
created moving viewport Rectangle.

Fixes #3700

Note that the ListView still use f32 for the scrollbar value, meaning
that at some point, the wheel stops working as the wheel increment is
smaller than the f32 increment, and scrolling becomes somehow fuzzy.
But this only happens after one more billions pixels now, so one can
have more than 50 millions of elements without much problems
2025-01-20 17:41:38 +01:00
..
apply_default_properties_from_style.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
binding_analysis.rs Detect binding loops when it involve the condition of a if in a layout 2025-01-13 14:40:18 +01:00
border_radius.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
check_expressions.rs Math postfix member functions on numbers 2024-08-15 14:52:13 +02:00
check_public_api.rs compiler: process the import a bit differently 2024-11-14 14:35:22 +01:00
check_rotation.rs Split Text item into SimpleText and ComplexText 2024-07-05 12:51:25 +02:00
clip.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
collect_custom_fonts.rs Use SmolStr in more places of the compiler infrastructure 2024-10-17 18:04:58 +02:00
collect_globals.rs Experimental support for MenuBar 2024-11-20 09:25:37 +01:00
collect_init_code.rs Simplify commercial license (#3063) 2024-05-31 14:06:17 +02:00
collect_structs_and_enums.rs Merge the Callback and Function type 2024-10-28 14:36:30 +01:00
collect_subcomponents.rs Experimental support for MenuBar 2024-11-20 09:25:37 +01:00
compile_paths.rs Refactor typeregister's BUILTIN_ENUMS => BUILTIN.enums 2024-10-28 09:39:54 +01:00
const_propagation.rs Also wrap langtype::Type::Struct in an Rc 2024-10-28 09:39:54 +01:00
deduplicate_property_read.rs Fix wrong optimization trying to merge common properties around assignments 2024-11-13 22:14:56 +01:00
default_geometry.rs Compiler: Change a new error from 1.9 to a warning 2024-12-06 23:04:26 +01:00
embed_glyphs.rs Update to Image 0.25 (#7365) 2025-01-14 16:31:05 +01:00
embed_images.rs compiler: Do not fail the embed_images pass with URLs 2024-10-21 15:00:55 +02:00
ensure_window.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
flickable.rs Fix layouting of huge ListView with millions of items 2025-01-20 17:41:38 +01:00
focus_handling.rs Fix purity check for focus() on custom component 2024-12-03 15:52:33 +01:00
generate_item_indices.rs Simplify commercial license (#3063) 2024-05-31 14:06:17 +02:00
infer_aliases_types.rs API review of the slint interpreter Compiler api 2024-07-05 17:20:08 +02:00
inlining.rs MenuBar: C++/Rust native menubar implementation 2025-01-08 21:16:17 +01:00
lower_absolute_coordinates.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
lower_accessibility.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
lower_component_container.rs janitor: Fix clippy "unneeded return" 2024-06-24 14:59:47 +02:00
lower_layout.rs Compiler: Change a new error from 1.9 to a warning 2024-12-06 23:04:26 +01:00
lower_menus.rs Work on the ContextMenu 2025-01-16 20:21:06 +01:00
lower_popups.rs PopopWindow: Fix close-policy and close-on-click when inheriting 2024-12-10 12:10:49 +01:00
lower_property_to_element.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
lower_shadows.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
lower_states.rs Fix typos 2025-01-13 08:35:20 +01:00
lower_tabwidget.rs Set accessible-label on tab panels 2025-01-06 09:30:11 +01:00
lower_text_input_interface.rs Simplify commercial license (#3063) 2024-05-31 14:06:17 +02:00
lower_timers.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
materialize_fake_properties.rs Fix panic in the compiler when having a changed callback over a property that is not materlialized 2025-01-17 12:19:20 +01:00
move_declarations.rs MenuBar: C++/Rust native menubar implementation 2025-01-08 21:16:17 +01:00
optimize_useless_rectangles.rs Add support for optimized rectangles in ElementHandle 2024-06-05 01:29:58 -07:00
purity_check.rs Fix panic with invalid code 2024-10-15 11:42:28 +02:00
remove_aliases.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
remove_return.rs Fix wrong value or panic in the interpreter when converting struct of struct 2024-11-05 14:06:09 +01:00
remove_unused_properties.rs Fix panic in the compiler when having a changed callback over a property that is not materlialized 2025-01-17 12:19:20 +01:00
repeater_component.rs Fix layouting of huge ListView with millions of items 2025-01-20 17:41:38 +01:00
resolve_native_classes.rs Use SmolStr in more places of the compiler infrastructure 2024-10-17 18:04:58 +02:00
resolving.rs Remove LayoutSpec and undeprecate StyleMetrics.layout-* properties (#7069) 2024-12-16 14:52:28 +01:00
unique_id.rs Experimental support for MenuBar 2024-11-20 09:25:37 +01:00
visible.rs Reduce SmolStr <-> &str conversions and copies (#6688) 2024-11-19 10:07:16 +01:00
z_order.rs Simplify commercial license (#3063) 2024-05-31 14:06:17 +02:00