diff --git a/masonry/examples/custom_widget.rs b/masonry/examples/custom_widget.rs index 88eb59516e..ec03300e51 100644 --- a/masonry/examples/custom_widget.rs +++ b/masonry/examples/custom_widget.rs @@ -15,13 +15,12 @@ use masonry::core::{ TextEvent, Widget, WidgetId, }; use masonry::kurbo::{Affine, BezPath, Point, Rect, Size, Stroke}; -use masonry::palette; use masonry::parley::style::{FontFamily, FontStack, GenericFamily, StyleProperty}; use masonry::peniko::{Color, Fill, ImageBrush, ImageFormat}; use masonry::properties::ObjectFit; use masonry::theme::default_property_set; use masonry::vello::Scene; -use masonry::{TextAlign, TextAlignOptions}; +use masonry::{TextAlign, TextAlignOptions, palette}; use masonry_winit::app::{AppDriver, DriverCtx, NewWindow, WindowId}; use masonry_winit::winit::window::Window; use tracing::{Span, trace_span}; diff --git a/masonry/src/widgets/button.rs b/masonry/src/widgets/button.rs index 88f86e7238..18799ad76d 100644 --- a/masonry/src/widgets/button.rs +++ b/masonry/src/widgets/button.rs @@ -25,8 +25,7 @@ use crate::properties::{ }; use crate::theme; use crate::util::{fill, include_screenshot, stroke}; - -use super::Label; +use crate::widgets::Label; /// A button with a child widget. /// diff --git a/masonry/src/widgets/checkbox.rs b/masonry/src/widgets/checkbox.rs index 07fe291bd0..bfd4d894b9 100644 --- a/masonry/src/widgets/checkbox.rs +++ b/masonry/src/widgets/checkbox.rs @@ -9,8 +9,7 @@ use accesskit::{Node, Role, Toggled}; use masonry_core::core::HasProperty; use tracing::{Span, trace, trace_span}; use vello::Scene; -use vello::kurbo::Rect; -use vello::kurbo::{Affine, BezPath, Cap, Dashes, Join, Size, Stroke}; +use vello::kurbo::{Affine, BezPath, Cap, Dashes, Join, Rect, Size, Stroke}; use crate::core::keyboard::Key; use crate::core::{ diff --git a/masonry/src/widgets/flex.rs b/masonry/src/widgets/flex.rs index fd6c250c5b..c9fed3b3c8 100644 --- a/masonry/src/widgets/flex.rs +++ b/masonry/src/widgets/flex.rs @@ -15,8 +15,7 @@ use crate::core::{ AccessCtx, Axis, BoxConstraints, ChildrenIds, LayoutCtx, NewWidget, NoAction, PaintCtx, PropertiesMut, PropertiesRef, RegisterCtx, UpdateCtx, Widget, WidgetId, WidgetMut, WidgetPod, }; -use crate::properties::types::Length; -use crate::properties::types::{CrossAxisAlignment, MainAxisAlignment}; +use crate::properties::types::{CrossAxisAlignment, Length, MainAxisAlignment}; use crate::properties::{Background, BorderColor, BorderWidth, CornerRadius, Padding}; use crate::theme::DEFAULT_GAP; use crate::util::{debug_panic, fill, include_screenshot, stroke}; diff --git a/masonry/src/widgets/label.rs b/masonry/src/widgets/label.rs index efaabe1b3c..e67bf8f6ce 100644 --- a/masonry/src/widgets/label.rs +++ b/masonry/src/widgets/label.rs @@ -415,8 +415,7 @@ mod tests { use super::*; use crate::core::Properties; - use crate::properties::types::CrossAxisAlignment; - use crate::properties::types::{AsUnit, Length}; + use crate::properties::types::{AsUnit, CrossAxisAlignment, Length}; use crate::testing::{TestHarness, assert_render_snapshot}; use crate::theme::{ACCENT_COLOR, test_property_set}; use crate::widgets::{Flex, SizedBox}; diff --git a/masonry/src/widgets/passthrough.rs b/masonry/src/widgets/passthrough.rs index 9995f58578..eba932ffd1 100644 --- a/masonry/src/widgets/passthrough.rs +++ b/masonry/src/widgets/passthrough.rs @@ -113,11 +113,12 @@ impl Widget for Passthrough { // --- MARK: TESTS #[cfg(test)] mod tests { + use vello::kurbo::Size; + use super::*; use crate::testing::{TestHarness, assert_render_snapshot}; use crate::theme::test_property_set; use crate::widgets::Label; - use vello::kurbo::Size; #[test] fn passthrough_replaces_child() { diff --git a/masonry/src/widgets/progress_bar.rs b/masonry/src/widgets/progress_bar.rs index 627014fbae..2b01297a5e 100644 --- a/masonry/src/widgets/progress_bar.rs +++ b/masonry/src/widgets/progress_bar.rs @@ -15,8 +15,9 @@ use crate::core::{ AccessCtx, ArcStr, BoxConstraints, ChildrenIds, LayoutCtx, NoAction, PaintCtx, PropertiesMut, PropertiesRef, RegisterCtx, Update, UpdateCtx, Widget, WidgetId, WidgetMut, WidgetPod, }; -use crate::properties::LineBreaking; -use crate::properties::{Background, BarColor, BorderColor, BorderWidth, CornerRadius}; +use crate::properties::{ + Background, BarColor, BorderColor, BorderWidth, CornerRadius, LineBreaking, +}; use crate::util::{fill, include_screenshot, stroke}; use crate::widgets::Label; @@ -208,9 +209,10 @@ mod tests { use masonry_core::core::NewWidget; use super::*; + use crate::core::Properties; + use crate::palette; use crate::testing::{TestHarness, assert_render_snapshot}; use crate::theme::test_property_set; - use crate::{core::Properties, palette}; #[test] fn indeterminate_progressbar() { diff --git a/masonry/src/widgets/prose.rs b/masonry/src/widgets/prose.rs index 754747e101..79137277e1 100644 --- a/masonry/src/widgets/prose.rs +++ b/masonry/src/widgets/prose.rs @@ -191,8 +191,7 @@ mod tests { use super::*; use crate::TextAlign; - use crate::properties::types::CrossAxisAlignment; - use crate::properties::types::{AsUnit, Length}; + use crate::properties::types::{AsUnit, CrossAxisAlignment, Length}; use crate::testing::{TestHarness, assert_render_snapshot}; use crate::theme::test_property_set; use crate::widgets::{Flex, SizedBox, TextArea}; diff --git a/masonry/src/widgets/resize_observer.rs b/masonry/src/widgets/resize_observer.rs index 55a5d420f5..48b9603a41 100644 --- a/masonry/src/widgets/resize_observer.rs +++ b/masonry/src/widgets/resize_observer.rs @@ -150,11 +150,9 @@ mod tests { use masonry_testing::TestHarness; use vello::kurbo::Size; - use crate::{ - properties::types::AsUnit, - theme::default_property_set, - widgets::{Flex, LayoutChanged, ResizeObserver, SizedBox}, - }; + use crate::properties::types::AsUnit; + use crate::theme::default_property_set; + use crate::widgets::{Flex, LayoutChanged, ResizeObserver, SizedBox}; #[test] fn detects_inner_resizing() { diff --git a/masonry/src/widgets/virtual_scroll.rs b/masonry/src/widgets/virtual_scroll.rs index 0c2db3b9ac..28f784040d 100644 --- a/masonry/src/widgets/virtual_scroll.rs +++ b/masonry/src/widgets/virtual_scroll.rs @@ -1049,14 +1049,13 @@ mod tests { use kurbo::{Size, Vec2}; use parley::StyleProperty; + use super::opt_iter_difference; use crate::core::{NewWidget, Widget, WidgetId, WidgetMut}; use crate::testing::{TestHarness, assert_render_snapshot}; use crate::theme::test_property_set; use crate::vello::kurbo; use crate::widgets::{Label, VirtualScroll, VirtualScrollAction}; - use super::opt_iter_difference; - #[test] #[expect( clippy::reversed_empty_ranges, diff --git a/masonry/tests/examples.rs b/masonry/tests/examples.rs index b29f32c563..ccbed33f44 100644 --- a/masonry/tests/examples.rs +++ b/masonry/tests/examples.rs @@ -20,12 +20,13 @@ pub mod others { #[cfg(test)] mod tests { - use super::*; use masonry::core::Widget; use masonry::kurbo::Size; use masonry::theme::default_property_set; use masonry_testing::{TestHarness, TestHarnessParams}; + use super::*; + // A series of tests to check that various widgets (the ones used in examples) // can handle being laid out and painted with a size of zero. diff --git a/masonry_core/src/core/widget_pod.rs b/masonry_core/src/core/widget_pod.rs index 9fc5840b3d..236c372400 100644 --- a/masonry_core/src/core/widget_pod.rs +++ b/masonry_core/src/core/widget_pod.rs @@ -2,6 +2,7 @@ // SPDX-License-Identifier: Apache-2.0 use std::any::TypeId; + use vello::kurbo::Affine; use crate::core::{Properties, Widget, WidgetId, WidgetTag}; diff --git a/masonry_core/src/lib.rs b/masonry_core/src/lib.rs index 4259380947..c2dc2c6e89 100644 --- a/masonry_core/src/lib.rs +++ b/masonry_core/src/lib.rs @@ -74,9 +74,9 @@ #![expect(clippy::cast_possible_truncation, reason = "Deferred: Noisy")] // TODO - Add logo -pub use anymore; -pub use vello::{kurbo, peniko, peniko::color::palette}; -pub use {accesskit, dpi, parley, ui_events, vello}; +pub use vello::peniko::color::palette; +pub use vello::{kurbo, peniko}; +pub use {accesskit, anymore, dpi, parley, ui_events, vello}; // TODO - re-add #[doc(hidden)] pub mod doc; diff --git a/masonry_core/src/passes/layout.rs b/masonry_core/src/passes/layout.rs index 46fb6fd817..8763e6bb5e 100644 --- a/masonry_core/src/passes/layout.rs +++ b/masonry_core/src/passes/layout.rs @@ -12,10 +12,11 @@ use tracing::{info_span, trace}; use tree_arena::ArenaMut; use vello::kurbo::{Point, Rect, Size}; -use crate::app::RenderRootState; -use crate::app::{RenderRoot, RenderRootSignal, WindowSizePolicy}; -use crate::core::{BoxConstraints, ChildrenIds, LayoutCtx, PropertiesMut, WidgetState}; -use crate::core::{DefaultProperties, WidgetArenaNode}; +use crate::app::{RenderRoot, RenderRootSignal, RenderRootState, WindowSizePolicy}; +use crate::core::{ + BoxConstraints, ChildrenIds, DefaultProperties, LayoutCtx, PropertiesMut, WidgetArenaNode, + WidgetState, +}; use crate::debug_panic; use crate::passes::{enter_span_if, recurse_on_children}; diff --git a/masonry_testing/src/harness.rs b/masonry_testing/src/harness.rs index 0bcd05ab81..90c1e7988c 100644 --- a/masonry_testing/src/harness.rs +++ b/masonry_testing/src/harness.rs @@ -12,16 +12,15 @@ use std::path::PathBuf; use std::sync::{Arc, mpsc}; use image::{DynamicImage, ImageFormat, ImageReader, Rgba, RgbaImage}; -use masonry_core::accesskit::{Action, ActionRequest, Node, Role, Tree, TreeUpdate}; -use masonry_core::anymore::AnyDebug; -use masonry_core::core::keyboard::{Code, Key, KeyState, NamedKey}; -use masonry_core::vello::peniko::Fill; use oxipng::{Options, optimize_from_memory}; use tracing::debug; +use masonry_core::accesskit::{Action, ActionRequest, Node, Role, Tree, TreeUpdate}; +use masonry_core::anymore::AnyDebug; use masonry_core::app::{ RenderRoot, RenderRootOptions, RenderRootSignal, WindowSizePolicy, try_init_test_tracing, }; +use masonry_core::core::keyboard::{Code, Key, KeyState, NamedKey}; use masonry_core::core::{ CursorIcon, DefaultProperties, ErasedAction, FromDynWidget, Handled, Ime, KeyboardEvent, Modifiers, NewWidget, PointerButton, PointerButtonEvent, PointerEvent, PointerId, PointerInfo, @@ -32,6 +31,7 @@ use masonry_core::dpi::{LogicalPosition, LogicalSize, PhysicalPosition, Physical use masonry_core::kurbo::{Affine, Point, Rect, Size, Vec2}; use masonry_core::peniko::{Blob, Color}; use masonry_core::util::Duration; +use masonry_core::vello::peniko::Fill; use masonry_core::vello::util::{RenderContext, block_on_wgpu}; use masonry_core::vello::wgpu::{ BufferDescriptor, BufferUsages, CommandEncoderDescriptor, Extent3d, MapMode, diff --git a/masonry_testing/src/modular_widget.rs b/masonry_testing/src/modular_widget.rs index 364d7c35cc..72b2a01a60 100644 --- a/masonry_testing/src/modular_widget.rs +++ b/masonry_testing/src/modular_widget.rs @@ -3,8 +3,6 @@ use std::any::TypeId; -use tracing::trace_span; - use masonry_core::accesskit::{Node, Role}; use masonry_core::core::{ AccessCtx, AccessEvent, BoxConstraints, ChildrenIds, ComposeCtx, CursorIcon, EventCtx, @@ -14,6 +12,7 @@ use masonry_core::core::{ }; use masonry_core::kurbo::{Point, Size}; use masonry_core::vello::Scene; +use tracing::trace_span; pub(crate) type PointerEventFn = dyn FnMut(&mut S, &mut EventCtx<'_>, &mut PropertiesMut<'_>, &PointerEvent); diff --git a/masonry_winit/src/event_loop_runner.rs b/masonry_winit/src/event_loop_runner.rs index 5cc98b28d1..4c20b0ec8c 100644 --- a/masonry_winit/src/event_loop_runner.rs +++ b/masonry_winit/src/event_loop_runner.rs @@ -18,8 +18,9 @@ use masonry_core::core::{ use masonry_core::kurbo::Affine; use masonry_core::peniko::Color; use masonry_core::util::Instant; -use masonry_core::vello::wgpu; -use masonry_core::vello::{AaConfig, AaSupport, RenderParams, Renderer, RendererOptions, Scene}; +use masonry_core::vello::{ + AaConfig, AaSupport, RenderParams, Renderer, RendererOptions, Scene, wgpu, +}; use tracing::{debug, info, info_span}; use ui_events_winit::{WindowEventReducer, WindowEventTranslation}; use winit::application::ApplicationHandler; diff --git a/masonry_winit/src/vello_util.rs b/masonry_winit/src/vello_util.rs index 05bcf7ed7d..945d2c7bde 100644 --- a/masonry_winit/src/vello_util.rs +++ b/masonry_winit/src/vello_util.rs @@ -6,14 +6,12 @@ //! This module is based on [`vello::util`](masonry_core::vello::util) module //! with modifications for transparent surfaces. -use masonry_core::vello::{ - Error, - wgpu::{self, MemoryBudgetThresholds, MemoryHints}, -}; +use masonry_core::vello::Error; +use masonry_core::vello::wgpu::{self, MemoryBudgetThresholds, MemoryHints}; +use wgpu::util::{TextureBlitter, TextureBlitterBuilder}; use wgpu::{ BlendComponent, BlendFactor, BlendState, CompositeAlphaMode, Device, Instance, PresentMode, Surface, SurfaceConfiguration, Texture, TextureFormat, TextureUsages, TextureView, - util::{TextureBlitter, TextureBlitterBuilder}, }; /// Simple render context that maintains wgpu state for rendering the pipeline. diff --git a/xilem/examples/external_event_loop.rs b/xilem/examples/external_event_loop.rs index 21626cdff7..91b61bfa9f 100644 --- a/xilem/examples/external_event_loop.rs +++ b/xilem/examples/external_event_loop.rs @@ -6,8 +6,7 @@ //! accessing raw events from winit. //! Support for more custom embeddings would be welcome, but needs more design work -use masonry::properties::types::AsUnit; -use masonry::properties::types::{CrossAxisAlignment, MainAxisAlignment}; +use masonry::properties::types::{AsUnit, CrossAxisAlignment, MainAxisAlignment}; use masonry::theme::default_property_set; use masonry_winit::app::{AppDriver, MasonryUserEvent}; use winit::application::ApplicationHandler; diff --git a/xilem/examples/flex.rs b/xilem/examples/flex.rs index 7067b65246..c1f94f569b 100644 --- a/xilem/examples/flex.rs +++ b/xilem/examples/flex.rs @@ -3,8 +3,7 @@ //! Flex properties can be set in Xilem. -use masonry::properties::types::AsUnit; -use masonry::properties::types::{CrossAxisAlignment, MainAxisAlignment}; +use masonry::properties::types::{AsUnit, CrossAxisAlignment, MainAxisAlignment}; use winit::error::EventLoopError; use xilem::view::{FlexExt as _, FlexSpacer, Label, button, flex_row, label, sized_box}; use xilem::{EventLoop, WidgetView, WindowOptions, Xilem}; diff --git a/xilem/examples/slider_demo.rs b/xilem/examples/slider_demo.rs index 86b40c301e..076a515393 100644 --- a/xilem/examples/slider_demo.rs +++ b/xilem/examples/slider_demo.rs @@ -10,10 +10,8 @@ use masonry::core::Axis; use masonry::peniko::Color; -use masonry::properties::{ - Background, BarColor, ThumbColor, ThumbRadius, - types::{AsUnit, CrossAxisAlignment}, -}; +use masonry::properties::types::{AsUnit, CrossAxisAlignment}; +use masonry::properties::{Background, BarColor, ThumbColor, ThumbRadius}; use winit::dpi::LogicalSize; use winit::error::EventLoopError; use xilem::style::Style; diff --git a/xilem/examples/transparent_window.rs b/xilem/examples/transparent_window.rs index 11b7a34007..eb7a4f471d 100644 --- a/xilem/examples/transparent_window.rs +++ b/xilem/examples/transparent_window.rs @@ -5,7 +5,9 @@ use masonry::properties::types::AsUnit; use winit::error::EventLoopError; -use xilem::{Color, EventLoop, WindowId, WindowView, Xilem, style::Style, view::*}; +use xilem::style::Style; +use xilem::view::*; +use xilem::{Color, EventLoop, WindowId, WindowView, Xilem}; #[derive(Debug, Clone)] struct AppState { diff --git a/xilem_core/src/environment.rs b/xilem_core/src/environment.rs index 7fa6f66813..e34bbb4066 100644 --- a/xilem_core/src/environment.rs +++ b/xilem_core/src/environment.rs @@ -3,16 +3,20 @@ //! Values accessible throughout the Xilem view tree. +use alloc::boxed::Box; +use alloc::sync::Arc; +use alloc::vec::Vec; +use core::any::TypeId; +use core::marker::PhantomData; + use anymore::AnyDebug; -use hashbrown::{HashMap, hash_map::Entry}; +use hashbrown::HashMap; +use hashbrown::hash_map::Entry; use crate::{ Arg, MessageCtx, MessageResult, Mut, View, ViewArgument, ViewId, ViewMarker, ViewPathTracker, }; -use alloc::{boxed::Box, sync::Arc, vec::Vec}; -use core::{any::TypeId, marker::PhantomData}; - #[derive(Debug)] /// A message sent to Views to instruct them to rebuild themselves. /// diff --git a/xilem_core/src/message.rs b/xilem_core/src/message.rs index eadb4fd9d3..af015bd102 100644 --- a/xilem_core/src/message.rs +++ b/xilem_core/src/message.rs @@ -3,11 +3,11 @@ //! Message routing and type erasure primitives. -use anymore::AnyDebug; - use alloc::boxed::Box; use core::fmt::Debug; +use anymore::AnyDebug; + /// The possible outcomes from a [`View::message`] /// /// [`View::message`]: crate::View::message diff --git a/xilem_core/src/message_context.rs b/xilem_core/src/message_context.rs index a31841db04..e2180a0c46 100644 --- a/xilem_core/src/message_context.rs +++ b/xilem_core/src/message_context.rs @@ -1,10 +1,13 @@ // Copyright 2025 the Xilem Authors // SPDX-License-Identifier: Apache-2.0 -use crate::{DynMessage, Environment, ViewId}; -use alloc::{boxed::Box, vec::Vec}; +use alloc::boxed::Box; +use alloc::vec::Vec; + use anymore::AnyDebug; +use crate::{DynMessage, Environment, ViewId}; + /// The `MessageCtx` is used in [`View::message`](crate::View::message). /// /// It contains the full current "target" path for message routing, along with diff --git a/xilem_core/src/message_proxy.rs b/xilem_core/src/message_proxy.rs index c643ea4e3d..30955420bf 100644 --- a/xilem_core/src/message_proxy.rs +++ b/xilem_core/src/message_proxy.rs @@ -1,13 +1,13 @@ // Copyright 2024 the Xilem Authors // SPDX-License-Identifier: Apache-2.0 -use anymore::AnyDebug; - use alloc::boxed::Box; use alloc::sync::Arc; use core::fmt::{Debug, Display}; use core::marker::PhantomData; +use anymore::AnyDebug; + use crate::{SendMessage, ViewId}; /// A handle to a Xilem driver which can be used to queue a message for a View. diff --git a/xilem_masonry/src/style.rs b/xilem_masonry/src/style.rs index 3420c326a6..96ea85ad2c 100644 --- a/xilem_masonry/src/style.rs +++ b/xilem_masonry/src/style.rs @@ -4,14 +4,13 @@ //! Traits used to set custom styles on views. use masonry::core::HasProperty; -use masonry::properties::{ContentColor, DisabledContentColor, FocusedBorderColor, LineBreaking}; -use vello::peniko::Color; - pub use masonry::properties::types::{Gradient, GradientShape}; pub use masonry::properties::{ ActiveBackground, Background, BorderColor, BorderWidth, BoxShadow, CornerRadius, DisabledBackground, HoveredBorderColor, Padding, }; +use masonry::properties::{ContentColor, DisabledContentColor, FocusedBorderColor, LineBreaking}; +use vello::peniko::Color; use crate::WidgetView; use crate::core::ViewArgument; diff --git a/xilem_masonry/src/view/checkbox.rs b/xilem_masonry/src/view/checkbox.rs index 58fb73e40d..9983017b6a 100644 --- a/xilem_masonry/src/view/checkbox.rs +++ b/xilem_masonry/src/view/checkbox.rs @@ -3,14 +3,14 @@ use std::marker::PhantomData; -use crate::core::{Arg, MessageCtx, MessageResult, Mut, View, ViewArgument, ViewMarker}; -use crate::{Pod, ViewCtx}; - use masonry::core::{ArcStr, NewWidget}; use masonry::parley::StyleProperty; use masonry::parley::style::{FontStack, FontWeight}; use masonry::widgets::{self, CheckboxToggled}; +use crate::core::{Arg, MessageCtx, MessageResult, Mut, View, ViewArgument, ViewMarker}; +use crate::{Pod, ViewCtx}; + /// An element which can be in checked and unchecked state. /// /// # Example diff --git a/xilem_masonry/src/view/flex.rs b/xilem_masonry/src/view/flex.rs index 471b55f258..9fb1465219 100644 --- a/xilem_masonry/src/view/flex.rs +++ b/xilem_masonry/src/view/flex.rs @@ -218,8 +218,7 @@ mod hidden { } } -use hidden::AnyFlexChildState; -use hidden::FlexState; +use hidden::{AnyFlexChildState, FlexState}; impl ViewMarker for Flex {} impl View for Flex diff --git a/xilem_masonry/src/view/indexed_stack.rs b/xilem_masonry/src/view/indexed_stack.rs index 239c0d23e5..2450aaab19 100644 --- a/xilem_masonry/src/view/indexed_stack.rs +++ b/xilem_masonry/src/view/indexed_stack.rs @@ -3,13 +3,14 @@ use std::marker::PhantomData; +use masonry::core::{CollectionWidget, FromDynWidget, Widget, WidgetMut}; +use masonry::widgets; + use crate::core::{ AppendVec, Arg, ElementSplice, MessageCtx, MessageResult, Mut, SuperElement, View, ViewArgument, ViewElement, ViewMarker, ViewSequence, }; use crate::{Pod, ViewCtx}; -use masonry::core::{CollectionWidget, FromDynWidget, Widget, WidgetMut}; -use masonry::widgets; /// An `IndexedStack` displays one of several children elements at a time. /// diff --git a/xilem_masonry/src/view/prose.rs b/xilem_masonry/src/view/prose.rs index 7433a7b7de..61ad345a10 100644 --- a/xilem_masonry/src/view/prose.rs +++ b/xilem_masonry/src/view/prose.rs @@ -8,8 +8,7 @@ use masonry::parley::FontWeight; use masonry::properties::{ContentColor, DisabledContentColor, LineBreaking}; use masonry::widgets; -use crate::core::MessageResult; -use crate::core::{Arg, MessageCtx, Mut, View, ViewArgument, ViewMarker}; +use crate::core::{Arg, MessageCtx, MessageResult, Mut, View, ViewArgument, ViewMarker}; use crate::{Color, Pod, TextAlign, ViewCtx}; /// A view which displays selectable text. diff --git a/xilem_masonry/src/view/sized_box.rs b/xilem_masonry/src/view/sized_box.rs index 4227493c7c..cccf1d746d 100644 --- a/xilem_masonry/src/view/sized_box.rs +++ b/xilem_masonry/src/view/sized_box.rs @@ -1,9 +1,9 @@ // Copyright 2024 the Xilem Authors // SPDX-License-Identifier: Apache-2.0 -use masonry::properties::types::Length; use std::marker::PhantomData; +use masonry::properties::types::Length; use masonry::widgets; use crate::core::{Arg, MessageCtx, MessageResult, Mut, View, ViewArgument, ViewMarker}; diff --git a/xilem_masonry/src/view/virtual_scroll.rs b/xilem_masonry/src/view/virtual_scroll.rs index d97298f8ae..34f5092b23 100644 --- a/xilem_masonry/src/view/virtual_scroll.rs +++ b/xilem_masonry/src/view/virtual_scroll.rs @@ -1,7 +1,9 @@ // Copyright 2025 the Xilem Authors // SPDX-License-Identifier: Apache-2.0 -use std::{collections::HashMap, marker::PhantomData, ops::Range}; +use std::collections::HashMap; +use std::marker::PhantomData; +use std::ops::Range; use masonry::core::{Widget, WidgetPod}; use masonry::util::debug_panic; @@ -87,10 +89,10 @@ where } mod private { - use masonry::widgets::VirtualScrollAction; - use std::collections::HashMap; + use masonry::widgets::VirtualScrollAction; + #[expect( unnameable_types, reason = "Not meaningful public API; required to be public due to design of View trait"