| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
| 3 * Copyright (C) 2011, 2012 Ericsson AB. All rights reserved. | 3 * Copyright (C) 2011, 2012 Ericsson AB. All rights reserved. |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
| 7 * are met: | 7 * are met: |
| 8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
| (...skipping 364 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 375 track->unregisterMediaStream(this); | 375 track->unregisterMediaStream(this); |
| 376 tracks->remove(index); | 376 tracks->remove(index); |
| 377 scheduleDispatchEvent(MediaStreamTrackEvent::create(EventTypeNames::removetr
ack, false, false, track)); | 377 scheduleDispatchEvent(MediaStreamTrackEvent::create(EventTypeNames::removetr
ack, false, false, track)); |
| 378 | 378 |
| 379 if (active() && emptyOrOnlyEndedTracks()) { | 379 if (active() && emptyOrOnlyEndedTracks()) { |
| 380 m_descriptor->setActive(false); | 380 m_descriptor->setActive(false); |
| 381 scheduleDispatchEvent(Event::create(EventTypeNames::inactive)); | 381 scheduleDispatchEvent(Event::create(EventTypeNames::inactive)); |
| 382 } | 382 } |
| 383 } | 383 } |
| 384 | 384 |
| 385 void MediaStream::scheduleDispatchEvent(PassRefPtrWillBeRawPtr<Event> event) | 385 void MediaStream::scheduleDispatchEvent(RawPtr<Event> event) |
| 386 { | 386 { |
| 387 m_scheduledEvents.append(event); | 387 m_scheduledEvents.append(event); |
| 388 | 388 |
| 389 if (!m_scheduledEventTimer.isActive()) | 389 if (!m_scheduledEventTimer.isActive()) |
| 390 m_scheduledEventTimer.startOneShot(0, BLINK_FROM_HERE); | 390 m_scheduledEventTimer.startOneShot(0, BLINK_FROM_HERE); |
| 391 } | 391 } |
| 392 | 392 |
| 393 void MediaStream::scheduledEventTimerFired(Timer<MediaStream>*) | 393 void MediaStream::scheduledEventTimerFired(Timer<MediaStream>*) |
| 394 { | 394 { |
| 395 if (m_stopped) | 395 if (m_stopped) |
| 396 return; | 396 return; |
| 397 | 397 |
| 398 WillBeHeapVector<RefPtrWillBeMember<Event>> events; | 398 HeapVector<Member<Event>> events; |
| 399 events.swap(m_scheduledEvents); | 399 events.swap(m_scheduledEvents); |
| 400 | 400 |
| 401 WillBeHeapVector<RefPtrWillBeMember<Event>>::iterator it = events.begin(); | 401 HeapVector<Member<Event>>::iterator it = events.begin(); |
| 402 for (; it != events.end(); ++it) | 402 for (; it != events.end(); ++it) |
| 403 dispatchEvent((*it).release()); | 403 dispatchEvent((*it).release()); |
| 404 | 404 |
| 405 events.clear(); | 405 events.clear(); |
| 406 } | 406 } |
| 407 | 407 |
| 408 URLRegistry& MediaStream::registry() const | 408 URLRegistry& MediaStream::registry() const |
| 409 { | 409 { |
| 410 return MediaStreamRegistry::registry(); | 410 return MediaStreamRegistry::registry(); |
| 411 } | 411 } |
| 412 | 412 |
| 413 DEFINE_TRACE(MediaStream) | 413 DEFINE_TRACE(MediaStream) |
| 414 { | 414 { |
| 415 visitor->trace(m_audioTracks); | 415 visitor->trace(m_audioTracks); |
| 416 visitor->trace(m_videoTracks); | 416 visitor->trace(m_videoTracks); |
| 417 visitor->trace(m_descriptor); | 417 visitor->trace(m_descriptor); |
| 418 visitor->trace(m_scheduledEvents); | 418 visitor->trace(m_scheduledEvents); |
| 419 RefCountedGarbageCollectedEventTargetWithInlineData<MediaStream>::trace(visi
tor); | 419 RefCountedGarbageCollectedEventTargetWithInlineData<MediaStream>::trace(visi
tor); |
| 420 ContextLifecycleObserver::trace(visitor); | 420 ContextLifecycleObserver::trace(visitor); |
| 421 MediaStreamDescriptorClient::trace(visitor); | 421 MediaStreamDescriptorClient::trace(visitor); |
| 422 } | 422 } |
| 423 | 423 |
| 424 } // namespace blink | 424 } // namespace blink |
| OLD | NEW |