void GenericEventQueue::timerFired(Timer<GenericEventQueue>*) { ASSERT(!m_timer.isActive()); ASSERT(!m_pendingEvents.isEmpty()); Vector<RefPtr<Event> > pendingEvents; m_pendingEvents.swap(pendingEvents); RefPtr<EventTarget> protect(m_owner); for (size_t i = 0; i < pendingEvents.size(); ++i) { Event* event = pendingEvents[i].get(); EventTarget* target = event->target() ? event->target() : m_owner; CString type(event->type().ascii()); TRACE_EVENT_ASYNC_STEP_INTO1("event", "GenericEventQueue:enqueueEvent", event, "dispatch", "type", type); target->dispatchEvent(pendingEvents[i].release()); TRACE_EVENT_ASYNC_END1("event", "GenericEventQueue:enqueueEvent", event, "type", type); } }
void GenericEventQueue::timerFired(Timer<GenericEventQueue>*) { ASSERT(!m_timer.isActive()); ASSERT(!m_pendingEvents.isEmpty()); HeapVector<Member<Event>> pendingEvents; m_pendingEvents.swap(pendingEvents); for (const auto& pendingEvent : pendingEvents) { Event* event = pendingEvent.get(); EventTarget* target = event->target() ? event->target() : m_owner.get(); CString type(event->type().ascii()); InspectorInstrumentation::AsyncTask asyncTask(target->getExecutionContext(), event); TRACE_EVENT_ASYNC_STEP_INTO1("event", "GenericEventQueue:enqueueEvent", event, "dispatch", "type", type); target->dispatchEvent(pendingEvent); TRACE_EVENT_ASYNC_END1("event", "GenericEventQueue:enqueueEvent", event, "type", type); } }
void ResourceFetcher::didChangeLoadingPriority(const Resource* resource, ResourceLoadPriority loadPriority, int intraPriorityValue) { TRACE_EVENT_ASYNC_STEP_INTO1("net", "Resource", resource, "ChangePriority", "priority", loadPriority); context().dispatchDidChangeResourcePriority(resource->identifier(), loadPriority, intraPriorityValue); }