Bug 1289650 - Convert APZChild into a wrapper around GeckoContentController. r=kats

MozReview-Commit-ID: L7ZG7EWKWEo
This commit is contained in:
Ryan Hunt
2016-08-10 16:51:45 -07:00
parent 4df9900657
commit 47cda812bf
14 changed files with 394 additions and 176 deletions

View File

@@ -26,9 +26,8 @@ namespace layers {
using namespace mozilla::gfx;
RemoteContentController::RemoteContentController(uint64_t aLayersId)
RemoteContentController::RemoteContentController()
: mCompositorThread(MessageLoop::current())
, mLayersId(aLayersId)
, mCanSend(true)
, mMutex("RemoteContentController")
{
@@ -124,10 +123,48 @@ RemoteContentController::NotifyAPZStateChange(const ScrollableLayerGuid& aGuid,
}
if (mCanSend) {
Unused << SendNotifyAPZStateChange(aGuid.mScrollId, aChange, aArg);
Unused << SendNotifyAPZStateChange(aGuid, aChange, aArg);
}
}
void
RemoteContentController::UpdateOverscrollVelocity(float aX, float aY, bool aIsRootContent)
{
if (MessageLoop::current() != mCompositorThread) {
mCompositorThread->PostTask(NewRunnableMethod<float,
float, bool>(this,
&RemoteContentController::UpdateOverscrollVelocity,
aX, aY, aIsRootContent));
return;
}
Unused << SendUpdateOverscrollVelocity(aX, aY, aIsRootContent);
}
void
RemoteContentController::UpdateOverscrollOffset(float aX, float aY, bool aIsRootContent)
{
if (MessageLoop::current() != mCompositorThread) {
mCompositorThread->PostTask(NewRunnableMethod<float,
float, bool>(this,
&RemoteContentController::UpdateOverscrollOffset,
aX, aY, aIsRootContent));
return;
}
Unused << SendUpdateOverscrollOffset(aX, aY, aIsRootContent);
}
void
RemoteContentController::SetScrollingRootContent(bool aIsRootContent)
{
if (MessageLoop::current() != mCompositorThread) {
mCompositorThread->PostTask(NewRunnableMethod<bool>(this,
&RemoteContentController::SetScrollingRootContent,
aIsRootContent));
return;
}
Unused << SendSetScrollingRootContent(aIsRootContent);
}
void
RemoteContentController::NotifyMozMouseScrollEvent(const FrameMetrics::ViewID& aScrollId,
const nsString& aEvent)
@@ -142,7 +179,7 @@ RemoteContentController::NotifyMozMouseScrollEvent(const FrameMetrics::ViewID& a
}
if (mCanSend) {
Unused << SendNotifyMozMouseScrollEvent(mLayersId, aScrollId, aEvent);
Unused << SendNotifyMozMouseScrollEvent(aScrollId, aEvent);
}
}