411
412#if ENABLE(VIDEO_TRACK)
413 void visitDOMWrapper(DOMDataStore* store, TextTrack* textTrack, v8::Persistent<v8::Object> wrapper)
414 {
415 HTMLMediaElement* mediaElement = textTrack->mediaElement();
416 if (!mediaElement)
417 return;
418
419 Vector<v8::Persistent<v8::Value> > wrappers;
420 TextTrackCueList* cues = textTrack->cues();
421 if (cues) {
422 for (unsigned i = 0; i < cues->length(); ++i) {
423 TextTrackCue* cue = cues->item(i);
424 v8::Handle<v8::Object> wrapper = getDOMObjectMap().get(cue);
425 if (!wrapper.IsEmpty())
426 wrappers.append(wrapper);
427 }
428
429 if (!wrappers.isEmpty())
430 v8::V8::AddImplicitReferences(wrapper, wrappers.data(), wrappers.size());
431 }
432
433 appendToGrouperList(mediaElement, wrapper);
434 }
435#endif
436
437 void appendToGrouperList(Node* node, v8::Persistent<v8::Object> wrapper)
438 {
439 GroupId groupId = calculateGroupId(node);
440 if (!groupId)
441 return;
442 m_grouper.append(GrouperItem(groupId, wrapper));
443 }
444