DockResolver class final

Turns a pointer position into a dock target, or nothing.

Five zones over a leaf: the inner half of each dimension joins the leaf as a tab; outside that, the nearest edge splits the leaf on that side. A band along the window's own edges splits the whole tree. A strip hit inserts at the index. Every candidate is checked against the tree and the policy by running the edit, so a target the policy refuses is never offered — nothing lights up rather than something failing.

Constructors

DockResolver({DockPolicy policy = DockPolicy.permissive, double edgeBand = 24, double centreFraction = 0.5, String newId() = PanelIds.next})
const

Properties

centreFraction → double
The share of a leaf, in each dimension, that counts as its centre.
final
edgeBand → double
How far in from the window's edges a drop still splits the root.
final
hashCode → int
The hash code for this object.
no setterinherited
newId → String Function()
final
policy → DockPolicy
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
resolve({required LayoutNode? root, required LayoutResult layout, required DockSource source, required DockHit hit, required SurfaceForm preferredForm}) → DockCandidate?
toString() → String
A string representation of this object.
inherited

Operators

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