RendererBinding mixin

The glue between the render tree and the Flutter engine.

Superclass Constraints
Implemented by




mouseTracker MouseTracker
The object that manages state about currently connected mice, for hover notification.
pipelineOwner PipelineOwner
The render tree's owner, which maintains dirty state for layout, composite, paint, and accessibility semantics
renderView RenderView
The render tree that's attached to the output surface.
read / write
accessibilityFeatures AccessibilityFeatures
The currently active set of AccessibilityFeatures. [...]
read-only, inherited
currentFrameTimeStamp Duration
The time stamp for the frame currently being processed. [...]
read-only, inherited
currentSystemFrameTimeStamp Duration
The raw time stamp as provided by the engine to Window.onBeginFrame for the frame currently being processed. [...]
read-only, inherited
disableAnimations bool
The platform is requesting that animations be disabled or simplified. [...]
read-only, inherited
endOfFrame Future<void>
Returns a Future that completes after the frame completes. [...]
read-only, inherited
framesEnabled bool
Whether frames are currently being scheduled when scheduleFrame is called. [...]
read-only, inherited
gestureArena GestureArenaManager
The gesture arenas used for disambiguating the meaning of sequences of pointer events.
final, inherited
hashCode int
The hash code for this object. [...]
read-only, inherited
hasScheduledFrame bool
Whether this scheduler has requested that handleBeginFrame be called soon.
read-only, inherited
lifecycleState AppLifecycleState
Whether the application is visible, and if so, whether it is currently interactive. [...]
read-only, inherited
locked bool
Whether lockEvents is currently locking events. [...]
@protected, read-only, inherited
pointerRouter PointerRouter
A router that routes all pointer events received from the engine.
final, inherited
pointerSignalResolver PointerSignalResolver
The resolver used for determining which widget handles a pointer signal event.
final, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
schedulerPhase SchedulerPhase
The phase that the scheduler is currently operating under.
read-only, inherited
schedulingStrategy SchedulingStrategy
The strategy to use when deciding whether to run a task or not. [...]
read / write, inherited
transientCallbackCount int
The current number of transient frame callbacks scheduled. [...]
read-only, inherited
window Window
The window to which this binding is bound. [...]
read-only, inherited


