Skip to main content

TouchTarget

Struct TouchTarget 

Source
pub struct TouchTarget { /* private fields */ }
Expand description

Give an undersized control a conforming touch target, growing the layout around it when nothing cheaper will do — and only at TargetDensity::Touch.

§When you need this, and when you do not

Teksilo has three ways to make a target reachable, and they are ordered by how much they disturb:

  1. Widget::hit_outset — a thin grip claims the space around it. Hit-only; nothing moves. This is what a splitter gutter or a column resize strip uses.
  2. The miss-only slop pass — an isolated small control catches a near miss. Hit-only; nothing moves. This is what a radio dot or a chart mark uses.
  3. TouchTarget — this. The control genuinely needs room, because the thing beside it is also a target and there is no space to borrow. It changes layout, so siblings reflow.

Reach for (3) only when (1) and (2) cannot work: when a control sits in a tight row of other controls, so widening its hit area would take presses from its neighbours rather than from empty space. Everything else the density sweep already handles by projecting the recipes.

§Why Touch only

At Compact and Comfortable this wrapper is the identity: it reports its child’s own response, unchanged, and adds no hit outset. Compact is the density every existing layout was designed at and every layout golden was recorded at, and Comfortable is served by the recipes’ own density projection, which raises a control’s own dimensions rather than padding around it. Touch is the ladder where a 24 dp control still falls 20 dp short of the target and no recipe can close the gap from inside.

ⓘ
// A 16 dp close affordance in a dense tab strip: at Touch it is given a
// 44 dp slot and centred in it; at Compact nothing changes at all.
TouchTarget::new().child(close_button)

§reserve_space

  • reserve_space(true) (the default) — the slot reports at least size on both axes and centres the child in it. Siblings reflow.
  • reserve_space(false) — the slot reports the child’s own size and declares a Widget::hit_outset that brings the hit area up to size instead. Nothing moves; the target overlaps whatever is beside it. Use it when the row has slack in one direction but you cannot spend it.

Implementations§

Source§

impl TouchTarget

Source

pub fn new() -> Self

A new wrapper at the density’s own target_size. Attach content with child or child.

Source

pub fn size(self, dp: f32) -> Self

Override the target size, in dp. Defaults to the density’s InputTokens::target_size (44 dp at Touch).

Source

pub fn reserve_space(self, reserve: bool) -> Self

Whether the slot takes the room it needs (true, the default) or widens only the hit area (false). See the type docs.

Source

pub fn child(self, widget: impl IntoTeksiChild) -> Self

Wrap an inline widget.

Source

pub fn child_opt(self, widget: Option<impl IntoTeksiChild>) -> Self

Attach widget when it is Some, and do nothing when it is None.

The conditional-child form. teksu!’s if without an else lowers to this, and it is what cond.then(|| w) is for in a builder chain. None adds no arena node, so nothing is laid out, painted, or published to the accessibility tree, and a stack applies no spacing around it.

Trait Implementations§

Source§

impl Debug for TouchTarget

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for TouchTarget

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Widget for TouchTarget

Source§

