ResizableSplitterThemeData class Theming

Shared styling and behavior for ResizableSplitter widgets.

Every field is nullable, and an unset field genuinely means "unset": it falls through to the next layer rather than re-asserting a default. The resolution order, lowest precedence first, is the built-in default, the app-wide ThemeData extension, a local ResizableSplitterTheme, then the explicit constructor argument on the widget. Because nothing here carries a default, layering a partial override (for example a local theme that sets only dragBarrierColor) can never clobber a value a broader scope supplied.

Use it in two interchangeable ways:

  • app-wide, via ThemeData(extensions: [ResizableSplitterThemeData(...)]);
  • for a subtree, via ResizableSplitterTheme.
Inheritance
Annotations

Constructors

ResizableSplitterThemeData({SplitterDividerStyle? divider, Color? dragBarrierColor, bool? shieldPlatformViews, bool? enableKeyboard, bool? enableHaptics, double? keyboardStep, double? pageStep, UnboundedBehavior? unboundedBehavior, double? fallbackExtent, bool? snapToPhysicalPixels, SplitterSemanticsLabels? semantics})
Creates theme data. Every field defaults to null, meaning "defer".
const

Properties

divider SplitterDividerStyle?
Divider appearance and grab configuration.
final
dragBarrierColor Color?
Optional overlay tint while dragging.
final
enableHaptics bool?
Whether haptic feedback fires on drag start and keyboard adjustments.
final
enableKeyboard bool?
Whether keyboard interaction is enabled.
final
fallbackExtent double?
Fallback extent used when opting into UnboundedBehavior.useFallbackExtent.
final
hashCode int
The hash code for this object.
no setterinherited
keyboardStep double?
Ratio delta applied when pressing arrow keys.
final
pageStep double?
Ratio delta applied when pressing page keys.
final
props List<Object?>
The list of properties that will be used to determine whether two instances are equal.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
semantics SplitterSemanticsLabels?
Localizable semantics strings and value formatting for descendant splitters. Null defers to the built-in English defaults.
final
shieldPlatformViews bool?
Whether the overlay shield is inserted during drags.
final
snapToPhysicalPixels bool?
Whether to snap the leading panel size to whole physical pixels.
final
stringify bool?
If set to true, the toString method will be overridden to output this instance's props.
no setterinherited
type Object
The extension's type.
no setterinherited
unboundedBehavior UnboundedBehavior?
Strategy when encountering unbounded main-axis constraints.
final

Methods

copyWith({Object? divider = _noUpdate, Object? dragBarrierColor = _noUpdate, Object? shieldPlatformViews = _noUpdate, Object? enableKeyboard = _noUpdate, Object? enableHaptics = _noUpdate, Object? keyboardStep = _noUpdate, Object? pageStep = _noUpdate, Object? unboundedBehavior = _noUpdate, Object? fallbackExtent = _noUpdate, Object? snapToPhysicalPixels = _noUpdate, Object? semantics = _noUpdate}) ResizableSplitterThemeData
Returns a copy with the provided fields replaced. Returns a copy with the provided fields replaced. Every parameter accepts an explicit null to clear that field (fall back to the next layer); omitting a parameter keeps the current value.
override
lerp(covariant ResizableSplitterThemeData? other, double t) ResizableSplitterThemeData
Linearly interpolates between two theme data objects.
override
merge(ResizableSplitterThemeData? other) ResizableSplitterThemeData
Overlays other on top of this data, field by field. A non-null field in other wins; unset fields fall through to this. The nested divider is merged the same way, so a local divider style layers over the base instead of replacing it wholesale.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited