1010
1111use api:: { DebugFlags , Parameter , BoolParameter , PrimitiveFlags , MinimapData } ;
1212use api:: { DocumentId , ExternalScrollId , HitTestResult } ;
13- use api:: { IdNamespace , PipelineId , RenderNotifier , SampledScrollOffset } ;
13+ use api:: { IdNamespace , RenderNotifier , SampledScrollOffset } ;
1414use api:: { NotificationRequest , Checkpoint , QualitySettings } ;
1515use api:: { FramePublishId , PrimitiveKeyKind , RenderReasons } ;
1616use api:: units:: * ;
@@ -44,7 +44,7 @@ use crate::prim_store::{PrimitiveInstanceKind, PrimTemplateCommonData};
4444use crate :: prim_store:: interned:: * ;
4545use crate :: profiler:: { self , TransactionProfile } ;
4646use crate :: render_task_graph:: RenderTaskGraphBuilder ;
47- use crate :: renderer:: { FullFrameStats , PipelineInfo } ;
47+ use crate :: renderer:: { FullFrameStats } ;
4848use crate :: resource_cache:: ResourceCache ;
4949#[ cfg( feature = "replay" ) ]
5050use crate :: resource_cache:: PlainCacheOwn ;
@@ -330,13 +330,10 @@ impl ScratchBuffer {
330330}
331331
332332struct Document {
333+ #[ allow( dead_code) ]
333334 /// The id of this document
334335 id : DocumentId ,
335336
336- /// Temporary list of removed pipelines received from the scene builder
337- /// thread and forwarded to the renderer.
338- removed_pipelines : Vec < ( PipelineId , DocumentId ) > ,
339-
340337 view : DocumentView ,
341338
342339 /// The id and time of the current frame.
@@ -405,7 +402,6 @@ impl Document {
405402 ) -> Self {
406403 Document {
407404 id,
408- removed_pipelines : Vec :: new ( ) ,
409405 view : DocumentView {
410406 scene : SceneView {
411407 device_rect : size. into ( ) ,
@@ -650,15 +646,6 @@ impl Document {
650646 self . hit_tester_is_valid = true ;
651647 }
652648
653- pub fn updated_pipeline_info ( & mut self ) -> PipelineInfo {
654- let removed_pipelines = self . removed_pipelines . take_and_preallocate ( ) ;
655- PipelineInfo {
656- epochs : self . scene . pipeline_epochs . iter ( )
657- . map ( |( & pipeline_id, & epoch) | ( ( pipeline_id, self . id ) , epoch) ) . collect ( ) ,
658- removed_pipelines,
659- }
660- }
661-
662649 /// Returns true if the node actually changed position or false otherwise.
663650 pub fn set_scroll_offsets (
664651 & mut self ,
@@ -939,7 +926,6 @@ impl RenderBackend {
939926 let has_built_scene = txn. built_scene . is_some ( ) ;
940927
941928 if let Some ( doc) = self . documents . get_mut ( & txn. document_id ) {
942- doc. removed_pipelines . append ( & mut txn. removed_pipelines ) ;
943929 doc. view . scene = txn. view ;
944930 doc. profile . merge ( & mut txn. profile ) ;
945931
@@ -1308,6 +1294,9 @@ impl RenderBackend {
13081294 ApiMsg :: SceneBuilderResult ( msg) => {
13091295 return self . process_scene_builder_result ( msg, frame_counter) ;
13101296 }
1297+ ApiMsg :: RequestPipelineInfo ( tx) => {
1298+ self . send_backend_message ( SceneBuilderRequest :: RequestPipelineInfo ( tx) ) ;
1299+ }
13111300 }
13121301
13131302 // Now that we are likely out of the critical path, purge a few chunks
@@ -1698,9 +1687,6 @@ impl RenderBackend {
16981687 let update_doc_time = profiler:: ns_to_ms ( zeitstempel:: now ( ) - update_doc_start) ;
16991688 rendered_document. profile . set ( profiler:: UPDATE_DOCUMENT_TIME , update_doc_time) ;
17001689
1701- let msg = ResultMsg :: PublishPipelineInfo ( doc. updated_pipeline_info ( ) ) ;
1702- self . result_tx . send ( msg) . unwrap ( ) ;
1703-
17041690 // Publish the frame
17051691 self . frame_publish_id . advance ( ) ;
17061692 let msg = ResultMsg :: PublishDocument (
@@ -1710,13 +1696,6 @@ impl RenderBackend {
17101696 pending_update,
17111697 ) ;
17121698 self . result_tx . send ( msg) . unwrap ( ) ;
1713- } else if requested_frame {
1714- // WR-internal optimization to avoid doing a bunch of render work if
1715- // there's no pixels. We still want to pretend to render and request
1716- // a render to make sure that the callbacks (particularly the
1717- // new_frame_ready callback below) has the right flags.
1718- let msg = ResultMsg :: PublishPipelineInfo ( doc. updated_pipeline_info ( ) ) ;
1719- self . result_tx . send ( msg) . unwrap ( ) ;
17201699 }
17211700
17221701 drain_filter (
0 commit comments