createViewConfiguration() ViewConfiguration
Returns a ViewConfiguration configured for the RenderView based on the current environment. [...]
drawFrame() → void
Pump the rendering pipeline to generate a frame. [...]
handleMetricsChanged() → void
Called when the system metrics change. [...]
handlePlatformBrightnessChanged() → void
Called when the platform brightness changes. [...]
handleTextScaleFactorChanged() → void
Called when the platform text scale factor changes. [...]
hitTest(HitTestResult result, Offset position) → void
Determine which HitTestTarget objects are located at a given position.
initInstances() → void
The initialization method. Subclasses override this method to hook into the platform and otherwise configure their services. Subclasses must call "super.initInstances()". [...]
initRenderView() → void
Creates a RenderView object to be the root of the RenderObject rendering tree, and initializes it so that it will be rendered when the engine is next ready to display a frame. [...]
initServiceExtensions() → void
Called when the binding is initialized, to register service extensions. [...]
performReassemble() Future<void>
This method is called by reassembleApplication to actually cause the application to reassemble, e.g. after a hot reload. [...]
setSemanticsEnabled(bool enabled) → void
Whether the render tree associated with this binding should produce a tree of SemanticsNode objects.
addPersistentFrameCallback(FrameCallback callback) → void
Adds a persistent frame callback. [...]
addPostFrameCallback(FrameCallback callback) → void
Schedule a callback for the end of this frame. [...]
cancelFrameCallbackWithId(int id) → void
Cancels the transient frame callback with the given id. [...]
cancelPointer(int pointer) → void
Dispatch a PointerCancelEvent for the given pointer soon. [...]
debugAssertNoTransientCallbacks(String reason) bool
Asserts that there are no registered transient callbacks; if there are, prints their locations and throws an exception. [...]
dispatchEvent(PointerEvent event, HitTestResult hitTestResult) → void
Dispatch an event to a hit test result's path. [...]
ensureVisualUpdate() → void
Schedules a new frame using scheduleFrame if this object is not currently producing a frame. [...]
evict(String asset) → void
Called in response to the ext.flutter.evict service extension. [...]
@mustCallSuper, @protected, inherited
handleAccessibilityFeaturesChanged() → void
Called when the platform accessibility features change. [...]
@protected, inherited
handleAppLifecycleStateChanged(AppLifecycleState state) → void
Called when the application lifecycle state changes. [...]
@mustCallSuper, @protected, inherited
handleBeginFrame(Duration rawTimeStamp) → void
Called by the engine to prepare the framework to produce a new frame. [...]
handleDrawFrame() → void
Called by the engine to produce a new frame. [...]
handleEvent(PointerEvent event, HitTestEntry entry) → void
Override this method to receive events.
handleEventLoopCallback() bool
Execute the highest-priority task, if it is of a high enough priority. [...]
@visibleForTesting, inherited
initLicenses() → void
Adds relevant licenses to the LicenseRegistry. [...]
@mustCallSuper, @protected, inherited
lockEvents(Future<void> callback()) Future<void>
Locks the dispatching of asynchronous events and callbacks until the callback's future completes. [...]
@protected, inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
postEvent(String eventKind, Map<String, dynamic> eventData) → void
All events dispatched by a BindingBase use this method instead of calling developer.postEvent directly so that tests for BindingBase can track which events were dispatched by overriding this method.
@protected, inherited
readInitialLifecycleStateFromNativeWindow() → void
Initializes the lifecycleState with the initialLifecycleState from the window. [...]
@protected, inherited
reassembleApplication() Future<void>
Cause the entire application to redraw, e.g. after a hot reload. [...]
registerBoolServiceExtension({String name, AsyncValueGetter<bool> getter, AsyncValueSetter<bool> setter }) → void
Registers a service extension method with the given name (full name ""), which takes a single argument "enabled" which can have the value "true" or the value "false" or can be omitted to read the current value. (Any value other than "true" is considered equivalent to "false". Other arguments are ignored.) [...]
@protected, inherited
registerNumericServiceExtension({String name, AsyncValueGetter<double> getter, AsyncValueSetter<double> setter }) → void
Registers a service extension method with the given name (full name ""), which takes a single argument with the same name as the method which, if present, must have a value that can be parsed by double.parse, and can be omitted to read the current value. (Other arguments are ignored.) [...]
@protected, inherited
registerServiceExtension({String name, ServiceExtensionCallback callback }) → void
Registers a service extension method with the given name (full name ""). [...]
@protected, inherited
registerSignalServiceExtension({String name, AsyncCallback callback }) → void
Registers a service extension method with the given name (full name ""), which takes no arguments and returns no value. [...]
@protected, inherited
registerStringServiceExtension({String name, AsyncValueGetter<String> getter, AsyncValueSetter<String> setter }) → void
Registers a service extension method with the given name (full name ""), which optionally takes a single argument with the name "value". If the argument is omitted, the value is to be read, otherwise it is to be set. Returns the current value. [...]
@protected, inherited
resetEpoch() → void
Prepares the scheduler for a non-monotonic change to how time stamps are calculated. [...]
scheduleForcedFrame() → void
Schedules a new frame by calling Window.scheduleFrame. [...]
scheduleFrame() → void
If necessary, schedules a new frame by calling Window.scheduleFrame. [...]
scheduleFrameCallback(FrameCallback callback, { bool rescheduling: false }) int
Schedules the given transient frame callback. [...]
scheduleTask<T>(TaskCallback<T> task, Priority priority, { String debugLabel, Flow flow }) Future<T>
Schedules the given task with the given priority and returns a Future that completes to the task's eventual return value. [...]
scheduleWarmUpFrame() → void
Schedule a frame to run as soon as possible, rather than waiting for the engine to request a frame in response to a system "Vsync" signal. [...]
toString() String
Returns a string representation of this object.
unlocked() → void
Called by lockEvents when events get unlocked. [...]
@mustCallSuper, @protected, inherited


operator ==(dynamic other) bool
The equality operator. [...]

Static Properties

instance RendererBinding
The current RendererBinding, if one has been created.