From 8a50c1d02853f111faa272a4aa92d9b33d3225d2 Mon Sep 17 00:00:00 2001 From: Martin Stransky Date: Tue, 1 Dec 2020 21:01:14 +0100 Subject: added missing patch --- mozilla-1672139.patch | 91 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 mozilla-1672139.patch diff --git a/mozilla-1672139.patch b/mozilla-1672139.patch new file mode 100644 index 0000000..efd40cb --- /dev/null +++ b/mozilla-1672139.patch @@ -0,0 +1,91 @@ +diff --git a/gfx/layers/ipc/CompositorBridgeParent.cpp b/gfx/layers/ipc/CompositorBridgeParent.cpp +--- a/gfx/layers/ipc/CompositorBridgeParent.cpp ++++ b/gfx/layers/ipc/CompositorBridgeParent.cpp +@@ -2376,30 +2376,28 @@ + if (mWrBridge->PipelineId() == aPipelineId) { + mWrBridge->RemoveEpochDataPriorTo(aEpoch); + +- if (!mPaused) { +- if (mIsForcedFirstPaint) { +- uiController->NotifyFirstPaint(); +- mIsForcedFirstPaint = false; +- } +- +- std::pair key(aPipelineId, aEpoch); +- nsTArray payload = +- mWrBridge->TakePendingScrollPayload(key); +- if (!payload.IsEmpty()) { +- RecordCompositionPayloadsPresented(payload); +- } +- +- TransactionId transactionId = mWrBridge->FlushTransactionIdsForEpoch( +- aEpoch, aCompositeStartId, aCompositeStart, aRenderStart, +- aCompositeEnd, uiController); +- Unused << SendDidComposite(LayersId{0}, transactionId, aCompositeStart, +- aCompositeEnd); +- +- nsTArray notifications; +- mWrBridge->ExtractImageCompositeNotifications(¬ifications); +- if (!notifications.IsEmpty()) { +- Unused << ImageBridgeParent::NotifyImageComposites(notifications); +- } ++ if (mIsForcedFirstPaint) { ++ uiController->NotifyFirstPaint(); ++ mIsForcedFirstPaint = false; ++ } ++ ++ std::pair key(aPipelineId, aEpoch); ++ nsTArray payload = ++ mWrBridge->TakePendingScrollPayload(key); ++ if (!payload.IsEmpty()) { ++ RecordCompositionPayloadsPresented(payload); ++ } ++ ++ TransactionId transactionId = mWrBridge->FlushTransactionIdsForEpoch( ++ aEpoch, aCompositeStartId, aCompositeStart, aRenderStart, aCompositeEnd, ++ uiController); ++ Unused << SendDidComposite(LayersId{0}, transactionId, aCompositeStart, ++ aCompositeEnd); ++ ++ nsTArray notifications; ++ mWrBridge->ExtractImageCompositeNotifications(¬ifications); ++ if (!notifications.IsEmpty()) { ++ Unused << ImageBridgeParent::NotifyImageComposites(notifications); + } + return; + } +@@ -2408,21 +2406,19 @@ + if (wrBridge && wrBridge->GetCompositorBridge()) { + MOZ_ASSERT(!wrBridge->IsRootWebRenderBridgeParent()); + wrBridge->RemoveEpochDataPriorTo(aEpoch); +- if (!mPaused) { +- std::pair key(aPipelineId, aEpoch); +- nsTArray payload = +- wrBridge->TakePendingScrollPayload(key); +- if (!payload.IsEmpty()) { +- RecordCompositionPayloadsPresented(payload); +- } +- +- TransactionId transactionId = wrBridge->FlushTransactionIdsForEpoch( +- aEpoch, aCompositeStartId, aCompositeStart, aRenderStart, +- aCompositeEnd, uiController, aStats, &stats); +- Unused << wrBridge->GetCompositorBridge()->SendDidComposite( +- wrBridge->GetLayersId(), transactionId, aCompositeStart, +- aCompositeEnd); ++ ++ std::pair key(aPipelineId, aEpoch); ++ nsTArray payload = ++ wrBridge->TakePendingScrollPayload(key); ++ if (!payload.IsEmpty()) { ++ RecordCompositionPayloadsPresented(payload); + } ++ ++ TransactionId transactionId = wrBridge->FlushTransactionIdsForEpoch( ++ aEpoch, aCompositeStartId, aCompositeStart, aRenderStart, aCompositeEnd, ++ uiController, aStats, &stats); ++ Unused << wrBridge->GetCompositorBridge()->SendDidComposite( ++ wrBridge->GetLayersId(), transactionId, aCompositeStart, aCompositeEnd); + } + + if (!stats.IsEmpty()) { + -- cgit