void CoordinatedDrawingArea::layerHostDidFlushLayers() { ASSERT(m_layerTreeHost); m_layerTreeHost->forceRepaint(); if (m_shouldSendDidUpdateBackingStoreState && !exitAcceleratedCompositingModePending()) { sendDidUpdateBackingStoreState(); return; } if (!m_layerTreeHost) return; ASSERT(!m_compositingAccordingToProxyMessages); if (!exitAcceleratedCompositingModePending()) { m_webPage->send(Messages::DrawingAreaProxy::EnterAcceleratedCompositingMode(m_backingStoreStateID, m_layerTreeHost->layerTreeContext())); m_compositingAccordingToProxyMessages = true; } }
void DrawingAreaImpl::exitAcceleratedCompositingModeSoon() { if (m_layerTreeStateIsFrozen) { m_wantsToExitAcceleratedCompositingMode = true; return; } if (exitAcceleratedCompositingModePending()) return; m_exitCompositingTimer.startOneShot(0); }