Popup Scroll Surface
Scroll hosting for popup content.
Basic use
use xgpui_luma::controls::popup_scroll_surface::PopupScrollSurface;
use xgpui_luma::controls::scrollbar::default_scrollbar_template;
let surface = PopupScrollSurface::new("popup", default_scrollbar_template(), cx);Integration snippet, checked against the current SDK and Radix crates. cx is the initialized owner context. Keep spawned entities and subscriptions in the owning view.
Radix scrollbar styling
This utility does not require a dedicated Look builder. Pass xgpui_luma_look_radix::scrollbar_template(&look) to its constructor for visible Radix scrollbar chrome. Input routing, scrolling, visibility, and auto-hide stay in the SDK. See Scrollbar styling.
SDK behavior & customization
A composition helper for popup viewports, not another menu or selection engine.
Use the module’s template contract for structural changes. Builder modifiers and item templates vary by control.
Application interaction
This helper does not emit its own semantic event enum. The owning popup, menu, or selector supplies application events.