| 20 | DrawLooperEntry::~DrawLooperEntry() = default; |
| 21 | |
| 22 | DrawLooperEntryDrawState DrawLooperEntry::getDrawState() const { |
| 23 | DrawLooperEntryDrawState drawState; |
| 24 | if (_displayList == nullptr) { |
| 25 | return drawState; |
| 26 | } |
| 27 | |
| 28 | auto frameTime = _displayList->getFrameTime(); |
| 29 | |
| 30 | for (const auto& surfacePresenter : _surfacePresenters) { |
| 31 | if (surfacePresenter.needsDrawForFrameTime(frameTime)) { |
| 32 | drawState.needsDraw = true; |
| 33 | if (surfacePresenter.needsSynchronousDraw()) { |
| 34 | drawState.prefersSynchronousDraw = true; |
| 35 | } |
| 36 | } |
| 37 | } |
| 38 | |
| 39 | return drawState; |
| 40 | } |
| 41 | |
| 42 | bool DrawLooperEntry::needsProcessFrameAtTime(TimePoint frameTime) const { |
| 43 | return _layerRoot->needsProcessFrame() && |
no test coverage detected