summaryrefslogtreecommitdiffstats
path: root/gfx/layers/wr/WebRenderScrollData.h
diff options
context:
space:
mode:
Diffstat (limited to 'gfx/layers/wr/WebRenderScrollData.h')
-rw-r--r--gfx/layers/wr/WebRenderScrollData.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/gfx/layers/wr/WebRenderScrollData.h b/gfx/layers/wr/WebRenderScrollData.h
index c575d4ca21..fd82ac93fc 100644
--- a/gfx/layers/wr/WebRenderScrollData.h
+++ b/gfx/layers/wr/WebRenderScrollData.h
@@ -276,6 +276,13 @@ class WebRenderScrollData {
void ApplyUpdates(ScrollUpdatesMap&& aUpdates, uint32_t aPaintSequenceNumber);
+ // Prepend the scroll position updates in the previous data to this data so
+ // that we can handle all scroll position updates in the proper order.
+ void PrependUpdates(const WebRenderScrollData& aPreviousData);
+
+ void SetWasUpdateSkipped() { mWasUpdateSkipped = true; }
+ bool GetWasUpdateSkipped() const { return mWasUpdateSkipped; }
+
friend struct IPC::ParamTraits<WebRenderScrollData>;
friend std::ostream& operator<<(std::ostream& aOut,
@@ -328,6 +335,12 @@ class WebRenderScrollData {
bool mIsFirstPaint;
uint32_t mPaintSequenceNumber;
+
+ // Wether this data was skipped to updated because the parent process hasn't
+ // yet gotten the referent LayersId for this data.
+ //
+ // Note this variable is not copied over IPC.
+ bool mWasUpdateSkipped = false;
};
} // namespace layers