зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1454324 - Clear all animation data when we release layer. r=kats
MozReview-Commit-ID: AOGNjLesY0t --HG-- extra : rebase_source : 4fcb314209a92ea160ca8377d1b7f731239427a6
This commit is contained in:
Родитель
2dc22f118d
Коммит
05604b4dce
|
@ -212,6 +212,17 @@ Layer::SetCompositorAnimations(const CompositorAnimations& aCompositorAnimations
|
|||
Mutated();
|
||||
}
|
||||
|
||||
void
|
||||
Layer::ClearCompositorAnimations()
|
||||
{
|
||||
MOZ_LAYERS_LOG_IF_SHADOWABLE(
|
||||
this, ("Layer::Mutated(%p) ClearCompositorAnimations with id=%" PRIu64, this, mAnimationInfo.GetCompositorAnimationsId()));
|
||||
|
||||
mAnimationInfo.ClearAnimations();
|
||||
|
||||
Mutated();
|
||||
}
|
||||
|
||||
void
|
||||
Layer::StartPendingAnimations(const TimeStamp& aReadyTime)
|
||||
{
|
||||
|
|
|
@ -1209,6 +1209,8 @@ public:
|
|||
// 'initial current time' value.
|
||||
void StartPendingAnimations(const TimeStamp& aReadyTime);
|
||||
|
||||
void ClearCompositorAnimations();
|
||||
|
||||
/**
|
||||
* CONSTRUCTION PHASE ONLY
|
||||
* If a layer represents a fixed position element, this data is stored on the
|
||||
|
|
|
@ -979,6 +979,7 @@ LayerTransactionParent::RecvReleaseLayer(const LayerHandle& aHandle)
|
|||
if (mAnimStorage &&
|
||||
layer->GetCompositorAnimationsId()) {
|
||||
mAnimStorage->ClearById(layer->GetCompositorAnimationsId());
|
||||
layer->ClearCompositorAnimations();
|
||||
}
|
||||
layer->Disconnect();
|
||||
return IPC_OK();
|
||||
|
|
Загрузка…
Ссылка в новой задаче