Bug 882718 - Implement GetCueListByTimeInterval() at TextTrackCueList object. r=rillian

MozReview-Commit-ID: 1T3EEfG83ec

--HG--
extra : transplant_source : %13%EA%F55%E5k%0C%5D%CC%60_k%B5%03%FDnq%97L%B2
This commit is contained in:
bechen 2016-05-25 16:11:24 +08:00
Родитель 4968e533af
Коммит f0d0134a05
2 изменённых файлов: 18 добавлений и 0 удалений

Просмотреть файл

@ -125,5 +125,19 @@ TextTrackCueList::SetCuesInactive()
}
}
already_AddRefed<TextTrackCueList>
TextTrackCueList::GetCueListByTimeInterval(media::Interval<double>& aInterval)
{
RefPtr<TextTrackCueList> output = new TextTrackCueList(mParent);
for (uint32_t i = 0; i < mList.Length(); ++i) {
TextTrackCue* cue = mList[i];
if (cue->StartTime() <= aInterval.mEnd &&
aInterval.mStart <= cue->EndTime()) {
output->AddCue(*cue);
}
}
return output.forget();
}
} // namespace dom
} // namespace mozilla

Просмотреть файл

@ -12,6 +12,7 @@
#include "nsCycleCollectionParticipant.h"
#include "nsWrapperCache.h"
#include "mozilla/ErrorResult.h"
#include "Intervals.h"
namespace mozilla {
namespace dom {
@ -56,6 +57,9 @@ public:
void SetCuesInactive();
already_AddRefed<TextTrackCueList>
GetCueListByTimeInterval(media::Interval<double>& aInterval);
private:
~TextTrackCueList();