mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-17 07:15:46 +00:00
Bug 448630 - Make audio and video show up in Page Info > Media. r=dao
This commit is contained in:
parent
c28dd3ef6d
commit
f2944f1de0
@ -278,6 +278,10 @@ function onLoadPageInfo()
|
||||
gStrings.mediaEmbed = gBundle.getString("mediaEmbed");
|
||||
gStrings.mediaLink = gBundle.getString("mediaLink");
|
||||
gStrings.mediaInput = gBundle.getString("mediaInput");
|
||||
#ifdef MOZ_MEDIA
|
||||
gStrings.mediaVideo = gBundle.getString("mediaVideo");
|
||||
gStrings.mediaAudio = gBundle.getString("mediaAudio");
|
||||
#endif
|
||||
|
||||
var args = "arguments" in window &&
|
||||
window.arguments.length >= 1 &&
|
||||
@ -621,6 +625,14 @@ function grabAll(elem)
|
||||
addImage(href, gStrings.mediaImg, "", elem, false);
|
||||
} catch (e) { }
|
||||
}
|
||||
#endif
|
||||
#ifdef MOZ_MEDIA
|
||||
else if (elem instanceof HTMLVideoElement) {
|
||||
addImage(elem.currentSrc, gStrings.mediaVideo, "", elem, false);
|
||||
}
|
||||
else if (elem instanceof HTMLAudioElement) {
|
||||
addImage(elem.currentSrc, gStrings.mediaAudio, "", elem, false);
|
||||
}
|
||||
#endif
|
||||
else if (elem instanceof HTMLLinkElement) {
|
||||
if (elem.rel && /\bicon\b/i.test(elem.rel))
|
||||
@ -813,6 +825,7 @@ function makePreview(row)
|
||||
var item = getSelectedImage(imageTree);
|
||||
var url = gImageView.data[row][COL_IMAGE_ADDRESS];
|
||||
var isBG = gImageView.data[row][COL_IMAGE_BG];
|
||||
var isAudo = false;
|
||||
|
||||
setItemValue("imageurltext", url);
|
||||
|
||||
@ -914,8 +927,8 @@ function makePreview(row)
|
||||
if (/^data:/.test(url) && /^image\//.test(mimeType))
|
||||
isProtocolAllowed = true;
|
||||
|
||||
var newImage = new Image();
|
||||
newImage.setAttribute("id", "thepreviewimage");
|
||||
var newImage = new Image;
|
||||
newImage.id = "thepreviewimage";
|
||||
var physWidth = 0, physHeight = 0;
|
||||
var width = 0, height = 0;
|
||||
|
||||
@ -956,6 +969,33 @@ function makePreview(row)
|
||||
document.getElementById("theimagecontainer").collapsed = false
|
||||
document.getElementById("brokenimagecontainer").collapsed = true;
|
||||
}
|
||||
#ifdef MOZ_MEDIA
|
||||
else if (item instanceof HTMLVideoElement && isProtocolAllowed) {
|
||||
newImage = document.createElementNS("http://www.w3.org/1999/xhtml", "video");
|
||||
newImage.id = "thepreviewimage";
|
||||
newImage.mozLoadFrom(item);
|
||||
newImage.controls = true;
|
||||
physWidth = item.videoWidth;
|
||||
physHeight = item.videoHeight;
|
||||
width = item.width != -1 ? item.width : physWidth;
|
||||
height = item.height != -1 ? item.height : physHeight;
|
||||
newImage.width = width;
|
||||
newImage.height = height;
|
||||
|
||||
document.getElementById("theimagecontainer").collapsed = false;
|
||||
document.getElementById("brokenimagecontainer").collapsed = true;
|
||||
}
|
||||
else if (item instanceof HTMLAudioElement && isProtocolAllowed) {
|
||||
newImage = new Audio;
|
||||
newImage.id = "thepreviewimage";
|
||||
newImage.src = url;
|
||||
newImage.controls = true;
|
||||
isAudo = true;
|
||||
|
||||
document.getElementById("theimagecontainer").collapsed = false;
|
||||
document.getElementById("brokenimagecontainer").collapsed = true;
|
||||
}
|
||||
#endif
|
||||
else {
|
||||
// fallback image for protocols not allowed (e.g., data: or javascript:)
|
||||
// or elements not [yet] handled (e.g., object, embed).
|
||||
@ -964,7 +1004,7 @@ function makePreview(row)
|
||||
}
|
||||
|
||||
var imageSize = "";
|
||||
if (url) {
|
||||
if (url && !isAudo) {
|
||||
if (width != physWidth || height != physHeight) {
|
||||
imageSize = gBundle.getFormattedString("mediaDimensionsScaled",
|
||||
[formatNumber(physWidth),
|
||||
|
@ -48,6 +48,8 @@ yes=Yes
|
||||
no=No
|
||||
|
||||
mediaImg=Image
|
||||
mediaVideo=Video
|
||||
mediaAudio=Audio
|
||||
mediaBGImg=Background
|
||||
mediaObject=Object
|
||||
mediaEmbed=Embed
|
||||
|
Loading…
Reference in New Issue
Block a user