fn build(&mut self, ctx: &mut BuildContext<'_>) -> Vec<WidgetId>

Compose child widgets. Called once after the widget is placed in the arena, and again whenever the widget is marked for rebuild — a BindingLevel::Rebuild binding, rebuild_single_widget, or a density switch. A theme or locale switch does not rebuild: set_theme and set_locale mark layout + paint dirty and leave the built subtree standing, so anything derived from the theme or the locale must be read per pass or bound to a signal rather than captured here. Takes &mut self — store child IDs, signal handles, any state needed later. Returns the list of root child IDs (empty for leaf widgets).
Source§

fn layout_response( &self, proposal: SizeProposal, ctx: &LayoutContext<'_>, ) -> LayoutResponse

Respond to the parent’s size proposal with this widget’s wanted size, grow/shrink weights, and compression floor (see LayoutResponse). Read more
Source§

fn place_children( &self, bounds: Rect, proposal: SizeProposal, children: &mut [WidgetPlacement], ctx: &LayoutContext<'_>, )

Position children within the allocated bounds. Read more
Source§

fn children(&self) -> Vec<WidgetId>

Return the child widget IDs that this widget manages.
Source§

fn hit_outset(&self, kind: PointerKind, tokens: &InputTokens) -> EdgeInsets

How far outside its own bounds this widget still absorbs a press, per edge, for the pointer that is asking. Read more
Source§

fn type_name(&self) -> &'static str

Concrete type name of this widget (e.g. "teksilo_widgets::button::Button"). The default implementation resolves at the impl site via std::any::type_name::<Self>(), so calls through &dyn Widget correctly dispatch to the monomorphized fn for the concrete type — getting the concrete name through the vtable without per-impl boilerplate. Read more
Source§

fn cacheable_layout(&self) -> bool

Whether this widget’s layout_response may be memoized by the per-pass layout cache. Defaults to true. Read more
Source§

fn paint(&self, _bounds: Rect, _canvas: &mut Canvas, _ctx: &PaintContext<'_>)

Draw the widget’s visual representation.
Source§

fn wants_after_paint(&self) -> bool

Whether this widget wants its after_paint hook to fire each frame. Returning false (the default) saves a virtual call per widget per frame for the vast majority of widgets that don’t aggregate descendant geometry. Read more
Source§

fn after_paint(&self, _view: &WidgetTreeView<'_>, _ctx: &PaintContext<'_>)

Called once per frame after this widget’s subtree has finished painting. Receives a read-only view of the layout-resolved arena so a parent can read its descendants’ final bounds — e.g. TitleBar aggregates its drag region and control-button rects into a single HitRegions payload for the Windows backend’s WM_NCHITTEST. Read more
Source§

fn wants_post_paint(&self) -> bool

Whether this widget wants its post_paint hook to fire each frame. Returning false (the default) saves a virtual call per widget per frame for the vast majority of widgets that don’t draw a foreground over their children. Read more
Source§

fn post_paint( &self, _bounds: Rect, _canvas: &mut Canvas, _ctx: &PaintContext<'_>, )

Draw a foreground layer over this widget’s children. Read more
Source§

fn accessibility(&self, _builder: &mut AccessNodeBuilder)

Declare this widget’s accessibility identity.
Source§

fn wants_descendant_redirects(&self) -> bool

Whether this widget wants the AT walker to consult its a11y_redirect_descendant hook for every descendant during AT tree emission, not just its direct arena children. Read more
Source§

fn culls_children(&self) -> bool

Whether this widget decides, on every layout pass, which of its children exist at all. Read more
Source§

fn a11y_redirect_descendant( &self, _self_id: WidgetId, _descendant: WidgetId, ) -> Option<NodeId>

Optional redirection hook for AT-tree placement of a child. Read more
Source§

fn accessible_title_hint(&self) -> Option<String>

Suggest an accessible title to an enclosing container that wraps this widget as content — typically a modal / dialog shell that wants to propagate the inner content’s visible title as the shell’s own accessible name. Read more
Source§

fn accessible_title_node(&self) -> Option<WidgetId>

The widget that paints this one’s title, when it has one. Read more
Source§

fn initial_focus_hint(&self) -> Option<WidgetId>

Optional hint that directs initial focus to a specific descendant when this widget is the root of a deferred-built modal surface. Read more
Source§

fn context_menu_key_target(&self) -> Option<WidgetId>

Which descendant a keyboard request for a context menu should target. Read more
Source§

fn accessibility_children(&self) -> Option<Vec<WidgetId>>

Optional override for the child ORDER presented to assistive technology, when it must differ from the paint / z-order child order returned by children. Read more
Source§

fn as_any(&self) -> Option<&(dyn Any + 'static)>

Downcast hook. Default implementation returns None; concrete widgets override with Some(self) when they want to expose their concrete type to test-level introspection or reflection. The trait already bounds on std::any::Any so concrete types satisfy the 'static requirement.
Source§

fn as_any_mut(&mut self) -> Option<&mut (dyn Any + 'static)>

Mutable counterpart of as_any. Default returns None; widgets that want to expose mutable state to tests (e.g. so a test can mutate a Scene inside a SceneView post-layout) override with Some(self). Should follow the same opt-in pattern as as_any: only widgets that opt into & introspection should opt into &mut.
Source§

fn clips_children(&self) -> bool

Whether this widget clips its children to its bounds.
Source§

fn focus_reveal_rect(&self, _bounds: Rect) -> Option<Rect>

The rectangle (in absolute tree coordinates) that best represents this widget when the framework reveals it into an ancestor scroll area on focus gain. Returning None (the default) reveals the widget’s whole bounds — correct for most controls. Read more
Source§

fn hit_shape(&self, _local_point: Point, _bounds: Rect) -> bool

Whether the point lies inside this widget’s actual shape, not just its rectangular bounds. Consulted by hit-testing right after the bounds check: returning false for a point that is inside the bounding box makes the widget transparent to the click there, so it falls through to whatever sibling is painted underneath (the same machinery as a fully pass-through node, but shape-aware). Read more
Source§

fn accepts_child_hit(&self, _child: WidgetId, _point: Point) -> bool

Veto a hit on one of this widget’s direct children, per point. Read more
Source§

fn hit_slop(&self, _kind: PointerKind, _tokens: &InputTokens) -> Option<HitSlop>

This widget’s own say in the miss-only slop pass, overriding the density default for its node. Read more
Source§

fn hit_distance(&self, local_point: Point, bounds: Rect) -> Option<f32>

How far a missed press is from this widget’s actual silhouette, in the widget’s own bounds space. Read more
Source§

fn target_regions(&self, _bounds: Rect) -> Vec<TargetRegion>

The interactive sub-regions this widget paints inside its own single node — a scroll bar’s thumb, a slider’s knob, a header cell’s filter affordance. Read more
Source§

fn preserves_children_on_rebuild(&self) -> bool

How rebuild_single_widget treats this widget’s existing children when re-running its build(). Read more
Source§

fn tooltip_has_content(&self) -> bool

Whether this widget, used as tooltip content, currently has anything worth showing. Read more
Source§

fn declare_shortcuts(&self) -> Vec<Shortcut>

Declare the rebindable keyboard shortcuts this widget exposes, without installing handlers. The framework calls this at arena insertion time (before build()) and at certain lazy boundaries (e.g. Switcher walks declarations on its not-yet-mounted Pending slots), so settings UIs and the ShortcutRegistry see the keystrokes the moment the owning container mounts — even if build() hasn’t run. Read more
Source§

fn take_handler_set(&mut self) -> Option<HandlerSet>

Extract attached handler set from a WidgetWithHandlers wrapper. Called during arena insertion to transfer handlers to the WidgetNode. Default: returns None (no attached handlers).

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> Downcast for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
Source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
Source§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
Source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Source§

impl<T> Downcast<T> for T

Source§

fn downcast(&self) -> &T

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<W> IntoTeksiChild for W
where W: Widget + 'static,

Source§

impl<T> NoneValue for T
where T: Default,

Source§

type NoneType = T

Source§

fn null_value() -> T

The none-equivalent value.
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Upcast<T> for T

Source§

fn upcast(&self) -> Option<&T>

Source§

impl<W> WidgetBuilder for W
where W: Widget + 'static,

Source§

fn on_tap( self, f: impl FnMut(&TapEvent, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_double_tap( self, f: impl FnMut(&TapEvent, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_triple_tap( self, f: impl FnMut(&TapEvent, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_long_press( self, f: impl FnMut(&TapEvent, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn accept_tap_buttons( self, mask: impl Into<ButtonMask>, ) -> WidgetWithHandlers<Self>

Restrict (or extend) the set of pointer buttons that fire on_tap. Default is ButtonMask::PRIMARY.
Source§

fn accept_double_tap_buttons( self, mask: impl Into<ButtonMask>, ) -> WidgetWithHandlers<Self>

Restrict (or extend) the set of pointer buttons that fire on_double_tap. Default ButtonMask::PRIMARY.
Source§

fn accept_triple_tap_buttons( self, mask: impl Into<ButtonMask>, ) -> WidgetWithHandlers<Self>

Restrict (or extend) the set of pointer buttons that fire on_triple_tap. Default ButtonMask::PRIMARY.
Source§

fn accept_long_press_buttons( self, mask: impl Into<ButtonMask>, ) -> WidgetWithHandlers<Self>

Restrict (or extend) the set of pointer buttons that fire on_long_press. Default ButtonMask::PRIMARY.
Source§

fn on_drag( self, f: impl FnMut(DragPhase, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_swipe( self, f: impl FnMut(SwipeDirection, f32, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_pinch( self, f: impl FnMut(PinchPhase, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_focus( self, f: impl FnMut(bool, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_key( self, f: impl FnMut(&WidgetEvent, &mut EventContext<'_>) -> EventResponse + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_key_preview( self, f: impl FnMut(&WidgetEvent, &mut EventContext<'_>) -> EventResponse + 'static, ) -> WidgetWithHandlers<Self>

Strict-ancestor key preview. See HandlerSet::on_key_preview.
Source§

fn on_pointer_event( self, f: impl FnMut(&WidgetEvent, &mut EventContext<'_>) -> EventResponse + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_hover( self, f: impl FnMut(bool, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_scroll( self, f: impl FnMut(&WidgetEvent, &mut EventContext<'_>) -> EventResponse + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_access_action( self, f: impl FnMut(Action, &mut EventContext<'_>) -> EventResponse + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn focusable(self, focusable: bool) -> WidgetWithHandlers<Self>

Source§

fn tab_index(self, index: i32) -> WidgetWithHandlers<Self>

Source§

fn cursor(self, cursor: CursorIcon) -> WidgetWithHandlers<Self>

Source§

fn clips_children_on(self, clips: bool) -> WidgetWithHandlers<Self>

Source§

fn ime_input(self, ctx: ImeContext) -> WidgetWithHandlers<Self>

Declare this node a text-input surface, enabling the OS input method (with ctx’s purpose) while it is focused. See crate::ime.
Source§

fn event_pass_through(self, pass_through: bool) -> WidgetWithHandlers<Self>

Make the widget invisible to pointer hit-testing. See HandlerSet::event_pass_through.
Source§

fn gesture_dead_zone(self, dead_zone: bool) -> WidgetWithHandlers<Self>

Mark this widget’s subtree a gesture dead zone. See HandlerSet::gesture_dead_zone.
Source§

fn long_press_role(self, role: LongPressRole) -> WidgetWithHandlers<Self>

Select what a hold on this widget’s subtree means. See HandlerSet::long_press_role.
Source§

fn touch_action(self, action: TouchAction) -> WidgetWithHandlers<Self>

Override what a direct pointer may do to this widget’s subtree. See HandlerSet::touch_action.
Source§

fn scroll_container(self, axes: PanAxes) -> WidgetWithHandlers<Self>

Declare this widget a pan surface on axes, kinetic, direct pointers only. See HandlerSet::scroll_container.
Source§

fn pan_claim(self, claim: PanClaim) -> WidgetWithHandlers<Self>

Declare this widget a pan surface with an explicit PanClaim. See HandlerSet::pan_claim.
Source§

fn overscroll_behavior( self, behavior: OverscrollBehavior, ) -> WidgetWithHandlers<Self>

Whether this widget absorbs a boundary scroll or chains it outward. See HandlerSet::overscroll_behavior.
Source§

fn drag_activation(self, activation: DragActivation) -> WidgetWithHandlers<Self>

Declare when a drag on this widget may begin relative to the press that starts it. See HandlerSet::drag_activation.
Source§

fn multi_contact(self, policy: MultiContact) -> WidgetWithHandlers<Self>

Declare how many simultaneous contacts this widget serves. Default MultiContact::First — the second finger on a single-contact control is terminated there rather than reaching an ancestor.
Source§

fn keyboard_capture(self, capture: bool) -> WidgetWithHandlers<Self>

Mark this widget a keyboard capture surface (terminals, game viewports): while focused, KeyDowns bypass shortcut resolution. See HandlerSet::keyboard_capture.
Source§

fn hit_transparent(self, transparent: bool) -> WidgetWithHandlers<Self>

Make this widget and its whole subtree invisible to pointer hit-testing (decorative overlays). See HandlerSet::hit_transparent.
Source§

fn hit_slop(self, slop: HitSlop) -> WidgetWithHandlers<Self>

Override the miss-only hit slop for this node. See HandlerSet::hit_slop.
Source§

fn no_hit_slop(self) -> WidgetWithHandlers<Self>

Take this node out of both hit-widening mechanisms — no slop outset and no Widget::hit_outset. See HandlerSet::no_hit_slop.
Source§

fn context_menu( self, factory: impl Fn(Point, &mut EventContext<'_>) -> Option<Box<dyn Widget>> + 'static, ) -> WidgetWithHandlers<Self>

Set a context-menu factory. See HandlerSet::context_menu for the full contract.
Source§

fn focus_within(self, signal: Signal<bool>) -> WidgetWithHandlers<Self>

Bind a Signal<bool> the framework writes when a strict descendant has focus. See HandlerSet::focus_within.
Source§

fn hover_within(self, signal: Signal<bool>) -> WidgetWithHandlers<Self>

Bind a Signal<bool> the framework writes when a strict descendant is hovered. See HandlerSet::hover_within.
Source§

fn visible_when(self, state: impl Into<Prop<bool>>) -> WidgetWithHandlers<Self>

Bind this node’s visibility (bool / Signal<bool> / Prop<bool>) as a builder property, so teksu! can write visible_when: sig. Equivalent to ctx.visible_when(id, ..). See HandlerSet::visible_when.
Source§

fn on_drag_hover( self, f: impl FnMut(&DragPayload, Point, &mut EventContext<'_>) -> DropFeedback + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_drag_leave( self, f: impl FnMut(&mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_drag_tick( self, f: impl FnMut(Point, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_pointer_cancel( self, f: impl FnMut(&PointerInfo, CancelReason, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Attach a pointer-cancel handler. See HandlerSet::on_pointer_cancel.
Source§

fn on_drop( self, f: impl FnMut(DragPayload, Point, &mut EventContext<'_>) -> bool + 'static, ) -> WidgetWithHandlers<Self>

Source§

fn on_drag_ended( self, f: impl FnMut(DropOutcome, &mut EventContext<'_>) + 'static, ) -> WidgetWithHandlers<Self>

Set the drag-ended handler on a drag source. See HandlerSet::on_drag_ended.
Source§

fn access_label( self, label: impl Into<Prop<String>>, ) -> WidgetWithHandlers<Self>

Source§

fn access_description( self, description: impl Into<Prop<String>>, ) -> WidgetWithHandlers<Self>

Source§

fn access_hint(self, hint: impl Into<Prop<String>>) -> WidgetWithHandlers<Self>

Source§

fn access_value( self, value: impl Into<Prop<String>>, ) -> WidgetWithHandlers<Self>

Source§

fn access_role(self, role: Role) -> WidgetWithHandlers<Self>

Source§

fn access_hidden( self, hidden: impl Into<Prop<bool>>, ) -> WidgetWithHandlers<Self>

Source§

fn access_disabled(self, disabled: bool) -> WidgetWithHandlers<Self>

Source§

fn access_identifier(self, id: impl Into<String>) -> WidgetWithHandlers<Self>

Source§

fn access_controls(self, target: WidgetId) -> WidgetWithHandlers<Self>

Source§

fn access_described_by(self, target: WidgetId) -> WidgetWithHandlers<Self>

Source§

fn access_labelled_by(self, target: WidgetId) -> WidgetWithHandlers<Self>

Source§

fn access_live(self, mode: Live) -> WidgetWithHandlers<Self>

Source§

fn access_current(self, current: AriaCurrent) -> WidgetWithHandlers<Self>

Source§

fn access_shortcut_literal( self, shortcut: impl Into<String>, ) -> WidgetWithHandlers<Self>

Source§

fn access_shortcut_id(self, id: impl Into<String>) -> WidgetWithHandlers<Self>

Source§

fn access_has_popup(self, kind: HasPopup) -> WidgetWithHandlers<Self>

Source§

fn access_orientation( self, orientation: Orientation, ) -> WidgetWithHandlers<Self>

Source§

fn access_exclude_subtree(self) -> WidgetWithHandlers<Self>

Source§

fn access_merge_subtree(self) -> WidgetWithHandlers<Self>

Source§

fn access_subtree(self, mode: AccessSubtreeMode) -> WidgetWithHandlers<Self>

Source§

fn access_numeric_value(self, value: f64) -> WidgetWithHandlers<Self>

Source§

fn access_numeric_range(self, min: f64, max: f64) -> WidgetWithHandlers<Self>

Source§

fn access_numeric_step(self, step: f64) -> WidgetWithHandlers<Self>

Source§

fn access_action<F>( self, action: Action, handler: F, ) -> WidgetWithHandlers<Self>
where F: FnMut(&mut EventContext<'_>) + 'static,

Source§

fn access_remove_action(self, action: Action) -> WidgetWithHandlers<Self>

Source§

fn access_custom_action<F>( self, label: impl Into<Prop<String>>, handler: F, ) -> WidgetWithHandlers<Self>
where F: FnMut(&mut EventContext<'_>) + 'static,

Source§

fn access_customize<F>(self, f: F) -> WidgetWithHandlers<Self>
where F: Fn(&mut AccessNodeBuilder) + 'static,

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more