Bug 992685 - Part 2. Fire resize event when video size changes. r=roc

This commit is contained in:
Andreas Pehrson 2014-12-04 02:01:00 +01:00
Родитель 77ec90c5a5
Коммит 13cf9ec465
1 изменённых файлов: 8 добавлений и 0 удалений

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

@ -3002,6 +3002,10 @@ void HTMLMediaElement::MetadataLoaded(const MediaInfo* aInfo,
mLoadedDataFired = false;
ChangeReadyState(nsIDOMHTMLMediaElement::HAVE_METADATA);
DispatchAsyncEvent(NS_LITERAL_STRING("durationchange"));
if (IsVideo() && mHasVideo) {
mMediaSize = aInfo->mVideo.mDisplay;
DispatchAsyncEvent(NS_LITERAL_STRING("resize"));
}
DispatchAsyncEvent(NS_LITERAL_STRING("loadedmetadata"));
if (mDecoder && mDecoder->IsTransportSeekable() && mDecoder->IsMediaSeekable()) {
ProcessMediaFragmentURI();
@ -3657,6 +3661,10 @@ void HTMLMediaElement::NotifyDecoderPrincipalChanged()
void HTMLMediaElement::UpdateMediaSize(nsIntSize size)
{
if (IsVideo() && mReadyState != HAVE_NOTHING && mMediaSize != size) {
DispatchAsyncEvent(NS_LITERAL_STRING("resize"));
}
mMediaSize = size;
UpdateReadyStateForData(mLastNextFrameStatus);
}