2 initInstancesinstance _instanceinitServiceExtensions _manifold mouseTracker _mouseTracker pipelineOwner renderViewcreateRootPipelineOwnerrootPipelineOwner_rootPipelineOwner renderViews_viewIdToRenderView addRenderViewremoveRenderViewcreateViewConfigurationForcreateSceneBuildercreatePictureRecorder createCanvashandleMetricsChangedhandleTextScaleFactorChangedhandlePlatformBrightnessChangedinitMouseTracker dispatchEventperformSemanticsAction_handleWebFirstFrame_handlePersistentFrameCallback!_debugMouseTrackerUpdateScheduled_scheduleMouseTrackerUpdate_firstFrameDeferredCount_firstFrameSentsendFramesToEnginedeferFirstFrameallowFirstFrameresetFirstFrameSent drawFrameperformReassemble hitTestInView _forceRepaintensureInitialized_bindingrequestVisualUpdatesemanticsEnableddisposerootNode_onSemanticsUpdate_initialFramePreparedprepareInitialFramescheduleInitialSemantics RendererBinding_debugCollectRenderTreesdebugDumpRenderTree_debugCollectLayerTreesdebugDumpLayerTree_debugCollectSemanticsTreesdebugDumpSemanticsTreedebugDumpPipelineOwnerTreeRenderingFlutterBinding_BindingPipelineManifold_DefaultRootPipelineOwner_ReusableRenderView€ÙPictureRecorder SceneBuilderSemanticsUpdate HitTestResult RenderView addRenderView PipelineOwnerrootPipelineOwnerView BindingBaseServicesBindingSchedulerBindingGestureBindingSemanticsBinding HitTestableoverridevoid initInstances _instance_rootPipelineOwnercreateRootPipelineOwnerplatformDispatcheronMetricsChangedhandleMetricsChangedonTextScaleFactorChangedhandleTextScaleFactorChangedonPlatformBrightnessChangedhandlePlatformBrightnessChangedaddPersistentFrameCallback_handlePersistentFrameCallbackinitMouseTrackerkIsWebaddPostFrameCallback_handleWebFirstFrame debugLabelattach _manifoldrunAppWidgetsFlutterBindingensureInitialized checkInstanceinitServiceExtensionsregisterBoolServiceExtensionnameRenderingServiceExtensionsinvertOversizedImagesgetterdebugInvertOversizedImagessetterboolvalue unawaited _forceRepaint debugPaintdebugPaintSizeEnableddebugPaintBaselinesEnabledrepaintRainbowdebugRepaintRainbowEnabledregisterServiceExtensiondebugDumpLayerTreecallbackMapStringObjectdebugDisableClipLayersdebugDisablePhysicalShapeLayersdebugDisableOpacityLayers kReleaseModedebugDumpRenderTree&debugDumpSemanticsTreeInTraversalOrderDebugSemanticsDumpOrdertraversalOrder+debugDumpSemanticsTreeInInverseHitTestOrderinverseHitTestprofileRenderObjectPaintsdebugProfilePaintsEnabledprofileRenderObjectLayoutsdebugProfileLayoutsEnabledPipelineManifold MouseTracker _mouseTracker renderView pipelineOwnerWidgetsBindingwrapWithDefaultViewSemanticsOwnerinstance DeprecatedonSemanticsOwnerCreatedrootNodescheduleInitialSemanticsonSemanticsUpdateupdateSemanticsupdateonSemanticsOwnerDisposedclearSemantics renderViewsview implicitView adoptChild FlutterViewremoveRenderViewIterable_viewIdToRenderViewvalues configurationcompositeFrame flutterViewviewId containsValue containsKeycreateViewConfigurationForremoveViewConfiguration protectedfromViewLayerPaintingContext RenderObjectPicture PictureLayerCanvascreatePictureRecordervisibleForTestingchildscheduleForcedFrame MediaQueryplatformBrightnessOfPlatformDispatcherplatformBrightnessdisposetrackerOffsetint hitTestInViewposition PointerEventupdateWithEventPointerMoveEvent dispatchEventSemanticsActionEventownersemanticsOwner performActionnodeIdtype argumentsDuration MethodChannel invokeMethod drawFrame_scheduleMouseTrackerUpdate!_debugMouseTrackerUpdateScheduledupdateAllDevicesdeferFirstFrame_firstFrameSent_firstFrameDeferredCountallowFirstFrameschedulerPhaseSchedulerPhaseidlescheduleWarmUpFramehandleDrawFramehandleBeginFrame onBeginFramescheduleFrameCallbackTickerAnimationController Animation performLayoutmarkNeedsLayoutmarkNeedsCompositingBitsUpdatepaintmarkNeedsPaintScene SemanticsNodemarkNeedsSemanticsUpdate flushLayoutflushCompositingBits flushPaintsendFramesToEngineflushSemanticsFutureperformReassembleFlutterTimeline startSync reassemble finishSync endOfFramehitTestRenderObjectVisitor visitChildrenisEmpty toStringDeepjoin debugPrint debugLayerListdebugSemantics childOrderaddsemanticsEnabledPaintingBindingChangeNotifier kFlutterMemoryAllocationsEnabledmaybeDispatchObjectCreationaddSemanticsEnabledListenernotifyListenersensureVisualUpdateremoveSemanticsEnabledListener FlutterError fromPartsDiagnosticsNode ErrorSummaryErrorDescription ErrorHintprepareInitialFrame BindingBaseServicesBindingSchedulerBindingGestureBindingSemanticsBinding HitTestablePaintingBindingRendererBindingChangeNotifierPipelineManifold PipelineOwner RenderView‡‘�Z¥í³…åëÒ5õQøƒ ƒ HitTestResult‚åpackage:flutter/gestures.dart �) dart:async�U�ˆPictureRecorder SceneBuilderSemanticsUpdate�?�O�Rui�Rdart:ui�Žpackage:flutter/foundation.dart�¹package:flutter/gestures.dart�âpackage:flutter/scheduler.dart‚ package:flutter/semantics.dart‚6package:flutter/services.dart‚a debug.dart‚wmouse_tracker.dart‚• object.dart‚¬service_extensions.dart‚Ï view.dartÀKïÀ�>ƒ—=€ˆ€§€©€Ä€É€ù€þ��&�(�>�‹���¸�á‚ ‚5‚^‚`‚v‚”‚«‚΂ã‚åƒ!ƒ#ƒ<ƒ[ƒ]ƒœƒ¡ƒó„?„�„ß…#…(…r…ƆU†l†t†Š†¤†¿†Ø†ó‡ ‡‡1‡M‡d‡™‡±‡âˆ#ˆkˆ¬ˆÅˆØ‰8‰?‰i‰n‰p‰¯‰¶ŠŠWŠ•Šå‹ ‹ ‹‹<‹`‹b‹s‹®‹ÓŒŒRŒxŒ®Œß�+�l�•�¢�®�¸�ÝŽŽLŽrޣޏŽÅŽï�9�x�Ÿ�«�µ�Ú�%�^�„�º�Ï�Ü‘ ‘U‘”‘»‘Ǒёö’5’n’”’Ú“ “#“o“°“Ù“æ“ò“ü””`”œ”ã”ï”ù••e•š•À•ò–––?–‰–È–ï–û——*—z—¸—Þ˜˜.˜;˜o˜¹˜ø™™+™5™Z™¤™Üšš7šLšYš‡šÑ››7›C›M›a›l›n›ˆ›É›êœ.œjœ²œ¾œÈœé�@�|� �úžžžž?ž›ž×žûŸUŸcŸoŸyŸžŸè   F { « ¸ Ä Î ó¡>¡w¡�¡Ó¢¢¢¢'¢.¢3¢5¢€¢‚¢Ñ¢æ££:£<££†£Õ¤¤a¤h¤¶¤ø¥=¥†¥Ö¦&¦N¦U¦¡¦ô§A§�§”§ä¨4¨…¨Á¨ï¨ÿ©a©ÖªªªRªuªÁªÉªÿ«H«P«t«¶«¾«Ä«Æ¬ ¬¬_¬f¬­¬ü­D­Ž­Ä®®"®)®t®¸¯ ¯T¯™¯ ¯ì°:°J°Z°Å±±±r±Õ±×²(²K²R²�²ß³+³x³¯³¶´´Y´¦´õµ µ8µaµfµhµ¯µ¶µð¶.¶X¶Z¶Œ¶“¶è·/·~·€·¬·³¸¸¸C¸’¸§¸ù¹¹K¹t¹¨¹ßºº?º{º€º‚ºÏºß» »?»q»š»Ÿ»¡»ï¼¼¼o¼»¼Â½½_½®½Ê½Ø¾!¾a¾f¾h¾ˆ¾�¾Ù¾à¿-¿f¿¤¿¦¿É¿ÐÀ@À@!À@oÀ@³À@ËÀAÀAÀAGÀANÀA˜ÀAŸÀAïÀBÀB^ÀB`ÀBŽÀB•ÀBÏÀBÝÀBóÀCÀC2ÀCdÀCšÀCØÀCßÀCöÀDÀDÀD ÀD"ÀD]ÀDdÀD¦ÀD´ÀDÞÀDàÀEÀEÀEkÀE»ÀFÀFÀFÀF5ÀF|ÀFƒÀF’ÀFáÀFìÀFÿÀGÀGÀGVÀG]ÀGlÀGÐÀGÛÀGîÀGõÀH:ÀHHÀHuÀHwÀHÅÀHêÀHñÀICÀIYÀI�ÀI¬ÀIÁÀIÕÀJ ÀJDÀJxÀJ’ÀJŸÀJ¤ÀJ¦ÀJÊÀKÀK9ÀKGÀK‹ÀKÛÀLÀL:ÀLBÀLrÀLwÀLyÀL†ÀLÄÀMÀM_ÀM°ÀMÿÀNÀN)ÀNBÀNJÀNOÀNQÀN|ÀN‘ÀNãÀOÀOÀO ÀO]ÀOoÀO“ÀO˜ÀOšÀOÍÀOõÀP&ÀP7ÀPhÀP|ÀP‡ÀPÑÀQÀQÀQJÀQ`ÀQmÀQ—ÀQÒÀQ×ÀQÙÀQþÀRÀR!ÀRgÀRnÀRµÀSÀS ÀSÀS#ÀSqÀSƒÀS×ÀSÙÀT*ÀT_ÀTfÀT´ÀUÀUQÀUŠÀU‘ÀUÞÀUíÀV ÀV5ÀVYÀV^ÀV`ÀV­ÀVÜÀVãÀW,ÀW^ÀWeÀW¬ÀWÉÀWåÀXÀX4ÀX†ÀXÖÀXüÀYÀY7ÀY>ÀYCÀYEÀY’ÀY™ÀYáÀZ/ÀZXÀZxÀZ–ÀZ›ÀZ�ÀZÕÀZÜÀ[&À[wÀ[~À[²À[¹À\ À\ZÀ\«À\ìÀ]<À]_À]fÀ]¶À^À^TÀ^qÀ^xÀ^ÅÀ_À_dÀ_“À_šÀ_ëÀ`=À`À`†À`ÎÀ`ýÀa3Àa:Àa…Àa×Àb%Àb=ÀbDÀb‘Àb©Àb°ÀcÀcMÀcžÀcÁÀcÈÀdÀd ÀdYÀd¬Àd³ÀeÀe?ÀeEÀeŒÀešÀe°ÀeÖÀfÀf*ÀfIÀfƒÀfËÀfÔÀg&ÀgEÀgLÀgQÀgSÀg`ÀgŒÀg²ÀgÌÀhÀhÀh!Àh[Àh}Àh†Àh—Àh³ÀhÚÀhãÀhêÀiÀiÀi"Ài$Ài1Ài|ÀiÃÀi÷ÀiüÀiþÀj ÀjGÀjmÀjŒÀj±Àj¹ÀjñÀkÀk"Àk:Àk?ÀkBÀkDÀkiÀk ÀkÝÀkâÀköÀlEÀlgÀlzÀl}ÀlÀl¹Àl¾ÀlõÀm4ÀmvÀmŠÀm¨ÀmÓÀmÖÀmØÀmüÀn3ÀnpÀnuÀn‰ÀnØÀo3ÀoFÀoIÀoKÀo„Ào‰Ào½ÀoÚÀpÀpÀp ÀpSÀpŠÀpÇÀpÌÀpêÀqZÀqÎÀrCÀrmÀr‘ÀràÀs;ÀsTÀslÀszÀs¾ÀsàÀtÀt1Àt:ÀtUÀt\ÀtaÀtÀt‚Àt„ÀtÁÀtÆÀtúÀtÿÀuIÀušÀuÝÀuâÀv/Àv^Àv}ÀvÍÀvÓÀw ÀwÀwÀw[Àw…ÀwªÀwôÀw÷ÀwùÀxCÀx“Àx˜ÀxäÀy%ÀyUÀyZÀyŸÀyãÀz,ÀzeÀzžÀz×ÀzÜÀ{À{_À{¥À{ÞÀ{ãÀ|4À|€À|ÏÀ}À}bÀ}gÀ}±À~À~<À~oÀ~yÀ~’À~­À~ÇÀ~âÀ~üÀÀQÀ—ÀßÀëÀòÀ€;À€ˆÀ€¾À€îÀ�À�>À�EÀ�kÀ�pÀ�sÀ�uÀ�ÇÀ‚À‚IÀ‚vÀ‚¯À‚¶À‚òÀ‚÷À‚ùÀƒÀƒÀƒ+ÀƒKÀƒoÀƒtÀƒvÀƒƒÀƒ¾ÀƒÀÀƒÍÀƒáÀ„ À„6À„;À„>À„@À„tÀ„³À…À…À…À…4À…EÀ…|À…ÐÀ…ëÀ†=À†�À†âÀ†îÀ‡À‡PÀ‡¢À‡ôÀˆ2ÀˆtÀˆÅÀˆëÀˆ÷À‰À‰ À‰À‰À‰NÀ‰…À‰™À‰žÀ‰¡À‰£À‰ñÀŠ?ÀŠ�ÀŠâÀ‹4À‹oÀ‹sÀ‹ÃÀŒÀŒ_ÀŒ®ÀŒüÀ�FÀ�˜À�½À�ÁÀŽÀŽ2ÀŽbÀŽ‘ÀŽ“ÀŽºÀ޼ÀŽÉÀŽéÀ� À�À�!À�CÀ�fÀ�kÀ�mÀ�zÀ�ŸÀ�¶À�ÝÀ�âÀ�äÀ�ñÀ�À�#À�6À�;À�>m/// @docImport 'dart:ui'; /// /// @docImport 'package:flutter/widgets.dart'; /// /// @docImport 'layer.dart'; �(�>�S�R�U�ˆ���¸�á‚ ‚5‚`‚v‚”‚«‚Î‚åƒ ƒÀwù‰xÀ~BÀ~B†&/// A concrete binding for applications that use the Rendering framework /// directly. This is the glue that binds the framework to the Flutter engine. /// /// When using the rendering framework directly, this binding, or one that /// implements the same interfaces, must be used. The following /// mixins are used to implement this binding: /// /// * [GestureBinding], which implements the basics of hit testing. /// * [SchedulerBinding], which introduces the concepts of frames. /// * [ServicesBinding], which provides access to the plugin subsystem. /// * [SemanticsBinding], which supports accessibility. /// * [PaintingBinding], which enables decoding images. /// * [RendererBinding], which handles the render tree. /// /// You would only use this binding if you are writing to the /// rendering layer directly. If you are writing to a higher-level /// library, such as the Flutter Widgets library, then you would use /// that layer's binding (see [WidgetsFlutterBinding]). /// /// The [RenderingFlutterBinding] can manage multiple render trees. Each render /// tree is rooted in a [RenderView] that must be added to the binding via /// [addRenderView] to be consider during frame production, hit testing, etc. /// Furthermore, the render tree must be managed by a [PipelineOwner] that is /// part of the pipeline owner tree rooted at [rootPipelineOwner]. /// /// Adding [PipelineOwner]s and [RenderView]s to this binding in the way /// described above is left as a responsibility for a higher level abstraction. /// The binding does not own any [RenderView]s directly.À‚UÀ€×À€×�Ž/// Returns an instance of the binding that implements /// [RendererBinding]. If no binding has yet been initialized, the /// [RenderingFlutterBinding] class is used to create and initialize /// one. /// /// You need to call this method before using the rendering framework /// if you are using it directly. If you are using the widgets framework, /// see [WidgetsFlutterBinding.ensureInitialized].À�u‚ÇÀ�ÍÀ�ÍP/// A [PipelineManifold] implementation that is backed by the [RendererBinding].À‚€×À‚À‚À‚6À‚7 À‚=À‚<À‚ûÀƒÀƒÀƒxDÀƒŽÀƒŽÀƒxÀƒyÀƒ RÀƒ2Àƒ2Àƒ Àƒ!ÀƒÂwÀƒÔÀƒÔÀƒÂÀƒÃÀ„t…+À„€À„€À„µKÀ„µÀ„µÀ„ÎÀ„ÓÀ„ØÀ„þÀ„êÀ„ÙÀ„ìÀ…„ À…À…À… À…/À….À…À…À‰€†À‰"À‰"À‰5À‰IÀ‰HÀŽ2‚ ÀŽ8ÀŽ8ÀŽd+ÀŽdÀŽdÀŽwÀŽyÀމÀŽˆÀŽ•"ÀŽšÀŽšÀ޲À޾€«ÀŽÐÀŽÐÀ޾ÀŽ¿À�oqÀ��À��À�oÀ�pÀ�æSÀ�À�À�æÀ�çÀkD�7ÀkKÀkKÀl�UÀm�Àm��/// Prints a textual representation of the render trees. /// /// {@template flutter.rendering.debugDumpRenderTree} /// It prints the trees associated with every [RenderView] in /// [RendererBinding.renderViews], separated by two blank lines. /// {@endtemplate}ÀmØ�oÀmßÀmßÀoK€ºÀoÂÀoÂn/// Prints a textual representation of the layer trees. /// /// {@macro flutter.rendering.debugDumpRenderTree}Àp „wÀpÀpÀp,"ÀpEÀpDÀt„‚ˆÀvcÀvc�Ï/// Prints a textual representation of the semantics trees. /// /// {@macro flutter.rendering.debugDumpRenderTree} /// /// Semantics trees are only constructed when semantics are enabled (see /// [SemanticsBinding.semanticsEnabled]). If a semantics tree is not available, /// a notice about the missing semantics tree is printed instead. /// /// The order in which the children of a [SemanticsNode] will be printed is /// controlled by the [childOrder] parameter.ÀvKÀv˜Àv—Àv¤Àv»Àv¼Àw€åÀwŠÀwŠr/// Prints a textual representation of the [PipelineOwner] tree rooted at /// [RendererBinding.rootPipelineOwner].ƒ]Àgã†[†[‚ë/// The glue between the render trees and the Flutter engine. /// /// The [RendererBinding] manages multiple independent render trees. Each render /// tree is rooted in a [RenderView] that must be added to the binding via /// [addRenderView] to be considered during frame production, hit testing, etc. /// Furthermore, the render tree must be managed by a [PipelineOwner] that is /// part of the pipeline owner tree rooted at [rootPipelineOwner]. /// /// Adding [PipelineOwner]s and [RenderView]s to this binding in the way /// described above is left as a responsibility for a higher level abstraction. /// The widgets library, for example, introduces the [View] widget, which /// registers its [RenderView] and [PipelineOwner] with this binding. Šç!ŠÿŠÿ¢7F¢S¢S¢_¢w¢|¢x££*£*£>ˆƒª2ª2…j/// Deprecated. Will be removed in a future version of Flutter. /// /// This is typically the owner of the render tree bootstrapped by [runApp] /// and rooted in [renderView]. It maintains dirty state for layout, /// composite, paint, and accessibility semantics for that tree. /// /// However, by default, the [pipelineOwner] does not participate in frame /// production because it is not automatically attached to the /// [rootPipelineOwner] or any of its descendants. It is also not /// automatically associated with the [renderView]. This is left as a /// responsibility for a higher level abstraction. The [WidgetsBinding], for /// example, wires this up in [WidgetsBinding.wrapWithDefaultView], which is /// called indirectly from [runApp]. /// /// Apps, that don't use the [WidgetsBinding] or don't call [runApp] (or /// [WidgetsBinding.wrapWithDefaultView]) must manually add this pipeline owner /// to the pipeline owner tree rooted at [rootPipelineOwner] and assign a /// [RenderView] to it if the they want to use this deprecated property. /// /// Instead of accessing this deprecated property, consider interacting with /// the root of the [PipelineOwner] tree (exposed in [rootPipelineOwner]) or /// instead of accessing the [SemanticsOwner] of any [PipelineOwner] consider /// interacting with the [SemanticsBinding] (exposed via /// [SemanticsBinding.instance]) directly.¨ñ¨ò¨üª©©e©ÚªBªO«ÀªmªVªoªÅªÞªÍªà«L«l«T«n«º«È† ±Š±Š„D/// Deprecated. Will be removed in a future version of Flutter. /// /// This is typically the root of the render tree bootstrapped by [runApp]. /// /// However, by default this render view is not associated with any /// [PipelineOwner] and therefore isn't considered during frame production. /// It is also not registered with this binding via [addRenderView]. /// Wiring this up is left as a responsibility for a higher level. The /// [WidgetsBinding], for example, sets this up in /// [WidgetsBinding.wrapWithDefaultView], which is called indirectly from /// [runApp]. /// /// Apps that don't use the [WidgetsBinding] or don't call [runApp] (or /// [WidgetsBinding.wrapWithDefaultView]) must manually assign a /// [PipelineOwner] to this [RenderView], make sure the pipeline owner is part /// of the pipeline owner tree rooted at [rootPipelineOwner], and call /// [addRenderView] if they want to use this deprecated property. /// /// Instead of interacting with this deprecated property, consider using /// [renderViews] instead, which contains all [RenderView]s managed by the /// binding.°L°M°W±°^°É±—±ª±Ñ±¯±«±Ð±±±Ã±Ä¶0%¶C¶C·1J·O·O·y·z·e·x·f·nÀOœ.ÀO¡ÀO¡ÀOÅÀQÛ ÀQßÀQßÀQúÀRÀRÀRÀR‰r�qвв�/// The current [RendererBinding], if one has been created. /// /// Provides access to the features exposed by this mixin. The binding must /// be initialized before using this getter; this is typically done by calling /// [runApp] or [WidgetsFlutterBinding.ensureInitialized].¢„€”¢ù¢ù]/// The object that manages state about currently connected mice, for hover /// notification.µj€Â¶¶~/// The [PipelineOwner] that is the root of the PipelineOwner tree. /// /// {@macro flutter.rendering.createRootPipelineOwner}¶\€Ñ··€„/// The [RenderView]s managed by this binding. /// /// A [RenderView] is added by [addRenderView] and removed by [removeRenderView].ÀR#�²ÀSŽÀSŽ�F/// Whether frames produced by [drawFrame] are sent to the engine. /// /// If false the framework will do all the work to produce a frame, /// but the frame is never sent to the engine to actually appear on screen. /// /// See also: /// /// * [deferFirstFrame], which defers when the first frame is sent to the /// engine.‡ ‚`‡‡‡ ‡ ‹—"‹!‹!‹‹±Ùƒ‹µµƒ /// Creates the [PipelineOwner] that serves as the root of the pipeline owner /// tree ([rootPipelineOwner]). /// /// {@template flutter.rendering.createRootPipelineOwner} /// By default, the root pipeline owner is not setup to manage a render tree /// and its [PipelineOwner.rootNode] must not be assigned. If necessary, /// [createRootPipelineOwner] may be overridden to create a root pipeline /// owner configured to manage its own render tree. /// /// In typical use, child pipeline owners are added to the root pipeline owner /// (via [PipelineOwner.adoptChild]). Those children typically do each manage /// their own [RenderView] and produce distinct render trees which render /// their content into the [FlutterView] associated with that [RenderView]. /// {@endtemplate}·‚‚ü¹R¹R�¬/// Adds a [RenderView] to this binding. /// /// The binding will interact with the [RenderView] in the following ways: /// /// * setting and updating [RenderView.configuration], /// * calling [RenderView.compositeFrame] when it is time to produce a new /// frame, and /// * forwarding relevant pointer events to the [RenderView] for hit testing. /// /// To remove a [RenderView] from the binding, call [removeRenderView].¹`¹l¹kº„�ºæºæV/// Removes a [RenderView] previously added with [addRenderView] from the /// binding.º÷»»»£‚Á½ì½ì‚ /// Returns a [ViewConfiguration] configured for the provided [RenderView] /// based on the current environment. /// /// This is called during [addRenderView] and also in response to changes to /// the system metrics to update all [renderViews] added to the binding. /// /// Bindings can override this method to change what size or device pixel /// ratio the [RenderView] will use. For example, the testing framework uses /// this to force the display into 800x600 when a test is run on the device /// using `flutter run`.¾¾¾½Ì½Í¾j�8¿x¿x€ë/// Create a [SceneBuilder]. /// /// This hook enables test bindings to instrument the rendering layer. /// /// This is used by the [RenderView] to create the [SceneBuilder] that is /// passed to the [Layer] system to render the scene.¿¨�hÀ@àÀ@à�/// Create a [PictureRecorder]. /// /// This hook enables test bindings to instrument the rendering layer. /// /// This is used by the [PaintingContext] to create the [PictureRecorder]s /// used when painting [RenderObject]s into [Picture]s passed to /// [PictureLayer]s.ÀA�FÀBÀB€î/// Create a [Canvas] from a [PictureRecorder]. /// /// This hook enables test bindings to instrument the rendering layer. /// /// This is used by the [PaintingContext] after creating a [PictureRecorder] /// using [createPictureRecorder].ÀB+ÀB?ÀB>ÀBb�¼ÀBúÀBúe/// Called when the system metrics change. /// /// See [dart:ui.PlatformDispatcher.onMetricsChanged].ÀBÑÀBÒÀBßÀBàÀD$€¸ÀD»ÀD»z/// Called when the platform text scale factor changes. /// /// See [dart:ui.PlatformDispatcher.onTextScaleFactorChanged].ÀD¨ÀD©ÀD⃑ÀHOÀHOƒ/// Called when the platform brightness changes. /// /// The current platform brightness can be queried from a Flutter binding or /// from a [MediaQuery] widget. The latter is preferred from widgets because /// it causes the widget to be automatically rebuilt when the brightness /// changes. /// /// {@tool snippet} /// Querying [MediaQuery.platformBrightnessOf] directly. Preferred. /// /// ```dart /// final Brightness brightness = MediaQuery.platformBrightnessOf(context); /// ``` /// {@end-tool} /// /// {@tool snippet} /// Querying [PlatformDispatcher.platformBrightness]. /// /// ```dart /// final Brightness brightness = WidgetsBinding.instance.platformDispatcher.platformBrightness; /// ``` /// {@end-tool} /// /// See [dart:ui.PlatformDispatcher.onPlatformBrightnessChanged].ÀH<ÀH=ÀHy‚)ÀI`ÀI`€¿/// Creates a [MouseTracker] which manages state about currently connected /// mice, for hover notification. /// /// Used by testing framework to reinitialize the mouse tracker between tests.ÀIrÀI�ÀI€ÀIEÀIFÀJ¨�ÍÀJÑÀJÑÀJßÀJíÀJìÀJóÀKÀKÀJ¨ÀJ©ÀL{�ÒÀL�ÀL�ÀL¤ÀLºÀL¹ÀL{ÀL|ÀNS€ÉÀNXÀNXÀNm ÀNwÀNvÀO"tÀO'ÀO'ÀOFÀOPÀOOÀOÏ‚ÀOÔÀOÔÀSÛ‚�ÀUôÀUô�õ/// Tell the framework to not send the first frames to the engine until there /// is a corresponding call to [allowFirstFrame]. /// /// Call this to perform asynchronous initialization work before the first /// frame is rendered (which takes down the splash screen). The framework /// will still do all the work to produce frames, but those frames are never /// sent to the engine and will not appear on screen. /// /// Calling this has no effect after the first frame has been sent to the /// engine.ÀVb‚ßÀWÐÀWÐ�P/// Called after [deferFirstFrame] to tell the framework that it is ok to /// send the first frame to the engine now. /// /// For best performance, this method should only be called while the /// [schedulerPhase] is [SchedulerPhase.idle]. /// /// This method may only be called once for each corresponding call /// to [deferFirstFrame].ÀYG�RÀZ_ÀZ_�/// Call this to pretend that no frames have been sent to the engine yet. /// /// This is useful for tests that want to call [deferFirstFrame] and /// [allowFirstFrame] since those methods only have an effect if no frames /// have been sent to the engine yet.ÀZŸŒ°Àe¡Àe¡Š/// Pump the rendering pipeline to generate a frame. /// /// This method is called by [handleDrawFrame], which itself is called /// automatically by the engine when it is time to lay out and paint a frame. /// /// Each frame consists of the following phases: /// /// 1. The animation phase: The [handleBeginFrame] method, which is registered /// with [PlatformDispatcher.onBeginFrame], invokes all the transient frame /// callbacks registered with [scheduleFrameCallback], in registration order. /// This includes all the [Ticker] instances that are driving /// [AnimationController] objects, which means all of the active [Animation] /// objects tick at this point. /// /// 2. Microtasks: After [handleBeginFrame] returns, any microtasks that got /// scheduled by transient frame callbacks get to run. This typically includes /// callbacks for futures from [Ticker]s and [AnimationController]s that /// completed this frame. /// /// After [handleBeginFrame], [handleDrawFrame], which is registered with /// [dart:ui.PlatformDispatcher.onDrawFrame], is called, which invokes all the /// persistent frame callbacks, of which the most notable is this method, /// [drawFrame], which proceeds as follows: /// /// 3. The layout phase: All the dirty [RenderObject]s in the system are laid /// out (see [RenderObject.performLayout]). See [RenderObject.markNeedsLayout] /// for further details on marking an object dirty for layout. /// /// 4. The compositing bits phase: The compositing bits on any dirty /// [RenderObject] objects are updated. See /// [RenderObject.markNeedsCompositingBitsUpdate]. /// /// 5. The paint phase: All the dirty [RenderObject]s in the system are /// repainted (see [RenderObject.paint]). This generates the [Layer] tree. See /// [RenderObject.markNeedsPaint] for further details on marking an object /// dirty for paint. /// /// 6. The compositing phase: The layer tree is turned into a [Scene] and /// sent to the GPU. /// /// 7. The semantics phase: All the dirty [RenderObject]s in the system have /// their semantics updated. This generates the [SemanticsNode] tree. See /// [RenderObject.markNeedsSemanticsUpdate] for further details on marking an /// object dirty for semantics. /// /// For more details on steps 3-7, see [PipelineOwner]. /// /// 8. The finalization phase: After [drawFrame] returns, [handleDrawFrame] /// then invokes post-frame callbacks (registered with [addPostFrameCallback]). /// /// Some bindings (for example, the [WidgetsBinding]) add extra steps to this /// list (for example, see [WidgetsBinding.drawFrame]).ÀeŽÀe�ÀgU�ËÀgoÀgoÀgUÀgVÀi&€ÔÀi8Ài8ÀiFÀiUÀiTÀi\ÀidÀicÀim ÀirÀiqÀi&Ài'Àj�=Àj Àj €²dart:ui€Òpackage:flutter/widgets.dart� layer.dartƒ—=€ˆ€§€©€Ä€É€ù€þ��&�(�>�‹���¸�á‚ ‚5‚^‚`‚v‚”‚«‚΂ã‚åƒ!ƒ#ƒ<ƒ[ƒ]ƒœƒ¡ƒó„?„�„ß…#…(…r…ƆU†l†t†Š†¤†¿†Ø†ó‡ ‡‡1‡M‡d‡™‡±‡âˆ#ˆkˆ¬ˆÅˆØ‰8‰?‰i‰n‰p‰¯‰¶ŠŠWŠ•Šå‹ ‹ ‹‹<‹`‹b‹s‹®‹ÓŒŒRŒxŒ®Œß�+�l�•�¢�®�¸�ÝŽŽLŽrޣޏŽÅŽï�9�x�Ÿ�«�µ�Ú�%�^�„�º�Ï�Ü‘ ‘U‘”‘»‘Ǒёö’5’n’”’Ú“ “#“o“°“Ù“æ“ò“ü””`”œ”ã”ï”ù••e•š•À•ò–––?–‰–È–ï–û——*—z—¸—Þ˜˜.˜;˜o˜¹˜ø™™+™5™Z™¤™Üšš7šLšYš‡šÑ››7›C›M›a›l›n›ˆ›É›êœ.œjœ²œ¾œÈœé�@�|� �úžžžž?ž›ž×žûŸUŸcŸoŸyŸžŸè   F { « ¸ Ä Î ó¡>¡w¡�¡Ó¢¢¢¢'¢.¢3¢5¢€¢‚¢Ñ¢æ££:£<££†£Õ¤¤a¤h¤¶¤ø¥=¥†¥Ö¦&¦N¦U¦¡¦ô§A§�§”§ä¨4¨…¨Á¨ï¨ÿ©a©ÖªªªRªuªÁªÉªÿ«H«P«t«¶«¾«Ä«Æ¬ ¬¬_¬f¬­¬ü­D­Ž­Ä®®"®)®t®¸¯ ¯T¯™¯ ¯ì°:°J°Z°Å±±±r±Õ±×²(²K²R²�²ß³+³x³¯³¶´´Y´¦´õµ µ8µaµfµhµ¯µ¶µð¶.¶X¶Z¶Œ¶“¶è·/·~·€·¬·³¸¸¸C¸’¸§¸ù¹¹K¹t¹¨¹ßºº?º{º€º‚ºÏºß» »?»q»š»Ÿ»¡»ï¼¼¼o¼»¼Â½½_½®½Ê½Ø¾!¾a¾f¾h¾ˆ¾�¾Ù¾à¿-¿f¿¤¿¦¿É¿ÐÀ@À@!À@oÀ@³À@ËÀAÀAÀAGÀANÀA˜ÀAŸÀAïÀBÀB^ÀB`ÀBŽÀB•ÀBÏÀBÝÀBóÀCÀC2ÀCdÀCšÀCØÀCßÀCöÀDÀDÀD ÀD"ÀD]ÀDdÀD¦ÀD´ÀDÞÀDàÀEÀEÀEkÀE»ÀFÀFÀFÀF5ÀF|ÀFƒÀF’ÀFáÀFìÀFÿÀGÀGÀGVÀG]ÀGlÀGÐÀGÛÀGîÀGõÀH:ÀHHÀHuÀHwÀHÅÀHêÀHñÀICÀIYÀI�ÀI¬ÀIÁÀIÕÀJ ÀJDÀJxÀJ’ÀJŸÀJ¤ÀJ¦ÀJÊÀKÀK9ÀKGÀK‹ÀKÛÀLÀL:ÀLBÀLrÀLwÀLyÀL†ÀLÄÀMÀM_ÀM°ÀMÿÀNÀN)ÀNBÀNJÀNOÀNQÀN|ÀN‘ÀNãÀOÀOÀO ÀO]ÀOoÀO“ÀO˜ÀOšÀOÍÀOõÀP&ÀP7ÀPhÀP|ÀP‡ÀPÑÀQÀQÀQJÀQ`ÀQmÀQ—ÀQÒÀQ×ÀQÙÀQþÀRÀR!ÀRgÀRnÀRµÀSÀS ÀSÀS#ÀSqÀSƒÀS×ÀSÙÀT*ÀT_ÀTfÀT´ÀUÀUQÀUŠÀU‘ÀUÞÀUíÀV ÀV5ÀVYÀV^ÀV`ÀV­ÀVÜÀVãÀW,ÀW^ÀWeÀW¬ÀWÉÀWåÀXÀX4ÀX†ÀXÖÀXüÀYÀY7ÀY>ÀYCÀYEÀY’ÀY™ÀYáÀZ/ÀZXÀZxÀZ–ÀZ›ÀZ�ÀZÕÀZÜÀ[&À[wÀ[~À[²À[¹À\ À\ZÀ\«À\ìÀ]<À]_À]fÀ]¶À^À^TÀ^qÀ^xÀ^ÅÀ_À_dÀ_“À_šÀ_ëÀ`=À`À`†À`ÎÀ`ýÀa3Àa:Àa…Àa×Àb%Àb=ÀbDÀb‘Àb©Àb°ÀcÀcMÀcžÀcÁÀcÈÀdÀd ÀdYÀd¬Àd³ÀeÀe?ÀeEÀeŒÀešÀe°ÀeÖÀfÀf*ÀfIÀfƒÀfËÀfÔÀg&ÀgEÀgLÀgQÀgSÀg`ÀgŒÀg²ÀgÌÀhÀhÀh!Àh[Àh}Àh†Àh—Àh³ÀhÚÀhãÀhêÀiÀiÀi"Ài$Ài1Ài|ÀiÃÀi÷ÀiüÀiþÀj ÀjGÀjmÀjŒÀj±Àj¹ÀjñÀkÀk"Àk:Àk?ÀkBÀkDÀkiÀk ÀkÝÀkâÀköÀlEÀlgÀlzÀl}ÀlÀl¹Àl¾ÀlõÀm4ÀmvÀmŠÀm¨ÀmÓÀmÖÀmØÀmüÀn3ÀnpÀnuÀn‰ÀnØÀo3ÀoFÀoIÀoKÀo„Ào‰Ào½ÀoÚÀpÀpÀp ÀpSÀpŠÀpÇÀpÌÀpêÀqZÀqÎÀrCÀrmÀr‘ÀràÀs;ÀsTÀslÀszÀs¾ÀsàÀtÀt1Àt:ÀtUÀt\ÀtaÀtÀt‚Àt„ÀtÁÀtÆÀtúÀtÿÀuIÀušÀuÝÀuâÀv/Àv^Àv}ÀvÍÀvÓÀw ÀwÀwÀw[Àw…ÀwªÀwôÀw÷ÀwùÀxCÀx“Àx˜ÀxäÀy%ÀyUÀyZÀyŸÀyãÀz,ÀzeÀzžÀz×ÀzÜÀ{À{_À{¥À{ÞÀ{ãÀ|4À|€À|ÏÀ}À}bÀ}gÀ}±À~À~<À~oÀ~yÀ~’À~­À~ÇÀ~âÀ~üÀÀQÀ—ÀßÀëÀòÀ€;À€ˆÀ€¾À€îÀ�À�>À�EÀ�kÀ�pÀ�sÀ�uÀ�ÇÀ‚À‚IÀ‚vÀ‚¯À‚¶À‚òÀ‚÷À‚ùÀƒÀƒÀƒ+ÀƒKÀƒoÀƒtÀƒvÀƒƒÀƒ¾ÀƒÀÀƒÍÀƒáÀ„ À„6À„;À„>À„@À„tÀ„³À…À…À…À…4À…EÀ…|À…ÐÀ…ëÀ†=À†�À†âÀ†îÀ‡À‡PÀ‡¢À‡ôÀˆ2ÀˆtÀˆÅÀˆëÀˆ÷À‰À‰ À‰À‰À‰NÀ‰…À‰™À‰žÀ‰¡À‰£À‰ñÀŠ?ÀŠ�ÀŠâÀ‹4À‹oÀ‹sÀ‹ÃÀŒÀŒ_ÀŒ®ÀŒüÀ�FÀ�˜À�½À�ÁÀŽÀŽ2ÀŽbÀŽ‘ÀŽ“ÀŽºÀ޼ÀŽÉÀŽéÀ� À�À�!À�CÀ�fÀ�kÀ�mÀ�zÀ�ŸÀ�¶À�ÝÀ�âÀ�äÀ�ñÀ�À�#À�6À�;À�> RendererBinding_debugCollectRenderTreesdebugDumpRenderTree_debugCollectLayerTreesdebugDumpLayerTree_debugCollectSemanticsTreesdebugDumpSemanticsTreedebugDumpPipelineOwnerTreeRenderingFlutterBinding_BindingPipelineManifold_DefaultRootPipelineOwner_ReusableRenderView)flutter.rendering.createRootPipelineOwner‚'By default, the root pipeline owner is not setup to manage a render tree and its [PipelineOwner.rootNode] must not be assigned. If necessary, [createRootPipelineOwner] may be overridden to create a root pipeline owner configured to manage its own render tree. In typical use, child pipeline owners are added to the root pipeline owner (via [PipelineOwner.adoptChild]). Those children typically do each manage their own [RenderView] and produce distinct render trees which render their content into the [FlutterView] associated with that [RenderView].%flutter.rendering.debugDumpRenderTreevIt prints the trees associated with every [RenderView] in [RendererBinding.renderViews], separated by two blank lines.͈