*** empty log message ***
This commit is contained in:
@@ -463,9 +463,8 @@ Contributor(s):
|
||||
<menuseparator/>
|
||||
<menuitem label="&findOnCmd.label;" accesskey="&findOnCmd.accesskey;" key="key_find" command="Browser:Find"/>
|
||||
<menuitem label="&findAgainCmd.label;" accesskey="&findAgainCmd.accesskey;" key="key_findAgain" command="Browser:FindAgain"/>
|
||||
<menuseparator id="menu_PrefsSeparator"/>
|
||||
<menuitem id="menu_preferences"
|
||||
label="&preferencesCmd.label;"
|
||||
<menuseparator/>
|
||||
<menuitem label="&preferencesCmd.label;"
|
||||
accesskey="&preferencesCmd.accesskey;"
|
||||
oncommand="goPreferences('navigator', 'chrome://communicator/content/pref/pref-navigator.xul', 'navigator')"/>
|
||||
</menupopup>
|
||||
@@ -481,9 +480,9 @@ Contributor(s):
|
||||
<menuitem label="&taskbarCmd.label;" accesskey="&taskbarCmd.accesskey;" class="menuitem-iconic" type="checkbox" observes="cmd_viewtaskbar" />
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuitem id="menuitem_fullScreen" accesskey="&fullScreenCmd.accesskey;"
|
||||
<menuitem accesskey="&fullScreenCmd.accesskey;"
|
||||
label="&fullScreenCmd.label;" key="key_fullScreen"
|
||||
command="View:FullScreen" hidden="true"/>
|
||||
command="View:FullScreen"/>
|
||||
<menuseparator />
|
||||
<menuitem label="&stopCmd.label;" accesskey="&stopCmd.accesskey;" id="menuitem-stop" disabled="true" oncommand="BrowserStop();" key="key_stop"/>
|
||||
<menuitem accesskey="&reloadCmd.accesskey;" key="key_reload" label="&reloadCmd.label;" oncommand="BrowserReload();"/>
|
||||
|
||||
@@ -1,114 +0,0 @@
|
||||
/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
/* ***** BEGIN LICENSE BLOCK *****
|
||||
* Version: NPL 1.1/GPL 2.0/LGPL 2.1
|
||||
*
|
||||
* The contents of this file are subject to the Netscape Public License
|
||||
* Version 1.1 (the "License"); you may not use this file except in
|
||||
* compliance with the License. You may obtain a copy of the License at
|
||||
* http://www.mozilla.org/NPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the
|
||||
* License.
|
||||
*
|
||||
* The Original Code is mozilla.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Simon Fraser <sfraser@netscape.com>
|
||||
* Dean Tessman <dean_tessman@hotmail.com>
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
* in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
* of those above. If you wish to allow use of your version of this file only
|
||||
* under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
* use your version of this file under the terms of the NPL, indicate your
|
||||
* decision by deleting the provisions above and replace them with the notice
|
||||
* and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
* the provisions above, a recipient may use your version of this file under
|
||||
* the terms of any one of the NPL, the GPL or the LGPL.
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
var gPromptService;
|
||||
var gFindBundle;
|
||||
|
||||
// browser is the <browser> element
|
||||
// rootSearchWindow is the window to constrain the search to (normally window._content)
|
||||
// startSearchWindow is the frame to start searching (can be, and normally, rootSearchWindow)
|
||||
function findInPage(browser, rootSearchWindow, startSearchWindow)
|
||||
{
|
||||
var findInst = browser.webBrowserFind;
|
||||
// set up the find to search the focussedWindow, bounded by the content window.
|
||||
var findInFrames = findInst.QueryInterface(Components.interfaces.nsIWebBrowserFindInFrames);
|
||||
findInFrames.rootSearchFrame = rootSearchWindow;
|
||||
findInFrames.currentSearchFrame = startSearchWindow;
|
||||
|
||||
// always search in frames for now. We could add a checkbox to the dialog for this.
|
||||
findInst.searchFrames = true;
|
||||
|
||||
// is the dialog up already?
|
||||
if ("findDialog" in window && window.findDialog)
|
||||
window.findDialog.focus();
|
||||
else
|
||||
window.findDialog = window.openDialog("chrome://browser/content/find/findDialog.xul", "_blank", "chrome,resizable=no,dependent=yes", findInst);
|
||||
}
|
||||
|
||||
function findAgainInPage(browser, rootSearchWindow, startSearchWindow)
|
||||
{
|
||||
if ("findDialog" in window && window.findDialog)
|
||||
window.findDialog.focus();
|
||||
else
|
||||
{
|
||||
var findInst = browser.webBrowserFind;
|
||||
// set up the find to search the focussedWindow, bounded by the content window.
|
||||
var findInFrames = findInst.QueryInterface(Components.interfaces.nsIWebBrowserFindInFrames);
|
||||
findInFrames.rootSearchFrame = rootSearchWindow;
|
||||
findInFrames.currentSearchFrame = startSearchWindow;
|
||||
|
||||
// always search in frames for now. We could add a checkbox to the dialog for this.
|
||||
findInst.searchFrames = true;
|
||||
|
||||
// get the find service, which stores global find state, and init the
|
||||
// nsIWebBrowser find with it. We don't assume that there was a previous
|
||||
// Find that set this up.
|
||||
var findService = Components.classes["@mozilla.org/find/find_service;1"]
|
||||
.getService(Components.interfaces.nsIFindService);
|
||||
findInst.searchString = findService.searchString;
|
||||
findInst.matchCase = findService.matchCase;
|
||||
findInst.wrapFind = findService.wrapFind;
|
||||
findInst.entireWord = findService.entireWord;
|
||||
findInst.findBackwards = findService.findBackwards;
|
||||
|
||||
var found = false;
|
||||
if (findInst.searchString.length == 0)
|
||||
// no previous find text
|
||||
return findInPage(browser, rootSearchWindow, startSearchWindow);
|
||||
|
||||
found = findInst.findNext();
|
||||
if (!found) {
|
||||
if (!gPromptService)
|
||||
gPromptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"].getService()
|
||||
.QueryInterface(Components.interfaces.nsIPromptService);
|
||||
if (!gFindBundle)
|
||||
gFindBundle = document.getElementById("findBundle");
|
||||
|
||||
gPromptService.alert(window, gFindBundle.getString("notFoundTitle"), gFindBundle.getString("notFoundWarning"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function canFindAgainInPage()
|
||||
{
|
||||
var findService = Components.classes["@mozilla.org/find/find_service;1"]
|
||||
.getService(Components.interfaces.nsIFindService);
|
||||
return (findService.searchString.length > 0);
|
||||
}
|
||||
|
||||
@@ -1,89 +0,0 @@
|
||||
/* ***** BEGIN LICENSE BLOCK *****
|
||||
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version
|
||||
* 1.1 (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
* http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the
|
||||
* License.
|
||||
*
|
||||
* The Original Code is Eric Hodel's <drbrain@segment7.net> code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Eric Hodel.
|
||||
* Portions created by the Initial Developer are Copyright (C) 2001
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Christopher Hoess <choess@force.stwing.upenn.edu>
|
||||
* Tim Taylor <tim@tool-man.org>
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
* in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
* of those above. If you wish to allow use of your version of this file only
|
||||
* under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
* use your version of this file under the terms of the MPL, indicate your
|
||||
* decision by deleting the provisions above and replace them with the notice
|
||||
* and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
* the provisions above, a recipient may use your version of this file under
|
||||
* the terms of any one of the MPL, the GPL or the LGPL.
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
/*
|
||||
* LanguageDictionary is a Singleton for looking up a language name
|
||||
* given its language code.
|
||||
*/
|
||||
function LanguageDictionary() {
|
||||
this.dictionary = null;
|
||||
}
|
||||
|
||||
LanguageDictionary.prototype = {
|
||||
lookupLanguageName: function(languageCode)
|
||||
{
|
||||
if (this.getDictionary()[languageCode])
|
||||
return this.getDictionary()[languageCode];
|
||||
else
|
||||
// XXX: handle non-standard language code's per
|
||||
// hixie's spec (see bug 2800)
|
||||
return "";
|
||||
},
|
||||
|
||||
getDictionary: function()
|
||||
{
|
||||
if (!this.dictionary)
|
||||
this.dictionary = LanguageDictionary.createDictionary();
|
||||
|
||||
return this.dictionary;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
LanguageDictionary.createDictionary = function()
|
||||
{
|
||||
var dictionary = new Array();
|
||||
|
||||
var e = LanguageDictionary.getLanguageNames().getSimpleEnumeration();
|
||||
while (e.hasMoreElements()) {
|
||||
var property = e.getNext();
|
||||
property = property.QueryInterface(
|
||||
Components.interfaces.nsIPropertyElement);
|
||||
dictionary[property.key] = property.value;
|
||||
}
|
||||
|
||||
return dictionary;
|
||||
}
|
||||
|
||||
LanguageDictionary.getLanguageNames = function()
|
||||
{
|
||||
return srGetStrBundle(
|
||||
"chrome://global/locale/languageNames.properties");
|
||||
}
|
||||
|
||||
const languageDictionary = new LanguageDictionary();
|
||||
@@ -1,517 +0,0 @@
|
||||
/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public
|
||||
* License Version 1.1 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is this file as it was released on
|
||||
* January 3, 2001.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Jonas Sicking.
|
||||
* Portions created by Jonas Sicking are Copyright (C) 2000
|
||||
* Jonas Sicking. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Jonas Sicking <sicking@bigfoot.com> (Original Author)
|
||||
* Gervase Markham <gerv@gerv.net>
|
||||
* Heikki Toivonen <heikki@netscape.com>
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the
|
||||
* terms of the GNU General Public License Version 2 or later (the
|
||||
* "GPL"), in which case the provisions of the GPL are applicable
|
||||
* instead of those above. If you wish to allow use of your
|
||||
* version of this file only under the terms of the GPL and not to
|
||||
* allow others to use your version of this file under the MPL,
|
||||
* indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by
|
||||
* the GPL. If you do not delete the provisions above, a recipient
|
||||
* may use your version of this file under either the MPL or the
|
||||
* GPL.
|
||||
*
|
||||
*/
|
||||
|
||||
const XLinkNS = "http://www.w3.org/1999/xlink";
|
||||
const XULNS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
|
||||
const XMLNS = "http://www.w3.org/XML/1998/namespace";
|
||||
const XHTMLNS = "http://www.w3.org/1999/xhtml";
|
||||
var gMetadataBundle;
|
||||
var gLangBundle;
|
||||
var gRegionBundle;
|
||||
var nodeView;
|
||||
var htmlMode = false;
|
||||
|
||||
var onLink = false;
|
||||
var onImage = false;
|
||||
var onInsDel = false;
|
||||
var onQuote = false;
|
||||
var onMisc = false;
|
||||
var onTable = false;
|
||||
var onTitle = false;
|
||||
var onLang = false;
|
||||
|
||||
function onLoad()
|
||||
{
|
||||
gMetadataBundle = document.getElementById("bundle_metadata");
|
||||
gLangBundle = document.getElementById("bundle_languages");
|
||||
gRegionBundle = document.getElementById("bundle_regions");
|
||||
|
||||
showMetadataFor(window.arguments[0]);
|
||||
|
||||
nodeView = window.arguments[0].ownerDocument.defaultView;
|
||||
}
|
||||
|
||||
function showMetadataFor(elem)
|
||||
{
|
||||
// skip past non-element nodes
|
||||
while (elem && elem.nodeType != Node.ELEMENT_NODE)
|
||||
elem = elem.parentNode;
|
||||
|
||||
if (!elem) {
|
||||
alert(gMetadataBundle.getString("unableToShowProps"));
|
||||
window.close();
|
||||
}
|
||||
|
||||
if (elem.ownerDocument.getElementsByName && !elem.ownerDocument.namespaceURI)
|
||||
htmlMode = true;
|
||||
|
||||
// htmllocalname is "" if it's not an html tag, or the name of the tag if it is.
|
||||
var htmllocalname = "";
|
||||
if (isHTMLElement(elem,"")) {
|
||||
htmllocalname = elem.localName.toLowerCase();
|
||||
}
|
||||
|
||||
// We only look for images once
|
||||
checkForImage(elem, htmllocalname);
|
||||
|
||||
// Walk up the tree, looking for elements of interest.
|
||||
// Each of them could be at a different level in the tree, so they each
|
||||
// need their own boolean to tell us to stop looking.
|
||||
while (elem && elem.nodeType == Node.ELEMENT_NODE) {
|
||||
if (!onLink) checkForLink(elem, htmllocalname);
|
||||
if (!onInsDel) checkForInsDel(elem, htmllocalname);
|
||||
if (!onQuote) checkForQuote(elem, htmllocalname);
|
||||
if (!onTable) checkForTable(elem, htmllocalname);
|
||||
if (!onTitle) checkForTitle(elem, htmllocalname);
|
||||
if (!onLang) checkForLang(elem, htmllocalname);
|
||||
|
||||
elem = elem.parentNode;
|
||||
|
||||
htmllocalname = "";
|
||||
if (isHTMLElement(elem,"")) {
|
||||
htmllocalname = elem.localName.toLowerCase();
|
||||
}
|
||||
}
|
||||
|
||||
// Decide which sections to show
|
||||
var onMisc = onTable || onTitle || onLang;
|
||||
if (!onMisc) hideNode("misc-sec");
|
||||
if (!onLink) hideNode("link-sec");
|
||||
if (!onImage) hideNode("image-sec");
|
||||
if (!onInsDel) hideNode("insdel-sec");
|
||||
if (!onQuote) hideNode("quote-sec");
|
||||
|
||||
// Fix the Misc section visibilities
|
||||
if (onMisc) {
|
||||
if (!onTable) hideNode("misc-tblsummary");
|
||||
if (!onLang) hideNode("misc-lang");
|
||||
if (!onTitle) hideNode("misc-title");
|
||||
}
|
||||
|
||||
// Get rid of the "No properties" message. This is a backstop -
|
||||
// it should really never show, as long as nsContextMenu.js's
|
||||
// checking doesn't get broken.
|
||||
if (onLink || onImage || onInsDel || onQuote || onMisc)
|
||||
hideNode("no-properties")
|
||||
}
|
||||
|
||||
|
||||
function checkForImage(elem, htmllocalname)
|
||||
{
|
||||
var img;
|
||||
var imgType; // "img" = <img>
|
||||
// "object" = <object>
|
||||
// "input" = <input type=image>
|
||||
// "background" = css background (to be added later)
|
||||
|
||||
if (htmllocalname === "img") {
|
||||
img = elem;
|
||||
imgType = "img";
|
||||
|
||||
} else if (htmllocalname === "object" &&
|
||||
elem.type.substring(0,6) == "image/" &&
|
||||
elem.data) {
|
||||
img = elem;
|
||||
imgType = "object";
|
||||
|
||||
} else if (htmllocalname === "input" &&
|
||||
elem.type.toUpperCase() == "IMAGE") {
|
||||
img = elem;
|
||||
imgType = "input";
|
||||
|
||||
} else if (htmllocalname === "area" || htmllocalname === "a") {
|
||||
|
||||
// Clicked in image map?
|
||||
var map = elem;
|
||||
while (map && map.nodeType == Node.ELEMENT_NODE && !isHTMLElement(map,"map") )
|
||||
map = map.parentNode;
|
||||
|
||||
if (map && map.nodeType == Node.ELEMENT_NODE)
|
||||
img = getImageForMap(map);
|
||||
}
|
||||
|
||||
if (img) {
|
||||
setInfo("image-url", img.src);
|
||||
if ("width" in img) {
|
||||
setInfo("image-width", img.width);
|
||||
setInfo("image-height", img.height);
|
||||
}
|
||||
else {
|
||||
setInfo("image-width", "");
|
||||
setInfo("image-height", "");
|
||||
}
|
||||
|
||||
if (imgType == "img") {
|
||||
setInfo("image-desc", getAbsoluteURL(img.longDesc, img));
|
||||
} else {
|
||||
setInfo("image-desc", "");
|
||||
}
|
||||
|
||||
onImage = true;
|
||||
}
|
||||
}
|
||||
|
||||
function checkForLink(elem, htmllocalname)
|
||||
{
|
||||
if ((htmllocalname === "a" && elem.href != "") ||
|
||||
htmllocalname === "area") {
|
||||
|
||||
setInfo("link-lang", convertLanguageCode(elem.getAttribute("hreflang")));
|
||||
setInfo("link-url", elem.href);
|
||||
setInfo("link-type", elem.getAttribute("type"));
|
||||
setInfo("link-rel", elem.getAttribute("rel"));
|
||||
setInfo("link-rev", elem.getAttribute("rev"));
|
||||
|
||||
target = elem.target;
|
||||
|
||||
switch (target) {
|
||||
case "_top":
|
||||
setInfo("link-target", gMetadataBundle.getString("sameWindowText"));
|
||||
break;
|
||||
case "_parent":
|
||||
setInfo("link-target", gMetadataBundle.getString("parentFrameText"));
|
||||
break;
|
||||
case "_blank":
|
||||
setInfo("link-target", gMetadataBundle.getString("newWindowText"));
|
||||
break;
|
||||
case "":
|
||||
case "_self":
|
||||
if (elem.ownerDocument != elem.ownerDocument.defaultView._content.document)
|
||||
setInfo("link-target", gMetadataBundle.getString("sameFrameText"));
|
||||
else
|
||||
setInfo("link-target", gMetadataBundle.getString("sameWindowText"));
|
||||
break;
|
||||
default:
|
||||
setInfo("link-target", "\"" + target + "\"");
|
||||
}
|
||||
|
||||
onLink = true;
|
||||
}
|
||||
|
||||
else if (elem.getAttributeNS(XLinkNS,"href") != "") {
|
||||
setInfo("link-url", getAbsoluteURL(elem.getAttributeNS(XLinkNS,"href"),elem));
|
||||
setInfo("link-lang", "");
|
||||
setInfo("link-type", "");
|
||||
setInfo("link-rel", "");
|
||||
setInfo("link-rev", "");
|
||||
|
||||
switch (elem.getAttributeNS(XLinkNS,"show")) {
|
||||
case "embed":
|
||||
setInfo("link-target", gMetadataBundle.getString("embeddedText"));
|
||||
break;
|
||||
case "new":
|
||||
setInfo("link-target", gMetadataBundle.getString("newWindowText"));
|
||||
break;
|
||||
case "":
|
||||
case "replace":
|
||||
if (elem.ownerDocument != elem.ownerDocument.defaultView._content.document)
|
||||
setInfo("link-target", gMetadataBundle.getString("sameFrameText"));
|
||||
else
|
||||
setInfo("link-target", gMetadataBundle.getString("sameWindowText"));
|
||||
break;
|
||||
default:
|
||||
setInfo("link-target", "");
|
||||
break;
|
||||
}
|
||||
|
||||
onLink = true;
|
||||
}
|
||||
}
|
||||
|
||||
function checkForInsDel(elem, htmllocalname)
|
||||
{
|
||||
if ((htmllocalname === "ins" || htmllocalname === "del") &&
|
||||
(elem.cite || elem.dateTime)) {
|
||||
setInfo("insdel-cite", getAbsoluteURL(elem.cite, elem));
|
||||
setInfo("insdel-date", elem.dateTime);
|
||||
onInsDel = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function checkForQuote(elem, htmllocalname)
|
||||
{
|
||||
if ((htmllocalname === "q" || htmllocalname === "blockquote") && elem.cite) {
|
||||
setInfo("quote-cite", getAbsoluteURL(elem.cite, elem));
|
||||
onQuote = true;
|
||||
}
|
||||
}
|
||||
|
||||
function checkForTable(elem, htmllocalname)
|
||||
{
|
||||
if (htmllocalname === "table" && elem.summary) {
|
||||
setInfo("misc-tblsummary", elem.summary);
|
||||
onTable = true;
|
||||
}
|
||||
}
|
||||
|
||||
function checkForLang(elem, htmllocalname)
|
||||
{
|
||||
if ((htmllocalname && elem.lang) || elem.getAttributeNS(XMLNS, "lang")) {
|
||||
var abbr;
|
||||
if (htmllocalname && elem.lang)
|
||||
abbr = elem.lang;
|
||||
else
|
||||
abbr = elem.getAttributeNS(XMLNS, "lang");
|
||||
|
||||
setInfo("misc-lang", convertLanguageCode(abbr));
|
||||
onLang = true;
|
||||
}
|
||||
}
|
||||
|
||||
function checkForTitle(elem, htmllocalname)
|
||||
{
|
||||
if (htmllocalname && elem.title) {
|
||||
setInfo("misc-title", elem.title);
|
||||
onTitle = true;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Set text of node id to value
|
||||
* if value="" the node with specified id is hidden.
|
||||
* Node should be have one of these forms
|
||||
* <xul:label id="id-text" value=""/>
|
||||
* <xul:description id="id-text"/>
|
||||
*/
|
||||
function setInfo(id, value)
|
||||
{
|
||||
if (value == "") {
|
||||
hideNode(id);
|
||||
return;
|
||||
}
|
||||
|
||||
var node = document.getElementById(id+"-text");
|
||||
|
||||
if (node.namespaceURI == XULNS && node.localName == "label") {
|
||||
node.setAttribute("value",value);
|
||||
|
||||
} else if (node.namespaceURI == XULNS && node.localName == "description") {
|
||||
while (node.hasChildNodes())
|
||||
node.removeChild(node.firstChild);
|
||||
node.appendChild(node.ownerDocument.createTextNode(value));
|
||||
}
|
||||
}
|
||||
|
||||
// Hide node with specified id
|
||||
function hideNode(id)
|
||||
{
|
||||
var style = document.getElementById(id).getAttribute("style");
|
||||
document.getElementById(id).setAttribute("style", "display:none;" + style);
|
||||
}
|
||||
|
||||
// opens the link contained in the node's "value" attribute.
|
||||
function openLink(node)
|
||||
{
|
||||
var url = node.getAttribute("value");
|
||||
nodeView._content.document.location = url;
|
||||
window.close();
|
||||
}
|
||||
|
||||
/*
|
||||
* Find <img> or <object> which uses an imagemap.
|
||||
* If more then one object is found we can't determine which one
|
||||
* was clicked.
|
||||
*
|
||||
* This code has to be changed once bug 1882 is fixed.
|
||||
* Once bug 72527 is fixed this code should use the .images collection.
|
||||
*/
|
||||
function getImageForMap(map)
|
||||
{
|
||||
var mapuri = "#" + map.getAttribute("name");
|
||||
var multipleFound = false;
|
||||
var img;
|
||||
|
||||
var list = getHTMLElements(map.ownerDocument, "img");
|
||||
for (var i=0; i < list.length; i++) {
|
||||
if (list.item(i).getAttribute("usemap") == mapuri) {
|
||||
if (img) {
|
||||
multipleFound = true;
|
||||
break;
|
||||
} else {
|
||||
img = list.item(i);
|
||||
imgType = "img";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
list = getHTMLElements(map.ownerDocument, "object");
|
||||
for (i = 0; i < list.length; i++) {
|
||||
if (list.item(i).getAttribute("usemap") == mapuri) {
|
||||
if (img) {
|
||||
multipleFound = true;
|
||||
break;
|
||||
} else {
|
||||
img = list.item(i);
|
||||
imgType = "object";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (multipleFound)
|
||||
img = null;
|
||||
|
||||
return img;
|
||||
}
|
||||
|
||||
/*
|
||||
* Takes care of XMLBase and <base>
|
||||
* url is the possibly relative url.
|
||||
* node is the node where the url was given (needed for XMLBase)
|
||||
*
|
||||
* This function is called in many places as a workaround for bug 72524
|
||||
* Once bug 72522 is fixed this code should use the Node.baseURI attribute
|
||||
*
|
||||
* for node==null or url=="", empty string is returned
|
||||
*/
|
||||
function getAbsoluteURL(url, node)
|
||||
{
|
||||
if (!url || !node)
|
||||
return "";
|
||||
|
||||
var urlArr = new Array(url);
|
||||
var doc = node.ownerDocument;
|
||||
|
||||
if (node.nodeType == Node.ATTRIBUTE_NODE)
|
||||
node = node.ownerElement;
|
||||
|
||||
while (node && node.nodeType == Node.ELEMENT_NODE) {
|
||||
if (node.getAttributeNS(XMLNS, "base") != "")
|
||||
urlArr.unshift(node.getAttributeNS(XMLNS, "base"));
|
||||
|
||||
node = node.parentNode;
|
||||
}
|
||||
|
||||
// Look for a <base>.
|
||||
var baseTags = getHTMLElements(doc,"base");
|
||||
if (baseTags && baseTags.length) {
|
||||
urlArr.unshift(baseTags[baseTags.length - 1].getAttribute("href"));
|
||||
}
|
||||
|
||||
// resolve everything from bottom up, starting with document location
|
||||
var ioService = Components.classes["@mozilla.org/network/io-service;1"]
|
||||
.getService(Components.interfaces.nsIIOService);
|
||||
var URL = ioService.newURI(doc.location.href, null, null);
|
||||
for (var i=0; i<urlArr.length; i++) {
|
||||
URL.spec = URL.resolve(urlArr[i]);
|
||||
}
|
||||
|
||||
return URL.spec;
|
||||
}
|
||||
|
||||
function getHTMLElements(node, name)
|
||||
{
|
||||
if (htmlMode)
|
||||
return node.getElementsByTagName(name);
|
||||
return node.getElementsByTagNameNS(XHTMLNS, name);
|
||||
}
|
||||
|
||||
// name should be in lower case
|
||||
function isHTMLElement(node, name)
|
||||
{
|
||||
if (node.nodeType != Node.ELEMENT_NODE)
|
||||
return false;
|
||||
|
||||
if (htmlMode)
|
||||
return !name || node.localName.toLowerCase() == name;
|
||||
|
||||
return (!name || node.localName == name) && node.namespaceURI == XHTMLNS;
|
||||
}
|
||||
|
||||
// This function coded according to the spec at:
|
||||
// http://www.bath.ac.uk/~py8ieh/internet/discussion/metadata.txt
|
||||
function convertLanguageCode(abbr)
|
||||
{
|
||||
if (!abbr) return "";
|
||||
var result;
|
||||
var tokens = abbr.split("-");
|
||||
|
||||
if (tokens[0] === "x" || tokens[0] === "i")
|
||||
{
|
||||
// x and i prefixes mean unofficial ones. So we upper-case the first
|
||||
// word and leave the rest.
|
||||
tokens.shift();
|
||||
|
||||
if (tokens[0])
|
||||
{
|
||||
// Upper-case first letter
|
||||
result = tokens[0].substr(0, 1).toUpperCase() + tokens[0].substr(1);
|
||||
tokens.shift();
|
||||
|
||||
if (tokens[0])
|
||||
{
|
||||
// Add on the rest as space-separated strings inside the brackets
|
||||
result += " (" + tokens.join(" ") + ")";
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Otherwise we treat the first as a lang, the second as a region
|
||||
// and the rest as strings.
|
||||
try
|
||||
{
|
||||
result = gLangBundle.getString(tokens[0]);
|
||||
}
|
||||
catch (e)
|
||||
{
|
||||
// Language not present in lang bundle
|
||||
result = tokens[0];
|
||||
}
|
||||
|
||||
tokens.shift();
|
||||
|
||||
if (tokens[0])
|
||||
{
|
||||
try
|
||||
{
|
||||
// We don't add it on to the result immediately
|
||||
// because we want to get the spacing right.
|
||||
tokens[0] = gRegionBundle.getString(tokens[0].toLowerCase());
|
||||
}
|
||||
catch (e)
|
||||
{
|
||||
// Region not present in region bundle
|
||||
}
|
||||
|
||||
result += " (" + tokens.join(" ") + ")";
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
@@ -1,213 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<!--
|
||||
- The contents of this file are subject to the Mozilla Public
|
||||
- License Version 1.1 (the "License"); you may not use this file
|
||||
- except in compliance with the License. You may obtain a copy of
|
||||
- the License at http://www.mozilla.org/MPL/
|
||||
-
|
||||
- Software distributed under the License is distributed on an "AS
|
||||
- IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
- implied. See the License for the specific language governing
|
||||
- rights and limitations under the License.
|
||||
-
|
||||
- The Original Code is this file as it was released on
|
||||
- January 3, 2001.
|
||||
-
|
||||
- The Initial Developer of the Original Code is Jonas Sicking.
|
||||
- Portions created by Jonas Sicking are Copyright (C) 2000
|
||||
- Jonas Sicking. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Jonas Sicking <sicking@bigfoot.com> (Original Author)
|
||||
- Gervase Markham <gerv@gerv.net>
|
||||
-
|
||||
- Alternatively, the contents of this file may be used under the
|
||||
- terms of the GNU General Public License Version 2 or later (the
|
||||
- "GPL"), in which case the provisions of the GPL are applicable
|
||||
- instead of those above. If you wish to allow use of your
|
||||
- version of this file only under the terms of the GPL and not to
|
||||
- allow others to use your version of this file under the MPL,
|
||||
- indicate your decision by deleting the provisions above and
|
||||
- replace them with the notice and other provisions required by
|
||||
- the GPL. If you do not delete the provisions above, a recipient
|
||||
- may use your version of this file under either the MPL or the
|
||||
- GPL.
|
||||
-->
|
||||
|
||||
<?xml-stylesheet href="chrome://navigator/skin/" type="text/css"?>
|
||||
|
||||
<?xul-overlay href="chrome://global/content/dialogOverlay.xul"?>
|
||||
|
||||
<!DOCTYPE window [
|
||||
<!ENTITY % metadataDTD SYSTEM "chrome://browser/locale/metadata.dtd" >
|
||||
%metadataDTD;
|
||||
]>
|
||||
|
||||
<window id="metadata"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
title="&caption.label;"
|
||||
onload="onLoad()"
|
||||
class="dialog"
|
||||
persist="screenX screenY"
|
||||
screenX="24" screenY="24">
|
||||
|
||||
<script type="application/x-javascript" src="chrome://browser/content/metadata.js"/>
|
||||
|
||||
<stringbundle src="chrome://browser/locale/metadata.properties" id="bundle_metadata"/>
|
||||
<stringbundle src="chrome://global/locale/languageNames.properties" id="bundle_languages"/>
|
||||
<stringbundle src="chrome://global/locale/regionNames.properties" id="bundle_regions"/>
|
||||
|
||||
<label id="no-properties" value="&no-properties.label;"/>
|
||||
|
||||
<groupbox id="link-sec">
|
||||
<caption label="&link-sec.label;"/>
|
||||
<grid>
|
||||
<columns>
|
||||
<column/>
|
||||
<column flex="1"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row id="link-url">
|
||||
<label value="&link-url.label; "/>
|
||||
<hbox>
|
||||
<label id="link-url-text" value="" class="text-link"
|
||||
onclick="openLink(this)"/>
|
||||
<spacer flex="1"/>
|
||||
</hbox>
|
||||
</row>
|
||||
<row id="link-target">
|
||||
<label value="&link-target.label; "/>
|
||||
<label id="link-target-text" value=""/>
|
||||
</row>
|
||||
<row id="link-type">
|
||||
<label value="&link-type.label; "/>
|
||||
<label id="link-type-text" value=""/>
|
||||
</row>
|
||||
<row id="link-lang">
|
||||
<label value="&link-lang.label; "/>
|
||||
<label id="link-lang-text" value=""/>
|
||||
</row>
|
||||
<row id="link-rel">
|
||||
<label value="&link-rel.label; "/>
|
||||
<label id="link-rel-text" value=""/>
|
||||
</row>
|
||||
<row id="link-rev">
|
||||
<label value="&link-rev.label; "/>
|
||||
<label id="link-rev-text" value=""/>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</groupbox>
|
||||
<groupbox id="image-sec">
|
||||
<caption label="&image-sec.label;"/>
|
||||
<grid>
|
||||
<columns>
|
||||
<column/>
|
||||
<column flex="1"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row id="image-url">
|
||||
<label value="&image-url.label; "/>
|
||||
<hbox>
|
||||
<label id="image-url-text" value="" class="text-link"
|
||||
onclick="openLink(this)"/>
|
||||
<spacer flex="1"/>
|
||||
</hbox>
|
||||
</row>
|
||||
<row id="image-width">
|
||||
<label value="&image-width.label; "/>
|
||||
<hbox>
|
||||
<label id="image-width-text" value=""/>
|
||||
<label value=" &image-pixels.label;"/>
|
||||
</hbox>
|
||||
</row>
|
||||
<row id="image-height">
|
||||
<label value="&image-height.label; "/>
|
||||
<hbox>
|
||||
<label id="image-height-text" value=""/>
|
||||
<label value=" &image-pixels.label;"/>
|
||||
</hbox>
|
||||
</row>
|
||||
<row id="image-desc">
|
||||
<label value="&image-desc.label; "/>
|
||||
<hbox>
|
||||
<label id="image-desc-text" value="" class="text-link"
|
||||
onclick="openLink(this)"/>
|
||||
<spacer flex="1"/>
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</groupbox>
|
||||
<groupbox id="insdel-sec">
|
||||
<caption label="&insdel-sec.label;"/>
|
||||
<grid>
|
||||
<columns>
|
||||
<column/>
|
||||
<column flex="1"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row id="insdel-cite">
|
||||
<label value="&insdel-cite.label; "/>
|
||||
<hbox>
|
||||
<label id="insdel-cite-text" value="" class="text-link"
|
||||
onclick="openLink(this)"/>
|
||||
<spacer flex="1"/>
|
||||
</hbox>
|
||||
</row>
|
||||
<row id="insdel-date">
|
||||
<label value="&insdel-date.label; "/>
|
||||
<label id="insdel-date-text" value=""/>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</groupbox>
|
||||
<groupbox id="quote-sec">
|
||||
<caption label=""e-sec.label;"/>
|
||||
<grid>
|
||||
<columns>
|
||||
<column/>
|
||||
<column flex="1"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row id="quote-cite">
|
||||
<label value=""e-cite.label; "/>
|
||||
<hbox>
|
||||
<label id="quote-cite-text" value="" class="text-link"
|
||||
onclick="openLink(this)"/>
|
||||
<spacer flex="1"/>
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</groupbox>
|
||||
<groupbox id="misc-sec">
|
||||
<caption label="&misc-sec.label;"/>
|
||||
<grid>
|
||||
<columns>
|
||||
<column/>
|
||||
<column flex="1"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row id="misc-lang">
|
||||
<label value="&misc-lang.label; "/>
|
||||
<label id="misc-lang-text" value=""/>
|
||||
</row>
|
||||
<row id="misc-title">
|
||||
<label value="&misc-title.label; "/>
|
||||
<hbox>
|
||||
<description id="misc-title-text" width="100%" style="margin: 0px;"/>
|
||||
</hbox>
|
||||
</row>
|
||||
<row id="misc-tblsummary">
|
||||
<label value="&misc-tblsummary.label; "/>
|
||||
<label id="misc-tblsummary-text" value=""/>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</groupbox>
|
||||
|
||||
<spacer flex="1"/>
|
||||
|
||||
</window>
|
||||
@@ -1,178 +0,0 @@
|
||||
<?xml version="1.0"?> <!-- -*- Mode: HTML -*- -->
|
||||
<?xml-stylesheet href="chrome://navigator/skin/" type="text/css"?>
|
||||
|
||||
<!--
|
||||
- The contents of this file are subject to the Mozilla Public
|
||||
- License Version 1.1 (the "License"); you may not use this file
|
||||
- except in compliance with the License. You may obtain a copy of
|
||||
- the License at http://www.mozilla.org/MPL/
|
||||
-
|
||||
- Software distributed under the License is distributed on an "AS
|
||||
- IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
- implied. See the License for the specific language governing
|
||||
- rights and limitations under the License.
|
||||
-
|
||||
- The Original Code is mozilla.org viewsource frontend.
|
||||
-
|
||||
- The Initial Developer of the Original Code is Netscape
|
||||
- Communications Corporation. Portions created by Netscape are
|
||||
- Copyright (C) 2000 Netscape Communications Corporation. All
|
||||
- Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Doron Rosenberg (doronr@naboonline.com)
|
||||
-->
|
||||
|
||||
<?xul-overlay href="chrome://browser/content/navigatorOverlay.xul"?>
|
||||
|
||||
<!DOCTYPE window [
|
||||
<!ENTITY % brandDTD SYSTEM "chrome://global/locale/brand.dtd" >
|
||||
%brandDTD;
|
||||
<!ENTITY % sourceDTD SYSTEM "chrome://browser/locale/viewSource.dtd" >
|
||||
%sourceDTD;
|
||||
<!ENTITY % navigatorDTD SYSTEM "chrome://browser/locale/navigator.dtd" >
|
||||
%navigatorDTD;
|
||||
<!ENTITY % contentAreaCommandsDTD SYSTEM "chrome://communicator/locale/contentAreaCommands.dtd" >
|
||||
%contentAreaCommandsDTD;
|
||||
]>
|
||||
|
||||
<window id="main-window"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
onload="onLoadViewSource();"
|
||||
contenttitlesetting="true"
|
||||
title="&mainWindow.title;"
|
||||
titlemodifier="&mainWindow.titlemodifier;"
|
||||
titlepreface="&mainWindow.preface;"
|
||||
titlemenuseparator ="&mainWindow.titlemodifierseparator;"
|
||||
windowtype="navigator:view-source"
|
||||
width="640" height="480"
|
||||
screenX="10" screenY="10"
|
||||
persist="screenX screenY width height sizemode">
|
||||
|
||||
<script type="application/x-javascript" src="chrome://global/content/nsJSSupportsUtils.js"/>
|
||||
<script type="application/x-javascript" src="chrome://global/content/nsJSComponentManager.js"/>
|
||||
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
|
||||
<script type="application/x-javascript" src="chrome://global/content/nsDragAndDrop.js"/>
|
||||
<script type="application/x-javascript" src="chrome://communicator/content/contentAreaDD.js"/>
|
||||
<script type="application/x-javascript" src="chrome://browser/content/browser.js"/>
|
||||
<script type="application/x-javascript" src="chrome://browser/content/viewsource.js"/>
|
||||
<script type="application/x-javascript" src="chrome://communicator/content/findUtils.js"/>
|
||||
<script type="application/x-javascript" src="chrome://communicator/content/contentAreaUtils.js"/>
|
||||
|
||||
<commandset id="commands">
|
||||
<commandset id="globalEditMenuItems"/>
|
||||
<commandset id="selectEditMenuItems"/>
|
||||
<commandset id="clipboardEditMenuItems"/>
|
||||
<commandset id="viewSourceMenuItems">
|
||||
<command id="cmdWrapLongLines" oncommand="wrapLongLines()"/>
|
||||
<command id="cmd_close" oncommand="ViewSourceClose()"/>
|
||||
<command id="cmd_savePage" oncommand="ViewSourceSavePage();"/>
|
||||
</commandset>
|
||||
</commandset>
|
||||
|
||||
<stringbundleset id="stringbundleset">
|
||||
<stringbundle id="findBundle" src="chrome://global/locale/finddialog.properties"/>
|
||||
</stringbundleset>
|
||||
|
||||
<!-- keys are appended from the overlay -->
|
||||
<keyset id="viewSourceKeys">
|
||||
<!-- File Menu -->
|
||||
<key id="key_newNavigator"/>
|
||||
<key id="key_newBlankPage"/>
|
||||
<key id="key_savePage" key="&savePageCmd.commandkey;" command="cmd_savePage" modifiers="accel"/>
|
||||
<key id="key_editPage" key="&editPageCmd.commandkey;" command="Browser:EditPage" modifiers="accel"/>
|
||||
<key id="printKb" key="&printCmd.commandkey;" command="Browser:Print" modifiers="accel"/>
|
||||
<key id="key_close"/>
|
||||
|
||||
<!-- Edit Menu -->
|
||||
<key id="key_undo"/>
|
||||
<key id="key_redo"/>
|
||||
<key id="key_cut"/>
|
||||
<key id="key_copy"/>
|
||||
<key id="key_paste"/>
|
||||
<key id="key_delete"/>
|
||||
<key id="key_selectAll"/>
|
||||
<key id="key_find" key="&findOnCmd.commandkey;" command="Browser:Find" modifiers="accel"/>
|
||||
<key id="key_findAgain" key="&findAgainCmd.commandkey;" command="Browser:FindAgain" modifiers="accel"/>
|
||||
<keyset id="viewZoomKeys"/>
|
||||
</keyset>
|
||||
|
||||
<!-- context menu -->
|
||||
<popupset id="viewSourceContextSet">
|
||||
<popup id="viewSourceContextMenu">
|
||||
<menuitem label="&findNextCmd.label;" accesskey="&findNextCmd.accesskey;" command="Browser:FindAgain"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="menu_copy_cm" label="©Cmd.label;" accesskey="©Cmd.accesskey;" command="cmd_copy"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="menu_selectAll_cm" label="&selectAllCmd.label;" accesskey="&selectAllCmd.accesskey;" command="cmd_selectAll"/>
|
||||
</popup>
|
||||
</popupset>
|
||||
|
||||
<!-- Menu -->
|
||||
<toolbox>
|
||||
<menubar id="zmain-menubar">
|
||||
<menu id="menu_File">
|
||||
<menupopup id="filemenu-popup">
|
||||
<menuitem label="&browserCmd.label;" accesskey="&browserCmd.accesskey;" key="key_newNavigator" command="cmd_newNavigator"/>
|
||||
<menu id="menu_New">
|
||||
<menupopup id="menu_NewPopup">
|
||||
<menuitem id="menu_newNavigator" command="cmd_newNavigator"/>
|
||||
<menuitem id="menu_newEditor" command="cmd_newEditor"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menuseparator/>
|
||||
|
||||
<menuitem id="menu_close"/>
|
||||
<menuitem label="&savePageCmd.label;" accesskey="&savePageCmd.accesskey;" key="key_savePage" command="cmd_savePage"/>
|
||||
<menuitem id="savepage" label="&saveFrameCmd.label;" accesskey="&saveFrameCmd.accesskey;" oncommand="ViewSourceSavePage();" hidden="true"/>
|
||||
<menuseparator/>
|
||||
<menuitem label="&editPageCmd.label;" accesskey="&editPageCmd.accesskey;" key="key_editPage" oncommand="ViewSourceEditPage();"/>
|
||||
|
||||
<menuseparator/>
|
||||
<menuitem label="&printCmd.label;" accesskey="&printCmd.accesskey;" key="printKb" command="Browser:Print"/>
|
||||
<!-- <menuitem accesskey="&printPreviewCmd.accesskey;" observes="Browser:PrintPreview"/> -->
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menu id="menu_Edit">
|
||||
<menupopup>
|
||||
<menuitem id="menu_undo"/>
|
||||
<menuitem id="menu_redo"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="menu_cut"/>
|
||||
<menuitem id="menu_copy"/>
|
||||
<menuitem id="menu_paste"/>
|
||||
<menuitem id="menu_delete"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="menu_selectAll"/>
|
||||
<menuseparator />
|
||||
<menuitem id="menu_find" label="&findOnCmd.label;" accesskey="&findOnCmd.accesskey;" key="key_find" command="Browser:Find"/>
|
||||
<menuitem id="menu_findAgain" label="&findAgainCmd.label;" accesskey="&findAgainCmd.accesskey;" key="key_findAgain" command="Browser:FindAgain"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menu id="menu_view" accesskey="&viewMenu.accesskey;" label="&viewMenu.label;">
|
||||
<menupopup>
|
||||
<menu id="menu_textZoom"/>
|
||||
<menuseparator/>
|
||||
<!-- <menuitem accesskey="&pageInfoCmd.accesskey;" label="&pageInfoCmd.label;" key="key_viewInfo" observes="View:PageInfo"/>
|
||||
<menuseparator id="file_moduleSeparator"/>-->
|
||||
<menu id = "charsetMenu"/>
|
||||
<menuitem id="menu_wrapLongLines" label="&menu_wrapLongLines.title;" type="checkbox" command="cmdWrapLongLines"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menu id="menu_Help"/>
|
||||
</menubar>
|
||||
</toolbox>
|
||||
|
||||
<vbox id="appcontent" flex="1"
|
||||
ondragdrop="nsDragAndDrop.drop(event, contentAreaDNDObserver);">
|
||||
|
||||
<browser id="content" type="content-primary" name="content" src="about:blank" flex="1"
|
||||
context="viewSourceContextMenu"/>
|
||||
|
||||
</vbox>
|
||||
|
||||
</window>
|
||||
@@ -1,143 +0,0 @@
|
||||
/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
* The contents of this file are subject to the Mozilla Public
|
||||
* License Version 1.1 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is mozilla.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Doron Rosenberg (doronr@naboonline.com)
|
||||
*/
|
||||
|
||||
var gBrowser = null;
|
||||
var appCore = null;
|
||||
var gPrefs = null;
|
||||
|
||||
try {
|
||||
var prefService = Components.classes["@mozilla.org/preferences-service;1"]
|
||||
.getService(Components.interfaces.nsIPrefService);
|
||||
gPrefs = prefService.getBranch(null);
|
||||
} catch (ex) {
|
||||
}
|
||||
|
||||
function onLoadViewSource()
|
||||
{
|
||||
viewSource(window.arguments[0]);
|
||||
window._content.focus();
|
||||
}
|
||||
|
||||
function getBrowser()
|
||||
{
|
||||
if (!gBrowser)
|
||||
gBrowser = document.getElementById("content");
|
||||
return gBrowser;
|
||||
}
|
||||
|
||||
function viewSource(url)
|
||||
{
|
||||
if (!url)
|
||||
return false; // throw Components.results.NS_ERROR_FAILURE;
|
||||
|
||||
try {
|
||||
appCore = Components.classes["@mozilla.org/appshell/component/browser/instance;1"]
|
||||
.createInstance(Components.interfaces.nsIBrowserInstance);
|
||||
|
||||
// Initialize browser instance..
|
||||
appCore.setWebShellWindow(window);
|
||||
} catch(ex) {
|
||||
// Give up.
|
||||
window.close();
|
||||
return false;
|
||||
}
|
||||
|
||||
try {
|
||||
if ("arguments" in window && window.arguments.length >= 2) {
|
||||
if (window.arguments[1].indexOf('charset=') != -1) {
|
||||
var arrayArgComponents = window.arguments[1].split('=');
|
||||
if (arrayArgComponents) {
|
||||
//we should "inherit" the charset menu setting in a new window
|
||||
getMarkupDocumentViewer().defaultCharacterSet = arrayArgComponents[1];
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch(ex) {
|
||||
}
|
||||
|
||||
var loadFlags = Components.interfaces.nsIWebNavigation.LOAD_FLAGS_NONE;
|
||||
var viewSrcUrl = "view-source:" + url;
|
||||
getBrowser().webNavigation.loadURI(viewSrcUrl, loadFlags, null, null, null);
|
||||
|
||||
//check the view_source.wrap_long_lines pref and set the menuitem's checked attribute accordingly
|
||||
if (gPrefs) {
|
||||
try {
|
||||
var wraplonglinesPrefValue = gPrefs.getBoolPref("view_source.wrap_long_lines");
|
||||
|
||||
if (wraplonglinesPrefValue)
|
||||
document.getElementById('menu_wrapLongLines').setAttribute("checked", "true");
|
||||
} catch (ex) {
|
||||
}
|
||||
}
|
||||
|
||||
window._content.focus();
|
||||
return true;
|
||||
}
|
||||
|
||||
function ViewSourceClose()
|
||||
{
|
||||
window.close();
|
||||
}
|
||||
|
||||
// Strips the |view-source:| for editPage()
|
||||
function ViewSourceEditPage()
|
||||
{
|
||||
var url = window._content.location.href;
|
||||
url = url.substring(12,url.length);
|
||||
editPage(url,window, false);
|
||||
}
|
||||
|
||||
// Strips the |view-source:| for saveURL()
|
||||
function ViewSourceSavePage()
|
||||
{
|
||||
var url = window._content.document.location.href;
|
||||
url = url.substring(12,url.length);
|
||||
|
||||
saveURL(url, null, "SaveLinkTitle");
|
||||
}
|
||||
|
||||
//function to toggle long-line wrapping and set the view_source.wrap_long_lines
|
||||
//pref to persist the last state
|
||||
function wrapLongLines()
|
||||
{
|
||||
//get the first pre tag which surrounds the entire viewsource content
|
||||
var myWrap = window._content.document.getElementById('viewsource');
|
||||
|
||||
if (myWrap.className == '')
|
||||
myWrap.className = 'wrap';
|
||||
else myWrap.className = '';
|
||||
|
||||
//since multiple viewsource windows are possible, another window could have
|
||||
//affected the pref, so instead of determining the new pref value via the current
|
||||
//pref value, we use myWrap.className
|
||||
if (gPrefs){
|
||||
try {
|
||||
if (myWrap.className == '') {
|
||||
gPrefs.setBoolPref("view_source.wrap_long_lines", false);
|
||||
}
|
||||
else {
|
||||
gPrefs.setBoolPref("view_source.wrap_long_lines", true);
|
||||
}
|
||||
} catch (ex) {
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5,25 +5,12 @@ browser.jar:
|
||||
content/browser/browser.xul (content/browser.xul)
|
||||
content/browser/browser.js (content/browser.js)
|
||||
content/browser/urlbarBindings.xml (content/urlbarBindings.xml)
|
||||
content/browser/metadata.xul (content/metadata.xul)
|
||||
content/browser/metadata.js (content/metadata.js)
|
||||
content/browser/turboDialog.xul (content/turboDialog.xul)
|
||||
content/browser/viewsource.js (content/viewsource.js)
|
||||
content/browser/viewSource.xul (content/viewSource.xul)
|
||||
content/browser/utilityOverlay.js (content/utilityOverlay.js)
|
||||
content/browser/findUtils.js (content/findUtils.js)
|
||||
classic.jar:
|
||||
skin/classic/browser/browser.css (skin/browser.css)
|
||||
skin/classic/browser/buttons.gif (skin/buttons.gif)
|
||||
skin/classic/browser/contents.rdf (skin/contents.rdf)
|
||||
en-US.jar:
|
||||
locale/en-US/browser/contents.rdf (locale/contents.rdf)
|
||||
locale/en-US/browser/viewSource.dtd (locale/viewSource.dtd)
|
||||
locale/en-US/browser/pageInfo.dtd (locale/pageInfo.dtd)
|
||||
locale/en-US/browser/pageInfo.properties (locale/pageInfo.properties)
|
||||
locale/en-US/browser/browser.dtd (locale/browser.dtd)
|
||||
locale/en-US/browser/navigator.properties (locale/navigator.properties)
|
||||
locale/en-US/browser/metadata.dtd (locale/metadata.dtd)
|
||||
locale/en-US/browser/metadata.properties (locale/metadata.properties)
|
||||
locale/en-US/browser/turboDialog.dtd (locale/turboDialog.dtd)
|
||||
locale/en-US/browser/turboMenu.properties (locale/turboMenu.properties)
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
<!ENTITY no-properties.label "No properties set.">
|
||||
|
||||
<!ENTITY caption.label "Element Properties">
|
||||
<!ENTITY image-sec.label "Image Properties">
|
||||
<!ENTITY image-url.label "Location:">
|
||||
<!ENTITY image-desc.label "Description:">
|
||||
<!ENTITY image-width.label "Width:">
|
||||
<!ENTITY image-height.label "Height:">
|
||||
<!ENTITY image-pixels.label "pixels">
|
||||
<!ENTITY insdel-sec.label "Insert/Delete Properties">
|
||||
<!ENTITY insdel-cite.label "Info:">
|
||||
<!ENTITY insdel-date.label "Date:">
|
||||
<!ENTITY link-sec.label "Link Properties">
|
||||
<!ENTITY link-url.label "Address:">
|
||||
<!ENTITY link-target.label "Will open in:">
|
||||
<!ENTITY link-type.label "Target type:">
|
||||
<!ENTITY link-lang.label "Target language:">
|
||||
<!ENTITY link-rel.label "Relation:">
|
||||
<!ENTITY link-rev.label "Reversed relation:">
|
||||
<!ENTITY misc-sec.label "Miscellaneous Properties">
|
||||
<!ENTITY misc-lang.label "Text language:">
|
||||
<!ENTITY misc-title.label "Title:">
|
||||
<!ENTITY misc-tblsummary.label "Table summary:">
|
||||
<!ENTITY quote-sec.label "Quote Properties">
|
||||
<!ENTITY quote-cite.label "Info:">
|
||||
@@ -1,6 +0,0 @@
|
||||
sameWindowText=Same window
|
||||
newWindowText=New window
|
||||
parentFrameText=Parent frame
|
||||
sameFrameText=Same frame
|
||||
embeddedText=Embedded
|
||||
unableToShowProps=No properties available.
|
||||
@@ -1,107 +0,0 @@
|
||||
<!-- ***** BEGIN LICENSE BLOCK *****
|
||||
- Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
-
|
||||
- The contents of this file are subject to the Mozilla Public License Version
|
||||
- 1.1 (the "License"); you may not use this file except in compliance with
|
||||
- the License. You may obtain a copy of the License at
|
||||
- http://www.mozilla.org/MPL/
|
||||
-
|
||||
- Software distributed under the License is distributed on an "AS IS" basis,
|
||||
- WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
- for the specific language governing rights and limitations under the
|
||||
- License.
|
||||
-
|
||||
- The Original Code is Mozilla Communicator client code.
|
||||
-
|
||||
- The Initial Developer of the Original Code is Daniel Brooks.
|
||||
- Portions created by the Initial Developer are Copyright (C) 2001
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
-
|
||||
- Alternatively, the contents of this file may be used under the terms of
|
||||
- either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
- the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
- in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
- of those above. If you wish to allow use of your version of this file only
|
||||
- under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
- use your version of this file under the terms of the MPL, indicate your
|
||||
- decision by deleting the provisions above and replace them with the notice
|
||||
- and other provisions required by the LGPL or the GPL. If you do not delete
|
||||
- the provisions above, a recipient may use your version of this file under
|
||||
- the terms of any one of the MPL, the GPL or the LGPL.
|
||||
-
|
||||
- ***** END LICENSE BLOCK ***** -->
|
||||
|
||||
<!ENTITY preface "Info for: ">
|
||||
|
||||
<!ENTITY title "Page Info">
|
||||
<!ENTITY description "Information about the current page">
|
||||
|
||||
<!ENTITY unknown "Unknown">
|
||||
<!ENTITY closeWindow "w">
|
||||
|
||||
<!ENTITY generalTab "General">
|
||||
<!ENTITY generalAccesskey "g">
|
||||
<!ENTITY generalTitle "Title:">
|
||||
<!ENTITY generalURL "URL:">
|
||||
<!ENTITY generalMode "Render Mode:">
|
||||
<!ENTITY generalType "Type:">
|
||||
<!ENTITY generalSize "Size:">
|
||||
<!ENTITY generalSource "Source:">
|
||||
<!ENTITY generalSent "Sent:">
|
||||
<!ENTITY generalModified "Modified:">
|
||||
<!ENTITY generalExpires "Expires:">
|
||||
<!ENTITY generalEncoding "Encoding:">
|
||||
<!ENTITY generalMeta "Meta:">
|
||||
<!ENTITY generalMetaName "Name:">
|
||||
<!ENTITY generalMetaContent "Content:">
|
||||
|
||||
<!ENTITY formsTab "Forms">
|
||||
<!ENTITY formsAccesskey "f">
|
||||
<!ENTITY formAction "Form Action">
|
||||
<!ENTITY formMethod "Method">
|
||||
<!ENTITY formName "Name">
|
||||
<!ENTITY formNo "No.">
|
||||
<!ENTITY formName "Name">
|
||||
<!ENTITY formAction "Action">
|
||||
<!ENTITY formMethod "Method">
|
||||
<!ENTITY formEncoding "Encoding:">
|
||||
<!ENTITY formTarget "Target:">
|
||||
<!ENTITY formFields "Fields:">
|
||||
<!ENTITY formLabel "Label">
|
||||
<!ENTITY formFName "Field Name">
|
||||
<!ENTITY formType "Type">
|
||||
<!ENTITY formCValue "Current Value">
|
||||
|
||||
<!ENTITY linksTab "Links">
|
||||
<!ENTITY linksAccesskey "l">
|
||||
<!ENTITY linkNo "No.">
|
||||
<!ENTITY linkName "Name">
|
||||
<!ENTITY linkAddress "Address">
|
||||
<!ENTITY linkType "Type">
|
||||
|
||||
<!ENTITY mediaTab "Media">
|
||||
<!ENTITY mediaAccesskey "i">
|
||||
<!ENTITY mediaHeader "Images on this page">
|
||||
<!ENTITY mediaURL "URL:">
|
||||
<!ENTITY mediaBase "Base URL:">
|
||||
<!ENTITY mediaAlt "Alternate Text:">
|
||||
<!ENTITY mediaNo "No.">
|
||||
<!ENTITY mediaName "Name">
|
||||
<!ENTITY mediaAddress "Address">
|
||||
<!ENTITY mediaType "Type">
|
||||
<!ENTITY mediaPlugin "Plugin:">
|
||||
<!ENTITY mediaCharset "Encoding:">
|
||||
<!ENTITY mediaDimensions "Dimensions:">
|
||||
<!ENTITY mediaEncryption "Encryption:">
|
||||
<!ENTITY mediaTitle "title Attribute:">
|
||||
<!ENTITY mediaLongdesc "longdesc Attribute:">
|
||||
<!ENTITY mediaSaveAs "Save As...">
|
||||
<!ENTITY mediaSaveAsAccesskey "S">
|
||||
|
||||
<!ENTITY framesTab "Frames">
|
||||
<!ENTITY framesAccesskey "r">
|
||||
<!ENTITY frameName "Name">
|
||||
<!ENTITY frameAddress "Address">
|
||||
<!ENTITY frameType "Type">
|
||||
@@ -1,66 +0,0 @@
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and imitations under the License.
|
||||
#
|
||||
# The Original Code is mozilla.org code.
|
||||
#
|
||||
# The Initial Developer of the Original Code is International
|
||||
# Business Machines Corporation. Portions created by IBM
|
||||
# Corporation are Copyright (C) 2000 International Business
|
||||
# Machines Corporation. All Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Daniel Brooks <db48x@yahoo.com>
|
||||
# Mike Kowalski <mikejk@ameritech.net>
|
||||
|
||||
|
||||
pageInfo.title=Page Info
|
||||
frameInfo.title=Frame Info
|
||||
|
||||
noPageTitle=Untitled Page
|
||||
pageTitle=%S:
|
||||
unknown=Unknown
|
||||
default=Default
|
||||
notset=Not Specified
|
||||
|
||||
generalNotCached=(not cached)
|
||||
generalNoExpiration=(no expiration set)
|
||||
generalQuirksMode=Compatibility mode.
|
||||
generalStrictMode=Strict standards compliance mode.
|
||||
|
||||
formTitle=Form %S:
|
||||
formUntitled=Unnamed Form:
|
||||
formDefaultTarget=None (opens in same window)
|
||||
formChecked=Checked
|
||||
formUnchecked=Unchecked
|
||||
formPassword=********
|
||||
|
||||
linkAnchor=Anchor
|
||||
linkArea=Area
|
||||
linkSubmission=Form Submission
|
||||
linkSubmit=Submit Query
|
||||
linkRel=Related Link
|
||||
linkStylesheet=Stylesheet
|
||||
linkRev=Reverse Link
|
||||
|
||||
mediaImg=Image
|
||||
mediaApplet=Applet
|
||||
mediaObject=Object
|
||||
mediaEmbed=Embed
|
||||
mediaLink=Icon
|
||||
mediaInput=Input
|
||||
mediaWidth=Width: %Spx
|
||||
mediaHeight=Height: %Spx
|
||||
|
||||
generalNotCached=(not cached)
|
||||
generalDiskCache=Disk Cache
|
||||
generalMemoryCache=Memory Cache
|
||||
generalHTTPCache=HTTP Cache
|
||||
generalFTPCache=FTP Cache
|
||||
@@ -1,4 +0,0 @@
|
||||
<!ENTITY exitWarningMsg.label "Quick Launch is active, so &brandShortName; remains in memory and can be started again quickly. To completely exit, right click on the &brandShortName; icon in the system tray and select Exit.">
|
||||
<!ENTITY exitWarningTitle.label "Quick Launch">
|
||||
<!ENTITY exitWarningCheckbox.label "Don't show me this message again">
|
||||
<!ENTITY exitWarningCheckbox.accesskey "D">
|
||||
@@ -1,6 +0,0 @@
|
||||
Exit=E&xit %S
|
||||
Disable=&Disable Quick Launch
|
||||
DisableDlgMsg=Disabling Quick Launch will increase the time it takes to start %S. To enable it again, open the Edit menu and choose Preferences. Choose the "Advanced" category and check "Enable Quick Launch." Are you sure you want to disable Quick Launch?
|
||||
DisableDlgTitle=%S Quick Launch
|
||||
Navigator=&Navigator
|
||||
Editor=&Composer
|
||||
@@ -1,14 +0,0 @@
|
||||
<!-- extracted from content/viewSource.xul -->
|
||||
|
||||
<!-- LOCALIZATION NOTE (mainWindow.title) : DONT_TRANSLATE -->
|
||||
<!ENTITY mainWindow.title "&brandShortName;">
|
||||
<!-- LOCALIZATION NOTE (mainWindow.titlemodifier) : DONT_TRANSLATE -->
|
||||
<!ENTITY mainWindow.titlemodifier "&brandShortName;">
|
||||
<!-- LOCALIZATION NOTE (mainWindow.titlemodifierseparator) : DONT_TRANSLATE -->
|
||||
<!ENTITY mainWindow.titlemodifierseparator " - ">
|
||||
<!ENTITY mainWindow.preface "Source of: ">
|
||||
|
||||
<!ENTITY menu_wrapLongLines.title "Wrap Long Lines">
|
||||
|
||||
<!ENTITY findNextCmd.label "Find Next">
|
||||
<!ENTITY findNextCmd.accesskey "n">
|
||||
Reference in New Issue
Block a user