-
Notifications
You must be signed in to change notification settings - Fork 29.8k
Closed
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work listc: new featureNothing broken; request for a new capabilityNothing broken; request for a new capabilityc: proposalA detailed proposal for a change to FlutterA detailed proposal for a change to Flutterengineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.r: fixedIssue is closed as already fixed in a newer versionIssue is closed as already fixed in a newer versionteam-engineOwned by Engine teamOwned by Engine teamtriaged-engineTriaged by Engine teamTriaged by Engine team
Description
In order to make the Flutter engine's rendering system support multiple views, we need to change multiple components across the engine. The plan can be found in design doc flutter.dev/go/multi-view-pipeline-and-rasterizer. Items are listed below. The order of the items does not represent dependency, and some items can be developed in parallel.
- Item 1: Eliminate violations of the rendering rule (Enforce the rule of calling
FlutterView.Renderengine#45300) - Item 2: Make the pipeline support multiple views. The
Animatorshould collect (instead of dispatching) the layer tree inRenderand dispatch them at the end ofBeginFrame(Multiview pipeline engine#44473). - Item 3: Make the
Rasterizer's structure compatible with multiple views. (Multi-view Rasterizer engine#45512) - Item 4: Allow the
ExternalViewEmbedderto handle multiple views. (Multiview backing store engine#51722, Make EmbedderExternalViewEmbedder present to the correct view engine#51719, Multiview ExternalViewEmbedder engine#46169) - Abandoned: Allow the
RasterCacheto handle multiple views.- Per @/stuartmorgan (I can't find the source for now) the raster cache only improves performance on mobile in specific cases, and should not help desktop. The raster cache should be made optional.
wanjm, pownthep, ZingerLittleBee, ColdPaleLight and SiongSng
Metadata
Metadata
Assignees
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work listc: new featureNothing broken; request for a new capabilityNothing broken; request for a new capabilityc: proposalA detailed proposal for a change to FlutterA detailed proposal for a change to Flutterengineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.r: fixedIssue is closed as already fixed in a newer versionIssue is closed as already fixed in a newer versionteam-engineOwned by Engine teamOwned by Engine teamtriaged-engineTriaged by Engine teamTriaged by Engine team