Bug 1445662 - Annotate remaining PAPZCTreeManager-invoked methods with threading constraints. r?rhunt
These methods are already guaranteed to be called on the controller
thread.
MozReview-Commit-ID: 10sjp6PY66m
--- a/gfx/layers/apz/src/APZCTreeManager.cpp
+++ b/gfx/layers/apz/src/APZCTreeManager.cpp
@@ -301,16 +301,18 @@ APZCTreeManager::GetFrameTime()
{
return TimeStamp::Now();
}
void
APZCTreeManager::SetAllowedTouchBehavior(uint64_t aInputBlockId,
const nsTArray<TouchBehaviorFlags> &aValues)
{
+ APZThreadUtils::AssertOnControllerThread();
+
mInputQueue->SetAllowedTouchBehavior(aInputBlockId, aValues);
}
template<class ScrollNode> void // ScrollNode is a LayerMetricsWrapper or a WebRenderScrollDataWrapper
APZCTreeManager::UpdateHitTestingTreeImpl(uint64_t aRootLayerTreeId,
const ScrollNode& aRoot,
bool aIsFirstPaint,
uint64_t aOriginatingLayersId,
@@ -726,30 +728,34 @@ GetEventRegionsOverride(HitTestingTreeNo
}
return result;
}
void
APZCTreeManager::StartScrollbarDrag(const ScrollableLayerGuid& aGuid,
const AsyncDragMetrics& aDragMetrics)
{
+ APZThreadUtils::AssertOnControllerThread();
+
RefPtr<AsyncPanZoomController> apzc = GetTargetAPZC(aGuid);
if (!apzc) {
NotifyScrollbarDragRejected(aGuid);
return;
}
uint64_t inputBlockId = aDragMetrics.mDragStartSequenceNumber;
mInputQueue->ConfirmDragBlock(inputBlockId, apzc, aDragMetrics);
}
bool
APZCTreeManager::StartAutoscroll(const ScrollableLayerGuid& aGuid,
const ScreenPoint& aAnchorLocation)
{
+ APZThreadUtils::AssertOnControllerThread();
+
RefPtr<AsyncPanZoomController> apzc = GetTargetAPZC(aGuid);
if (!apzc) {
if (XRE_IsGPUProcess()) {
// If we're in the compositor process, the "return false" will be
// ignored because the query comes over the PAPZCTreeManager protocol
// via an async message. In this case, send an explicit rejection
// message to content.
NotifyAutoscrollRejected(aGuid);
@@ -759,16 +765,18 @@ APZCTreeManager::StartAutoscroll(const S
apzc->StartAutoscroll(aAnchorLocation);
return true;
}
void
APZCTreeManager::StopAutoscroll(const ScrollableLayerGuid& aGuid)
{
+ APZThreadUtils::AssertOnControllerThread();
+
if (RefPtr<AsyncPanZoomController> apzc = GetTargetAPZC(aGuid)) {
apzc->StopAutoscroll();
}
}
void
APZCTreeManager::NotifyScrollbarDragRejected(const ScrollableLayerGuid& aGuid) const
{