Lines Matching defs:prevFrame
268 const auto* prevFrame = frameHolder->getFrame(options.fPriorFrame);
269 switch (prevFrame->getDisposalMethod()) {
276 SkIRect prevRect = prevFrame->frameRect();
293 const auto* prevFrame = frameHolder->getFrame(requiredFrame);
294 const auto disposalMethod = prevFrame->getDisposalMethod();
296 auto prevRect = prevFrame->frameRect();
755 const SkFrame* prevFrame = this->getFrame(i-1);
756 while (prevFrame->getDisposalMethod() == SkCodecAnimation::DisposalMethod::kRestorePrevious) {
757 const int prevId = prevFrame->frameId();
764 prevFrame = this->getFrame(prevId - 1);
767 const bool clearPrevFrame = restore_bg(*prevFrame);
768 auto prevFrameRect = frame_rect_on_screen(prevFrame->frameRect(), screenRect);
771 if (prevFrameRect == screenRect || independent(*prevFrame)) {
779 // Note: We could be more aggressive here. If prevFrame clears
781 // frame is independent), prevFrame could be marked independent.
783 frame->setRequiredFrame(prevFrame->frameId());
784 frame->setHasAlpha(prevFrame->hasAlpha() || clearPrevFrame);
789 const int prevRequiredFrame = prevFrame->getRequiredFrame();
796 prevFrame = this->getFrame(prevRequiredFrame);
797 prevFrameRect = frame_rect_on_screen(prevFrame->frameRect(), screenRect);
800 if (restore_bg(*prevFrame)) {
802 if (prevFrameRect == screenRect || independent(*prevFrame)) {
806 // prevFrame covers its required frame and that frame is
808 frame->setRequiredFrame(prevFrame->frameId());
813 SkASSERT(prevFrame->getDisposalMethod() == SkCodecAnimation::DisposalMethod::kKeep);
814 frame->setRequiredFrame(prevFrame->frameId());
815 frame->setHasAlpha(prevFrame->hasAlpha() || (reportsAlpha && !blendWithPrevFrame));