void TiledDrawingAreaProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID messageID, CoreIPC::ArgumentDecoder* arguments) { switch (messageID.get<DrawingAreaProxyLegacyMessage::Kind>()) { case DrawingAreaProxyLegacyMessage::TileUpdated: { int tileID; UpdateChunk updateChunk; float scale; unsigned pendingUpdateCount; if (!arguments->decode(CoreIPC::Out(tileID, updateChunk, scale, pendingUpdateCount))) return; TiledDrawingAreaTile* tile = m_tilesByID.get(tileID); ASSERT(!tile || tile->ID() == tileID); if (tile) tile->updateFromChunk(&updateChunk, scale); tileBufferUpdateComplete(); break; } case DrawingAreaProxyLegacyMessage::DidSetSize: { IntSize size; if (!arguments->decode(CoreIPC::Out(size))) return; didSetSize(size); break; } case DrawingAreaProxyLegacyMessage::Invalidate: { IntRect rect; if (!arguments->decode(CoreIPC::Out(rect))) return; invalidate(rect); break; } case DrawingAreaProxyLegacyMessage::AllTileUpdatesProcessed: { tileBufferUpdateComplete(); break; } case DrawingAreaProxyLegacyMessage::SnapshotTaken: { UpdateChunk chunk; if (!arguments->decode(CoreIPC::Out(chunk))) return; snapshotTaken(chunk); break; } default: ASSERT_NOT_REACHED(); } }
void LayerBackedDrawingAreaProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID messageID, CoreIPC::ArgumentDecoder* arguments) { switch (messageID.get<DrawingAreaProxyLegacyMessage::Kind>()) { case DrawingAreaProxyLegacyMessage::Update: { update(); break; } case DrawingAreaProxyLegacyMessage::DidSetSize: { IntSize size; if (!arguments->decode(CoreIPC::Out(size))) return; didSetSize(size); break; } default: ASSERT_NOT_REACHED(); } }
void ChunkedUpdateDrawingAreaProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID messageID, CoreIPC::ArgumentDecoder* arguments) { switch (messageID.get<DrawingAreaProxyMessage::Kind>()) { case DrawingAreaProxyMessage::Update: { UpdateChunk updateChunk; if (!arguments->decode(updateChunk)) return; update(&updateChunk); break; } case DrawingAreaProxyMessage::DidSetSize: { UpdateChunk updateChunk; if (!arguments->decode(CoreIPC::Out(updateChunk))) return; didSetSize(&updateChunk); break; } default: ASSERT_NOT_REACHED(); } }