PaintingBinding mixin Null safety
Binding for the painting library.
Hooks into the cache eviction logic to clear the image cache.
Requires the ServicesBinding to be mixed in earlier.
- Superclass Constraints
- Mixin Applications
Properties
- imageCache → ImageCache
-
The singleton that implements the Flutter framework's image cache. [...]
read-only
- systemFonts → Listenable
-
Listenable that notifies when the available fonts on the system have
changed. [...]
read-only
- window → SingletonFlutterWindow
-
The main window to which this binding is bound. [...]
read-only, inherited
- platformDispatcher → PlatformDispatcher
-
The ui.PlatformDispatcher to which this binding is bound. [...]
read-only, inherited
- locked → bool
-
Whether lockEvents is currently locking events. [...]
@protected, read-only, inherited
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
- keyboard → HardwareKeyboard
-
The global singleton instance of HardwareKeyboard, which can be used to
query keyboard states.
read-only, inherited
- keyEventManager → KeyEventManager
-
The global singleton instance of KeyEventManager, which is used
internally to dispatch key messages.
read-only, inherited
- defaultBinaryMessenger → BinaryMessenger
-
The default instance of BinaryMessenger. [...]
read-only, inherited
- channelBuffers → ChannelBuffers
-
The low level buffering and dispatch mechanism for messages sent by
plugins on the engine side to their corresponding plugin code on
the framework side. [...]
read-only, inherited
- restorationManager → RestorationManager
-
The RestorationManager synchronizes the restoration data between
engine and framework. [...]
read-only, inherited
- schedulingStrategy ↔ SchedulingStrategy
-
The strategy to use when deciding whether to run a task or not. [...]
read / write, inherited
- lifecycleState → AppLifecycleState?
-
Whether the application is visible, and if so, whether it is currently
interactive. [...]
read-only, inherited
- transientCallbackCount → int
-
The current number of transient frame callbacks scheduled. [...]
read-only, inherited
-
endOfFrame
→ Future<
void> -
Returns a Future that completes after the frame completes. [...]
read-only, inherited
- hasScheduledFrame → bool
-
Whether this scheduler has requested that handleBeginFrame be called soon.
read-only, inherited
- schedulerPhase → SchedulerPhase
-
The phase that the scheduler is currently operating under.
read-only, inherited
- framesEnabled → bool
-
Whether frames are currently being scheduled when scheduleFrame is called. [...]
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
dart:ui.PlatformDispatcher.onBeginFrame for the frame currently being
processed. [...]
read-only, inherited
Methods
-
initInstances(
) → void -
The initialization method. Subclasses override this method to hook into
the platform and otherwise configure their services. Subclasses must call
"super.initInstances()". [...]
override
-
createImageCache(
) → ImageCache - Creates the ImageCache singleton (accessible via imageCache). [...]
-
instantiateImageCodec(
Uint8List bytes, {int? cacheWidth, int? cacheHeight, bool allowUpscaling = false}) → Future< Codec> - Calls through to dart:ui.instantiateImageCodec from ImageCache. [...]
-
evict(
String asset) → void -
Called in response to the
ext.flutter.evict
service extension. [...]override -
handleMemoryPressure(
) → void -
Called when the operating system notifies the application of a memory
pressure situation. [...]
override
-
handleSystemMessage(
Object systemMessage) → Future< void> -
Handler called for messages received on the SystemChannels.system
message channel. [...]
override
-
initServiceExtensions(
) → void -
Called when the binding is initialized, to register service
extensions. [...]
@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
-
unlocked(
) → void -
Called by lockEvents when events get unlocked. [...]
@mustCallSuper, @protected, inherited
-
reassembleApplication(
) → Future< void> -
Cause the entire application to redraw, e.g. after a hot reload. [...]
inherited
-
performReassemble(
) → Future< void> -
This method is called by reassembleApplication to actually cause the
application to reassemble, e.g. after a hot reload. [...]
@mustCallSuper, @protected, inherited
-
registerSignalServiceExtension(
{required String name, required AsyncCallback callback}) → void -
Registers a service extension method with the given name (full
name "ext.flutter.name"), which takes no arguments and returns
no value. [...]
@protected, inherited
-
registerBoolServiceExtension(
{required String name, required AsyncValueGetter< bool> getter, required AsyncValueSetter<bool> setter}) → void -
Registers a service extension method with the given name (full
name "ext.flutter.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(
{required String name, required AsyncValueGetter< double> getter, required AsyncValueSetter<double> setter}) → void -
Registers a service extension method with the given name (full
name "ext.flutter.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
-
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
-
registerStringServiceExtension(
{required String name, required AsyncValueGetter< String> getter, required AsyncValueSetter<String> setter}) → void -
Registers a service extension method with the given name (full name
"ext.flutter.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
-
registerServiceExtension(
{required String name, required ServiceExtensionCallback callback}) → void -
Registers a service extension method with the given name (full name
"ext.flutter.name"). [...]
@protected, inherited
-
toString(
) → String -
A string representation of this object. [...]
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
createBinaryMessenger(
) → BinaryMessenger -
Creates a default BinaryMessenger instance that can be used for sending
platform messages. [...]
@protected, inherited
-
initLicenses(
) → void -
Adds relevant licenses to the LicenseRegistry. [...]
@mustCallSuper, @protected, inherited
-
readInitialLifecycleStateFromNativeWindow(
) → void -
Initializes the lifecycleState with the
dart:ui.PlatformDispatcher.initialLifecycleState. [...]
@protected, inherited
-
createRestorationManager(
) → RestorationManager -
Creates the RestorationManager instance available via
restorationManager. [...]
@protected, inherited
-
setSystemUiChangeCallback(
SystemUiChangeCallback? callback) → void -
Sets the callback for the
SystemChrome.systemUIChange
method call received on the SystemChannels.platform channel. [...]inherited -
addTimingsCallback(
TimingsCallback callback) → void -
Add a TimingsCallback that receives FrameTiming sent from
the engine. [...]
inherited
-
removeTimingsCallback(
TimingsCallback callback) → void -
Removes a callback that was earlier added by addTimingsCallback.
inherited
-
handleAppLifecycleStateChanged(
AppLifecycleState state) → void -
Called when the application lifecycle state changes. [...]
@mustCallSuper, @protected, inherited
-
scheduleTask<
T> (TaskCallback< T> task, Priority priority, {String? debugLabel, Flow? flow}) → Future<T> -
Schedules the given
task
with the givenpriority
and returns a Future that completes to thetask
's eventual return value. [...]inherited -
handleEventLoopCallback(
) → bool -
Execute the highest-priority task, if it is of a high enough priority. [...]
@visibleForTesting, inherited
-
scheduleFrameCallback(
FrameCallback callback, {bool rescheduling = false}) → int -
Schedules the given transient frame callback. [...]
inherited
-
cancelFrameCallbackWithId(
int id) → void -
Cancels the transient frame callback with the given
id
. [...]inherited -
debugAssertNoTransientCallbacks(
String reason) → bool -
Asserts that there are no registered transient callbacks; if
there are, prints their locations and throws an exception. [...]
inherited
-
addPersistentFrameCallback(
FrameCallback callback) → void -
Adds a persistent frame callback. [...]
inherited
-
addPostFrameCallback(
FrameCallback callback) → void -
Schedule a callback for the end of this frame. [...]
inherited
-
ensureFrameCallbacksRegistered(
) → void -
Ensures callbacks for PlatformDispatcher.onBeginFrame and
PlatformDispatcher.onDrawFrame are registered.
@protected, inherited
-
ensureVisualUpdate(
) → void -
Schedules a new frame using scheduleFrame if this object is not
currently producing a frame. [...]
inherited
-
scheduleFrame(
) → void -
If necessary, schedules a new frame by calling
dart:ui.PlatformDispatcher.scheduleFrame. [...]
inherited
-
scheduleForcedFrame(
) → void -
Schedules a new frame by calling
dart:ui.PlatformDispatcher.scheduleFrame. [...]
inherited
-
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. [...]
inherited
-
resetEpoch(
) → void -
Prepares the scheduler for a non-monotonic change to how time stamps are
calculated. [...]
inherited
-
handleBeginFrame(
Duration? rawTimeStamp) → void -
Called by the engine to prepare the framework to produce a new frame. [...]
inherited
-
handleDrawFrame(
) → void -
Called by the engine to produce a new frame. [...]
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator. [...]
inherited
Static Properties
- instance → PaintingBinding
-
The current PaintingBinding, if one has been created. [...]
read-only, override
- shaderWarmUp ↔ ShaderWarmUp?
-
ShaderWarmUp instance to be executed during initInstances. [...]
read / write