Merge.
|
@ -88,6 +88,7 @@ class nsDocAccessible : public nsHyperTextAccessibleWrap,
|
|||
|
||||
// ----- nsIScrollPositionListener ---------------------------
|
||||
NS_IMETHOD ScrollPositionWillChange(nsIScrollableView *aView, nscoord aX, nscoord aY);
|
||||
virtual void ViewPositionDidChange(nsIScrollableView* aScrollable) {}
|
||||
NS_IMETHOD ScrollPositionDidChange(nsIScrollableView *aView, nscoord aX, nscoord aY);
|
||||
|
||||
// nsIDocumentObserver
|
||||
|
|
|
@ -74,9 +74,7 @@ var gCharsetMenu = null;
|
|||
var gLastBrowserCharset = null;
|
||||
var gPrevCharset = null;
|
||||
var gProxyFavIcon = null;
|
||||
var gIsLoadingBlank = false;
|
||||
var gLastValidURLStr = "";
|
||||
var gMustLoadSidebar = false;
|
||||
var gProgressCollapseTimer = null;
|
||||
var appCore = null;
|
||||
var gSidebarCommand = "";
|
||||
|
@ -670,8 +668,7 @@ const gXPInstallObserver = {
|
|||
}
|
||||
};
|
||||
|
||||
function BrowserStartup()
|
||||
{
|
||||
function BrowserStartup() {
|
||||
var uriToLoad = null;
|
||||
|
||||
// window.arguments[0]: URI to load (string), or an nsISupportsArray of
|
||||
|
@ -683,7 +680,8 @@ function BrowserStartup()
|
|||
if ("arguments" in window && window.arguments[0])
|
||||
uriToLoad = window.arguments[0];
|
||||
|
||||
gIsLoadingBlank = uriToLoad == "about:blank";
|
||||
var isLoadingBlank = uriToLoad == "about:blank";
|
||||
var mustLoadSidebar = false;
|
||||
|
||||
prepareForStartup();
|
||||
|
||||
|
@ -691,12 +689,12 @@ function BrowserStartup()
|
|||
appCore.startPageCycler();
|
||||
#else
|
||||
# only load url passed in when we're not page cycling
|
||||
if (uriToLoad && !gIsLoadingBlank) {
|
||||
if (uriToLoad instanceof Components.interfaces.nsISupportsArray) {
|
||||
var count = uriToLoad.Count();
|
||||
var specs = [];
|
||||
for (var i = 0; i < count; i++) {
|
||||
var urisstring = uriToLoad.GetElementAt(i).QueryInterface(Components.interfaces.nsISupportsString);
|
||||
if (uriToLoad && !isLoadingBlank) {
|
||||
if (uriToLoad instanceof Ci.nsISupportsArray) {
|
||||
let count = uriToLoad.Count();
|
||||
let specs = [];
|
||||
for (let i = 0; i < count; i++) {
|
||||
let urisstring = uriToLoad.GetElementAt(i).QueryInterface(Ci.nsISupportsString);
|
||||
specs.push(urisstring.data);
|
||||
}
|
||||
|
||||
|
@ -717,47 +715,44 @@ function BrowserStartup()
|
|||
}
|
||||
#endif
|
||||
|
||||
var sidebarSplitter;
|
||||
if (window.opener && !window.opener.closed) {
|
||||
var openerFindBar = window.opener.gFindBar;
|
||||
let openerFindBar = window.opener.gFindBar;
|
||||
if (openerFindBar && !openerFindBar.hidden &&
|
||||
openerFindBar.findMode == gFindBar.FIND_NORMAL)
|
||||
gFindBar.open();
|
||||
|
||||
var openerSidebarBox = window.opener.document.getElementById("sidebar-box");
|
||||
let openerSidebarBox = window.opener.document.getElementById("sidebar-box");
|
||||
// If the opener had a sidebar, open the same sidebar in our window.
|
||||
// The opener can be the hidden window too, if we're coming from the state
|
||||
// where no windows are open, and the hidden window has no sidebar box.
|
||||
if (openerSidebarBox && !openerSidebarBox.hidden) {
|
||||
var sidebarBox = document.getElementById("sidebar-box");
|
||||
var sidebarTitle = document.getElementById("sidebar-title");
|
||||
let sidebarBox = document.getElementById("sidebar-box");
|
||||
let sidebarTitle = document.getElementById("sidebar-title");
|
||||
sidebarTitle.setAttribute("value", window.opener.document.getElementById("sidebar-title").getAttribute("value"));
|
||||
sidebarBox.setAttribute("width", openerSidebarBox.boxObject.width);
|
||||
var sidebarCmd = openerSidebarBox.getAttribute("sidebarcommand");
|
||||
let sidebarCmd = openerSidebarBox.getAttribute("sidebarcommand");
|
||||
sidebarBox.setAttribute("sidebarcommand", sidebarCmd);
|
||||
// Note: we're setting 'src' on sidebarBox, which is a <vbox>, not on the
|
||||
// <browser id="sidebar">. This lets us delay the actual load until
|
||||
// delayedStartup().
|
||||
sidebarBox.setAttribute("src", window.opener.document.getElementById("sidebar").getAttribute("src"));
|
||||
gMustLoadSidebar = true;
|
||||
mustLoadSidebar = true;
|
||||
|
||||
sidebarBox.hidden = false;
|
||||
sidebarSplitter = document.getElementById("sidebar-splitter");
|
||||
sidebarSplitter.hidden = false;
|
||||
document.getElementById("sidebar-splitter").hidden = false;
|
||||
document.getElementById(sidebarCmd).setAttribute("checked", "true");
|
||||
}
|
||||
}
|
||||
else {
|
||||
var box = document.getElementById("sidebar-box");
|
||||
let box = document.getElementById("sidebar-box");
|
||||
if (box.hasAttribute("sidebarcommand")) {
|
||||
var commandID = box.getAttribute("sidebarcommand");
|
||||
let commandID = box.getAttribute("sidebarcommand");
|
||||
if (commandID) {
|
||||
var command = document.getElementById(commandID);
|
||||
let command = document.getElementById(commandID);
|
||||
if (command) {
|
||||
gMustLoadSidebar = true;
|
||||
mustLoadSidebar = true;
|
||||
box.hidden = false;
|
||||
sidebarSplitter = document.getElementById("sidebar-splitter");
|
||||
sidebarSplitter.hidden = false;
|
||||
document.getElementById("sidebar-splitter").hidden = false;
|
||||
command.setAttribute("checked", "true");
|
||||
}
|
||||
else {
|
||||
|
@ -772,12 +767,14 @@ function BrowserStartup()
|
|||
|
||||
// Certain kinds of automigration rely on this notification to complete their
|
||||
// tasks BEFORE the browser window is shown.
|
||||
var obs = Components.classes["@mozilla.org/observer-service;1"].getService(Components.interfaces.nsIObserverService);
|
||||
obs.notifyObservers(null, "browser-window-before-show", "");
|
||||
Cc["@mozilla.org/observer-service;1"]
|
||||
.getService(Ci.nsIObserverService)
|
||||
.notifyObservers(null, "browser-window-before-show", "");
|
||||
|
||||
// Set a sane starting width/height for all resolutions on new profiles.
|
||||
if (!document.documentElement.hasAttribute("width")) {
|
||||
var defaultWidth = 994, defaultHeight;
|
||||
let defaultWidth = 994;
|
||||
let defaultHeight;
|
||||
if (screen.availHeight <= 600) {
|
||||
document.documentElement.setAttribute("sizemode", "maximized");
|
||||
defaultWidth = 610;
|
||||
|
@ -800,16 +797,14 @@ function BrowserStartup()
|
|||
}
|
||||
|
||||
if (gURLBar && document.documentElement.getAttribute("chromehidden").indexOf("toolbar") != -1) {
|
||||
|
||||
gURLBar.setAttribute("readonly", "true");
|
||||
gURLBar.setAttribute("enablehistory", "false");
|
||||
}
|
||||
|
||||
setTimeout(delayedStartup, 0);
|
||||
setTimeout(delayedStartup, 0, isLoadingBlank, mustLoadSidebar);
|
||||
}
|
||||
|
||||
function HandleAppCommandEvent(evt)
|
||||
{
|
||||
function HandleAppCommandEvent(evt) {
|
||||
evt.stopPropagation();
|
||||
switch (evt.command) {
|
||||
case "Back":
|
||||
|
@ -838,8 +833,7 @@ function HandleAppCommandEvent(evt)
|
|||
}
|
||||
}
|
||||
|
||||
function prepareForStartup()
|
||||
{
|
||||
function prepareForStartup() {
|
||||
gBrowser.addEventListener("DOMUpdatePageReport", gPopupBlockerObserver.onUpdatePageReport, false);
|
||||
// Note: we need to listen to untrusted events, because the pluginfinder XBL
|
||||
// binding can't fire trusted ones (runs with page privileges).
|
||||
|
@ -916,9 +910,63 @@ function prepareForStartup()
|
|||
gBrowser.addEventListener("DOMLinkAdded", DOMLinkHandler, false);
|
||||
}
|
||||
|
||||
function delayedStartup()
|
||||
function setupGeolocationPrompt()
|
||||
{
|
||||
var os = Components.classes["@mozilla.org/observer-service;1"].getService(Components.interfaces.nsIObserverService);
|
||||
var geolocationService = Cc["@mozilla.org/geolocation/service;1"].getService(Ci.nsIGeolocationService);
|
||||
|
||||
if (geolocationService.prompt)
|
||||
return;
|
||||
|
||||
geolocationService.prompt = function(request) {
|
||||
|
||||
function getChromeWindow(aWindow) {
|
||||
var chromeWin = aWindow
|
||||
.QueryInterface(Ci.nsIInterfaceRequestor)
|
||||
.getInterface(Ci.nsIWebNavigation)
|
||||
.QueryInterface(Ci.nsIDocShellTreeItem)
|
||||
.rootTreeItem
|
||||
.QueryInterface(Ci.nsIInterfaceRequestor)
|
||||
.getInterface(Ci.nsIDOMWindow)
|
||||
.QueryInterface(Ci.nsIDOMChromeWindow);
|
||||
return chromeWin;
|
||||
}
|
||||
|
||||
var requestingWindow = request.requestingWindow.top;
|
||||
var tabbrowser = getChromeWindow(requestingWindow).wrappedJSObject.gBrowser;
|
||||
var browser = tabbrowser.getBrowserForDocument(requestingWindow.document);
|
||||
var notificationBox = tabbrowser.getNotificationBox(browser);
|
||||
|
||||
var notification = notificationBox.getNotificationWithValue("geolocation");
|
||||
if (!notification) {
|
||||
|
||||
var buttons = [{
|
||||
label: gNavigatorBundle.getString("geolocation.exactLocation"),
|
||||
accessKey: gNavigatorBundle.getString("geolocation.exactLocationKey"),
|
||||
callback: function() request.allow() ,
|
||||
},
|
||||
{
|
||||
label: gNavigatorBundle.getString("geolocation.neighborhoodLocation"),
|
||||
accessKey: gNavigatorBundle.getString("geolocation.neighborhoodLocationKey"),
|
||||
callback: function() request.allowButFuzz() ,
|
||||
},
|
||||
{
|
||||
label: gNavigatorBundle.getString("geolocation.nothingLocation"),
|
||||
accessKey: gNavigatorBundle.getString("geolocation.nothingLocationKey"),
|
||||
callback: function() request.cancel() ,
|
||||
}];
|
||||
|
||||
var message = gNavigatorBundle.getFormattedString("geolocation.requestMessage", [request.requestingURI.spec]);
|
||||
notificationBox.appendNotification(message,
|
||||
"geolocation",
|
||||
"chrome://browser/skin/Info.png",
|
||||
notificationBox.PRIORITY_INFO_HIGH,
|
||||
buttons);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function delayedStartup(isLoadingBlank, mustLoadSidebar) {
|
||||
var os = Cc["@mozilla.org/observer-service;1"].getService(Ci.nsIObserverService);
|
||||
os.addObserver(gSessionHistoryObserver, "browser:purge-session-history", false);
|
||||
os.addObserver(gXPInstallObserver, "xpinstall-install-blocked", false);
|
||||
|
||||
|
@ -930,9 +978,9 @@ function delayedStartup()
|
|||
// Ensure login manager is up and running.
|
||||
Cc["@mozilla.org/login-manager;1"].getService(Ci.nsILoginManager);
|
||||
|
||||
if (gMustLoadSidebar) {
|
||||
var sidebar = document.getElementById("sidebar");
|
||||
var sidebarBox = document.getElementById("sidebar-box");
|
||||
if (mustLoadSidebar) {
|
||||
let sidebar = document.getElementById("sidebar");
|
||||
let sidebarBox = document.getElementById("sidebar-box");
|
||||
sidebar.setAttribute("src", sidebarBox.getAttribute("src"));
|
||||
}
|
||||
|
||||
|
@ -948,7 +996,7 @@ function delayedStartup()
|
|||
// initiated by a web page script
|
||||
window.addEventListener("fullscreen", onFullScreen, true);
|
||||
|
||||
if (gIsLoadingBlank && gURLBar && isElementVisible(gURLBar))
|
||||
if (isLoadingBlank && gURLBar && isElementVisible(gURLBar))
|
||||
focusElement(gURLBar);
|
||||
else
|
||||
focusElement(content);
|
||||
|
@ -1112,6 +1160,10 @@ function delayedStartup()
|
|||
placesContext.addEventListener("popupshowing", updateEditUIVisibility, false);
|
||||
placesContext.addEventListener("popuphiding", updateEditUIVisibility, false);
|
||||
#endif
|
||||
|
||||
// hook up the geolocation prompt to our notificationBox
|
||||
setupGeolocationPrompt();
|
||||
|
||||
}
|
||||
|
||||
function BrowserShutdown()
|
||||
|
|
|
@ -146,8 +146,11 @@ function openUILink( url, e, ignoreButton, ignoreAlt, allowKeywordFixup, postDat
|
|||
*/
|
||||
function whereToOpenLink( e, ignoreButton, ignoreAlt )
|
||||
{
|
||||
// This method must treat a null event like a left click without modifier keys (i.e.
|
||||
// e = { shiftKey:false, ctrlKey:false, metaKey:false, altKey:false, button:0 })
|
||||
// for compatibility purposes.
|
||||
if (!e)
|
||||
e = { shiftKey:false, ctrlKey:false, metaKey:false, altKey:false, button:0 };
|
||||
return "current";
|
||||
|
||||
var shift = e.shiftKey;
|
||||
var ctrl = e.ctrlKey;
|
||||
|
|
|
@ -1296,14 +1296,14 @@ FeedWriter.prototype = {
|
|||
else {
|
||||
switch (selectedItem.id) {
|
||||
case "selectedAppMenuItem":
|
||||
prefs.setCharPref(getPrefReaderForType(feedType), "client");
|
||||
prefs.setComplexValue(getPrefAppForType(feedType), Ci.nsILocalFile,
|
||||
this._selectedApp);
|
||||
prefs.setCharPref(getPrefReaderForType(feedType), "client");
|
||||
break;
|
||||
case "defaultHandlerMenuItem":
|
||||
prefs.setCharPref(getPrefReaderForType(feedType), "client");
|
||||
prefs.setComplexValue(getPrefAppForType(feedType), Ci.nsILocalFile,
|
||||
this._defaultSystemReader);
|
||||
prefs.setCharPref(getPrefReaderForType(feedType), "client");
|
||||
break;
|
||||
case "liveBookmarksMenuItem":
|
||||
defaultHandler = "bookmarks";
|
||||
|
|
|
@ -135,3 +135,17 @@ editBookmarkPanel.pageBookmarkedTitle=Page Bookmarked
|
|||
editBookmarkPanel.pageBookmarkedDescription=%S will always remember this page for you.
|
||||
editBookmarkPanel.bookmarkedRemovedTitle=Bookmark Removed
|
||||
editBookmarkPanel.editBookmarkTitle=Edit This Bookmark
|
||||
|
||||
# Geolocation UI
|
||||
# LOCALIZATION NOTE (exactLocation, neighborhoodLocation): These do not have to be
|
||||
# exact value, instead approximations would be fine.
|
||||
# examples: Neighborhood (within 2 km)
|
||||
# Exact Location (within 3 m)
|
||||
#
|
||||
geolocation.exactLocation=Exact Location (within 10 feet)
|
||||
geolocation.exactLocationKey=E
|
||||
geolocation.neighborhoodLocation=Neighborhood (within 1 mile)
|
||||
geolocation.neighborhoodLocationKey=N
|
||||
geolocation.nothingLocation=Nothing
|
||||
geolocation.nothingLocationKey=o
|
||||
geolocation.requestMessage=%S wants to know where you are. Tell them:
|
||||
|
|
|
@ -122,7 +122,6 @@ MACOSX_DEPLOYMENT_TARGET = @MACOSX_DEPLOYMENT_TARGET@
|
|||
MOZ_MAIL_NEWS = @MOZ_MAIL_NEWS@
|
||||
MOZ_CALENDAR = @MOZ_CALENDAR@
|
||||
MOZ_PLAINTEXT_EDITOR_ONLY = @MOZ_PLAINTEXT_EDITOR_ONLY@
|
||||
MOZ_COMPOSER = @MOZ_COMPOSER@
|
||||
BUILD_STATIC_LIBS = @BUILD_STATIC_LIBS@
|
||||
MOZ_ENABLE_LIBXUL = @MOZ_ENABLE_LIBXUL@
|
||||
ENABLE_TESTS = @ENABLE_TESTS@
|
||||
|
|
12
configure.in
|
@ -4459,7 +4459,6 @@ basic)
|
|||
AC_DEFINE(MOZ_EMBEDDING_LEVEL_MINIMAL)
|
||||
ENABLE_TESTS=
|
||||
MOZ_ACTIVEX_SCRIPTING_SUPPORT=
|
||||
MOZ_COMPOSER=
|
||||
MOZ_ENABLE_CANVAS=
|
||||
MOZ_ENABLE_POSTSCRIPT=
|
||||
MOZ_EXTENSIONS_DEFAULT=" spatialnavigation"
|
||||
|
@ -4505,7 +4504,6 @@ minimal)
|
|||
AC_DEFINE(MOZ_EMBEDDING_LEVEL_MINIMAL)
|
||||
ENABLE_TESTS=
|
||||
MOZ_ACTIVEX_SCRIPTING_SUPPORT=
|
||||
MOZ_COMPOSER=
|
||||
MOZ_ENABLE_CANVAS=
|
||||
MOZ_ENABLE_POSTSCRIPT=
|
||||
MOZ_EXTENSIONS_DEFAULT=" spatialnavigation"
|
||||
|
@ -5308,16 +5306,6 @@ MOZ_ARG_ENABLE_BOOL(plaintext-editor-only,
|
|||
dnl Note the #define is MOZILLA, not MOZ, for compat with the Mac build.
|
||||
AC_SUBST(MOZ_PLAINTEXT_EDITOR_ONLY)
|
||||
|
||||
dnl ========================================================
|
||||
dnl Composer is on by default.
|
||||
dnl ========================================================
|
||||
MOZ_ARG_DISABLE_BOOL(composer,
|
||||
[ --disable-composer Disable building of Composer],
|
||||
MOZ_COMPOSER=,
|
||||
MOZ_COMPOSER=1 )
|
||||
AC_SUBST(MOZ_COMPOSER)
|
||||
|
||||
|
||||
dnl ========================================================
|
||||
dnl = Drop XPCOM Obsolete library
|
||||
dnl ========================================================
|
||||
|
|
|
@ -990,7 +990,8 @@ nsGenericElement::GetOffsetRect(nsRect& aRect, nsIContent** aOffsetParent)
|
|||
// It doesn't really matter what we use as aRelativeTo here, since
|
||||
// we only care about the size. Using 'parent' might make things
|
||||
// a bit faster by speeding up the internal GetOffsetTo operations.
|
||||
nsRect rcFrame = nsLayoutUtils::GetAllInFlowRectsUnion(frame, nsnull);
|
||||
nsIFrame* parent = frame->GetParent() ? frame->GetParent() : frame;
|
||||
nsRect rcFrame = nsLayoutUtils::GetAllInFlowRectsUnion(frame, parent);
|
||||
aRect.width = nsPresContext::AppUnitsToIntCSSPixels(rcFrame.width);
|
||||
aRect.height = nsPresContext::AppUnitsToIntCSSPixels(rcFrame.height);
|
||||
}
|
||||
|
|
|
@ -309,7 +309,9 @@ nsDOMUIEvent::SetCancelBubble(PRBool aCancelBubble)
|
|||
nsPoint nsDOMUIEvent::GetLayerPoint() {
|
||||
if (!mEvent ||
|
||||
(mEvent->eventStructType != NS_MOUSE_EVENT &&
|
||||
mEvent->eventStructType != NS_MOUSE_SCROLL_EVENT) ||
|
||||
mEvent->eventStructType != NS_POPUP_EVENT &&
|
||||
mEvent->eventStructType != NS_MOUSE_SCROLL_EVENT &&
|
||||
mEvent->eventStructType != NS_DRAG_EVENT) ||
|
||||
!mPresContext ||
|
||||
mEventIsInternal) {
|
||||
return mLayerPoint;
|
||||
|
|
|
@ -99,6 +99,15 @@ function doDragStartSelection(event)
|
|||
is(event.bubbles, true, "dragstart event bubbles");
|
||||
is(event.cancelable, true, "dragstart event cancelable");
|
||||
|
||||
is(event.clientX, 14, "dragstart clientX");
|
||||
is(event.clientY, 14, "dragstart clientY");
|
||||
ok(event.screenX > 0, "dragstart screenX");
|
||||
ok(event.screenY > 0, "dragstart screenY");
|
||||
is(event.layerX, 14, "dragstart layerX");
|
||||
is(event.layerY, 14, "dragstart layerY");
|
||||
is(event.pageX, 14, "dragstart pageX");
|
||||
is(event.pageY, 14, "dragstart pageY");
|
||||
|
||||
var dt = event.dataTransfer;
|
||||
ok(dt instanceof DataTransfer, "dataTransfer is DataTransfer");
|
||||
gDataTransfer = dt;
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<body>
|
||||
<form name="f">
|
||||
<select name="s">
|
||||
</select>
|
||||
</form>
|
||||
</body>
|
|
@ -0,0 +1,9 @@
|
|||
<!DOCTYPE html>
|
||||
<body onload="document.forms.f.s.options.length = 0;">
|
||||
<form name="f">
|
||||
<select name="s">
|
||||
<option name="o1">option 1</option>
|
||||
<option name="o2">option 2</option>
|
||||
</select>
|
||||
</form>
|
||||
</body>
|
|
@ -0,0 +1,8 @@
|
|||
<!DOCTYPE html>
|
||||
<body>
|
||||
<form name="f">
|
||||
<select name="s">
|
||||
<option name="o1">ok</option>
|
||||
</select>
|
||||
</form>
|
||||
</body>
|
|
@ -0,0 +1,8 @@
|
|||
<!DOCTYPE html>
|
||||
<body onload="document.forms.f.s.options[0].text = 'ok';">
|
||||
<form name="f">
|
||||
<select name="s">
|
||||
<option name="o1">-</option>
|
||||
</select>
|
||||
</form>
|
||||
</body>
|
|
@ -0,0 +1,2 @@
|
|||
== bug453105.html bug453105-ref.html
|
||||
== optiontext.html optiontext-ref.html
|
|
@ -1723,6 +1723,21 @@ nsGlobalWindow::SetNewDocument(nsIDocument* aDocument,
|
|||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
|
||||
if (currentInner && currentInner->mJSObject) {
|
||||
if (mNavigator && !aState) {
|
||||
// Hold on to the navigator wrapper so that we can set
|
||||
// window.navigator in the new window to point to the same
|
||||
// object (assuming we didn't change origins etc). See bug
|
||||
// 163645 for more on why we need this.
|
||||
|
||||
nsIDOMNavigator* navigator =
|
||||
static_cast<nsIDOMNavigator*>(mNavigator.get());
|
||||
xpc->WrapNative(cx, currentInner->mJSObject, navigator,
|
||||
NS_GET_IID(nsIDOMNavigator),
|
||||
getter_AddRefs(navigatorHolder));
|
||||
}
|
||||
}
|
||||
|
||||
if (!aState) {
|
||||
// This is redundant if we're restoring from a previous inner window.
|
||||
nsIScriptGlobalObject *sgo =
|
||||
|
@ -1768,19 +1783,6 @@ nsGlobalWindow::SetNewDocument(nsIDocument* aDocument,
|
|||
}
|
||||
|
||||
if (currentInner && currentInner->mJSObject) {
|
||||
if (mNavigator && !aState) {
|
||||
// Hold on to the navigator wrapper so that we can set
|
||||
// window.navigator in the new window to point to the same
|
||||
// object (assuming we didn't change origins etc). See bug
|
||||
// 163645 for more on why we need this.
|
||||
|
||||
nsIDOMNavigator* navigator =
|
||||
static_cast<nsIDOMNavigator*>(mNavigator.get());
|
||||
xpc->WrapNative(cx, currentInner->mJSObject, navigator,
|
||||
NS_GET_IID(nsIDOMNavigator),
|
||||
getter_AddRefs(navigatorHolder));
|
||||
}
|
||||
|
||||
PRBool termFuncSet = PR_FALSE;
|
||||
|
||||
if (oldDoc == aDocument) {
|
||||
|
|
|
@ -1,54 +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.org code.
|
||||
#
|
||||
# The Initial Developer of the Original Code is
|
||||
# Netscape Communications.
|
||||
# Portions created by the Initial Developer are Copyright (C) 2001
|
||||
# the Initial Developer. All Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Brian Ryner <bryner@brianryner.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 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 *****
|
||||
|
||||
DEPTH = ../..
|
||||
topsrcdir = @top_srcdir@
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
DIRS = \
|
||||
locales \
|
||||
$(NULL)
|
||||
|
||||
ifndef MOZ_STANDALONE_COMPOSER
|
||||
PREF_JS_EXPORTS = $(srcdir)/composer.js
|
||||
EXTRA_COMPONENTS = nsComposerCmdLineHandler.js
|
||||
endif
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
|
@ -1,138 +0,0 @@
|
|||
/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
/* ***** 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.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998-2002
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Benjamin Smedberg <bsmedberg@covad.net>
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either of 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 ***** */
|
||||
|
||||
/**
|
||||
* Default preferences for seamonkey composer. This file
|
||||
* was copied from mozilla/modules/libpref/src/init/editor.js
|
||||
*
|
||||
* If you're looking for the default prefs of standalone
|
||||
* composer, see mozilla/composer/app/profile/all.js
|
||||
*/
|
||||
|
||||
pref("editor.author", "");
|
||||
|
||||
pref("editor.text_color", "#000000");
|
||||
pref("editor.link_color", "#0000FF");
|
||||
pref("editor.active_link_color", "#000088");
|
||||
pref("editor.followed_link_color", "#FF0000");
|
||||
pref("editor.background_color", "#FFFFFF");
|
||||
pref("editor.use_background_image", false);
|
||||
pref("editor.default_background_image", "");
|
||||
pref("editor.use_custom_default_colors", 1);
|
||||
|
||||
pref("editor.hrule.height", 2);
|
||||
pref("editor.hrule.width", 100);
|
||||
pref("editor.hrule.width_percent", true);
|
||||
pref("editor.hrule.shading", true);
|
||||
pref("editor.hrule.align", 1); // center
|
||||
|
||||
pref("editor.table.maintain_structure", true);
|
||||
|
||||
pref("editor.prettyprint", true);
|
||||
|
||||
pref("editor.throbber.url","chrome://editor-region/locale/region.properties");
|
||||
|
||||
pref("editor.toolbars.showbutton.new", true);
|
||||
pref("editor.toolbars.showbutton.open", true);
|
||||
pref("editor.toolbars.showbutton.save", true);
|
||||
pref("editor.toolbars.showbutton.publish", true);
|
||||
pref("editor.toolbars.showbutton.preview", true);
|
||||
pref("editor.toolbars.showbutton.cut", false);
|
||||
pref("editor.toolbars.showbutton.copy", false);
|
||||
pref("editor.toolbars.showbutton.paste", false);
|
||||
pref("editor.toolbars.showbutton.print", true);
|
||||
pref("editor.toolbars.showbutton.find", false);
|
||||
pref("editor.toolbars.showbutton.image", true);
|
||||
pref("editor.toolbars.showbutton.hline", false);
|
||||
pref("editor.toolbars.showbutton.table", true);
|
||||
pref("editor.toolbars.showbutton.link", true);
|
||||
pref("editor.toolbars.showbutton.namedAnchor", false);
|
||||
|
||||
pref("editor.toolbars.showbutton.bold", true);
|
||||
pref("editor.toolbars.showbutton.italic", true);
|
||||
pref("editor.toolbars.showbutton.underline", true);
|
||||
pref("editor.toolbars.showbutton.DecreaseFontSize", true);
|
||||
pref("editor.toolbars.showbutton.IncreaseFontSize", true);
|
||||
pref("editor.toolbars.showbutton.ul", true);
|
||||
pref("editor.toolbars.showbutton.ol", true);
|
||||
pref("editor.toolbars.showbutton.outdent", true);
|
||||
pref("editor.toolbars.showbutton.indent", true);
|
||||
|
||||
pref("editor.toolbars.showbutton.absolutePosition", true);
|
||||
pref("editor.toolbars.showbutton.decreaseZIndex", true);
|
||||
pref("editor.toolbars.showbutton.increaseZIndex", true);
|
||||
|
||||
pref("editor.history.url_maximum", 10);
|
||||
|
||||
pref("editor.publish.", "");
|
||||
pref("editor.lastFileLocation.image", "");
|
||||
pref("editor.lastFileLocation.html", "");
|
||||
pref("editor.save_associated_files", true);
|
||||
pref("editor.always_show_publish_dialog", false);
|
||||
|
||||
/*
|
||||
* What are the entities that you want Mozilla to save using mnemonic
|
||||
* names rather than numeric codes? E.g. If set, we'll output
|
||||
* otherwise, we may output 0xa0 depending on the charset.
|
||||
*
|
||||
* "none" : don't use any entity names; only use numeric codes.
|
||||
* "basic" : use entity names just for & < > " for
|
||||
* interoperability/exchange with products that don't support more
|
||||
* than that.
|
||||
* "latin1" : use entity names for 8bit accented letters and other special
|
||||
* symbols between 128 and 255.
|
||||
* "html" : use entity names for 8bit accented letters, greek letters, and
|
||||
* other special markup symbols as defined in HTML4.
|
||||
*/
|
||||
//pref("editor.encode_entity", "html");
|
||||
|
||||
#ifndef XP_MACOSX
|
||||
#ifdef XP_UNIX
|
||||
pref("editor.disable_spell_checker", false);
|
||||
pref("editor.dont_lock_spell_files", true);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
pref("editor.CR_creates_new_p", false);
|
||||
|
||||
// Pasting images from the clipboard, order of encoding preference:
|
||||
// JPEG-PNG-GIF=0, PNG-JPEG-GIF=1, GIF-JPEG-PNG=2
|
||||
pref("clipboard.paste_image_type", 1);
|
||||
#ifdef XP_WIN
|
||||
pref("clipboard.paste_image_quality", 92); // for JPEG on Windows only
|
||||
#endif
|
|
@ -1,835 +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, released
|
||||
* March 31, 1998.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998-1999
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either of 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 ***** */
|
||||
|
||||
/* Styles to alter look of things in the Editor content window
|
||||
* for the "All Tags Edit Mode" Every HTML tag shows up as an icon.
|
||||
*/
|
||||
|
||||
/* For "userdefined" or "unknown" tags
|
||||
(Note that "_" must be escaped)
|
||||
*/
|
||||
|
||||
*:not(a):not(abbr):not(acronym):not(address):not(applet):not(area):not(b):not(base):not(basefont):not(bdo):not(bgsound):not(big):not(blink):not(blockquote):not(body):not(br):not(button):not(canvas):not(caption):not(center):not(cite):not(code):not(col):not(colgroup):not(dd):not(del):not(dfn):not(dir):not(div):not(dl):not(dt):not(em):not(embed):not(fieldset):not(font):not(form):not(frame):not(frameset):not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(head):not(hr):not(html):not(i):not(iframe):not(image):not(img):not(input):not(ins):not(isindex):not(kbd):not(keygen):not(label):not(legend):not(li):not(link):not(listing):not(map):not(marquee):not(menu):not(meta):not(multicol):not(nobr):not(noembed):not(noframes):not(noscript):not(object):not(ol):not(optgroup):not(option):not(p):not(param):not(plaintext):not(pre):not(q):not(s):not(samp):not(script):not(select):not(server):not(small):not(sound):not(spacer):not(span):not(strike):not(strong):not(style):not(sub):not(sup):not(table):not(tbody):not(td):not(textarea):not(tfoot):not(th):not(thead):not(title):not(tr):not(tt):not(u):not(ul):not(var):not(wbr):not(xmp) {
|
||||
display: inline;
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 16px;
|
||||
background-image: url(chrome://editor/content/images/tag-userdefined.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
a:not([\_moz_anonclass]) {
|
||||
min-height: 16px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 20px;
|
||||
background-image: url(chrome://editor/content/images/tag-a.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
abbr {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 35px;
|
||||
background-image: url(chrome://editor/content/images/tag-abr.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
|
||||
acronym {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 57px;
|
||||
background-image: url(chrome://editor/content/images/tag-acr.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
address {
|
||||
min-height: 44px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-adr.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
applet {
|
||||
min-height: 35px; margin-top: 2px;
|
||||
padding-left: 47px;
|
||||
background-image: url(chrome://editor/content/images/tag-app.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
area {
|
||||
min-height: 35px; margin-top: 2px;
|
||||
padding-left: 39px;
|
||||
background-image: url(chrome://editor/content/images/tag-ara.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
b {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 20px;
|
||||
background-image: url(chrome://editor/content/images/tag-b.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
basefont {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 57px;
|
||||
background-image: url(chrome://editor/content/images/tag-bsf.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
bdo {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-bdo.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
big {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-big.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
min-height: 44px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-blq.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
body {
|
||||
min-height: 36px; margin-left: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-body.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
br {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 23px;
|
||||
background-image: url(chrome://editor/content/images/tag-br.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
button {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 57px;
|
||||
background-image: url(chrome://editor/content/images/tag-btn.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
caption {
|
||||
min-height: 35px; margin-top: 2px;
|
||||
padding-left: 55px;
|
||||
background-image: url(chrome://editor/content/images/tag-cpt.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
center {
|
||||
min-height: 44px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-ctr.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
cite {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 39px;
|
||||
background-image: url(chrome://editor/content/images/tag-cit.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
code {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 39px;
|
||||
background-image: url(chrome://editor/content/images/tag-cod.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
col {
|
||||
min-height: 35px; margin-left: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-col.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
colgroup {
|
||||
min-height: 35px; margin-left: 2px;
|
||||
padding-left: 51px;
|
||||
background-image: url(chrome://editor/content/images/tag-clg.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
dd {
|
||||
min-height: 35px; margin-top: 2px;
|
||||
padding-left: 23px;
|
||||
background-image: url(chrome://editor/content/images/tag-dd.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
del {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-del.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
dfn {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-dfn.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
dir {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-dir.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
div {
|
||||
min-height: 24px; margin-top: 2px;
|
||||
/* TEMPORARY TO COMPENSATE FOR BUG */
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-div.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
input div {
|
||||
min-height: 0px; margin-left: 0px; margin-top: 0px;
|
||||
padding-left: 0px;
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
dl {
|
||||
min-height: 20px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-dl.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
dt {
|
||||
min-height: 35px; margin-top: 2px;
|
||||
padding-left: 23px;
|
||||
background-image: url(chrome://editor/content/images/tag-dt.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
em {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 23px;
|
||||
background-image: url(chrome://editor/content/images/tag-em.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
min-height: 44px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-fld.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
font {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 39px;
|
||||
background-image: url(chrome://editor/content/images/tag-fnt.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
form {
|
||||
min-height: 36px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-for.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
frame {
|
||||
min-height: 40px; margin-left: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-frm.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
frameset {
|
||||
min-height: 44px; margin-left: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-fst.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
h1 {
|
||||
min-height: 20px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-h1.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
h2 {
|
||||
min-height: 20px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-h2.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
h3 {
|
||||
min-height: 20px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-h3.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
h4 {
|
||||
min-height: 20px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-h4.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
h5 {
|
||||
min-height: 20px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-h5.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
h6 {
|
||||
min-height: 20px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-h6.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
hr {
|
||||
min-height: 20px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-hr.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
i {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 20px;
|
||||
background-image: url(chrome://editor/content/images/tag-i.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
iframe {
|
||||
min-height: 35px; margin-left: 2px;
|
||||
padding-left: 47px;
|
||||
background-image: url(chrome://editor/content/images/tag-ifr.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
img:not([\_moz_anonclass]) {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-img.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
input {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 39px;
|
||||
background-image: url(chrome://editor/content/images/tag-inp.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
ins {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-ins.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
isindex {
|
||||
min-height: 40px; margin-left: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-isx.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
kbd {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-kbd.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
label {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 39px;
|
||||
background-image: url(chrome://editor/content/images/tag-lbl.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
legend {
|
||||
min-height: 35px; margin-top: 2px;
|
||||
padding-left: 49px;
|
||||
background-image: url(chrome://editor/content/images/tag-lgn.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
li {
|
||||
min-height: 35px; margin-top: 2px;
|
||||
padding-left: 23px;
|
||||
background-image: url(chrome://editor/content/images/tag-li.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
listing {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 57px;
|
||||
background-image: url(chrome://editor/content/images/tag-lst.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
map {
|
||||
min-height: 35px; margin-left: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-map.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
menu {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 39px;
|
||||
background-image: url(chrome://editor/content/images/tag-men.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
nobr {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 39px;
|
||||
background-image: url(chrome://editor/content/images/tag-nbr.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
noframes {
|
||||
min-height: 44px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-nfr.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
noscript {
|
||||
min-height: 44px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-nsc.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
object {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 49px;
|
||||
background-image: url(chrome://editor/content/images/tag-obj.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
ol {
|
||||
min-height: 38px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-ol.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
optgroup {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 51px;
|
||||
background-image: url(chrome://editor/content/images/tag-opg.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
option {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 47px;
|
||||
background-image: url(chrome://editor/content/images/tag-opt.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
p {
|
||||
min-height: 38px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-p.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
param {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 43px;
|
||||
background-image: url(chrome://editor/content/images/tag-prm.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
plaintext {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 57px;
|
||||
background-image: url(chrome://editor/content/images/tag-pln.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
pre {
|
||||
min-height: 24px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-pre.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
q {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 20px;
|
||||
background-image: url(chrome://editor/content/images/tag-q.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
s {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 20px;
|
||||
background-image: url(chrome://editor/content/images/tag-s.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
samp {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 39px;
|
||||
background-image: url(chrome://editor/content/images/tag-smp.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
script {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 45px;
|
||||
background-image: url(chrome://editor/content/images/tag-scr.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
select {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 47px;
|
||||
background-image: url(chrome://editor/content/images/tag-slc.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
small {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 41px;
|
||||
background-image: url(chrome://editor/content/images/tag-sml.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
span:not([\_moz_anonclass]) {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
/* TEMPORARY TO COMPENSATE FOR BUG */
|
||||
padding-left: 39px;
|
||||
background-image: url(chrome://editor/content/images/tag-spn.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
strike {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 45px;
|
||||
background-image: url(chrome://editor/content/images/tag-stk.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
strong {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 51px;
|
||||
background-image: url(chrome://editor/content/images/tag-stn.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
sub {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-sub.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
sup {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-sup.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
/* The background image technique is not working for
|
||||
some table elements. Trying the "before" strategy
|
||||
*/
|
||||
|
||||
table {
|
||||
min-height: 40px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-tbl.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
tbody {
|
||||
min-height: 42px; margin-left: 2px; margin-top: 1px;
|
||||
padding-left: 17px;
|
||||
content: url(chrome://editor/content/images/tag-tbd.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
td {
|
||||
min-height: 22px; margin-left: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-td.gif);
|
||||
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
textarea {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 59px;
|
||||
background-image: url(chrome://editor/content/images/tag-txt.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
tfoot {
|
||||
min-height: 42px; margin-left: 2px; margin-top: 1px;
|
||||
padding-left: 17px;
|
||||
content: url(chrome://editor/content/images/tag-tft.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
th {
|
||||
min-height: 22px; margin-left: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-th.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
thead {
|
||||
min-height: 42px; margin-left: 2px; margin-top: 1px;
|
||||
padding-left: 17px;
|
||||
content: url(chrome://editor/content/images/tag-thd.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
tr {
|
||||
min-height: 22px; margin-left: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-tr.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
tt {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 23px;
|
||||
background-image: url(chrome://editor/content/images/tag-tt.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
u {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 23px;
|
||||
background-image: url(chrome://editor/content/images/tag-u.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
ul {
|
||||
min-height: 20px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-ul.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
var {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-var.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
xmp {
|
||||
min-height: 35px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 31px;
|
||||
background-image: url(chrome://editor/content/images/tag-xmp.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
|
||||
/* These are tags that we DON'T want to show icons for.
|
||||
We have images for them in case we want to utilize them
|
||||
for some other purpose than the "All Tags" editor mode
|
||||
|
||||
html {
|
||||
min-height: 36px; margin-left: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-html.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
head {
|
||||
min-height: 36px; margin-left: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-hed.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
These are tags that are ONLY allowed as children of HEAD:
|
||||
|
||||
title {
|
||||
min-height: 40px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-ttl.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
base {
|
||||
min-height: 36px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-bas.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
style {
|
||||
min-height: 40px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-stl.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
meta {
|
||||
min-height: 36px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-met.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
link {
|
||||
min-height: 30px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 17px;
|
||||
background-image: url(chrome://editor/content/images/tag-lnk.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
*/
|
|
@ -1,96 +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, released
|
||||
* March 31, 1998.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998-1999
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Daniel Glazman <glazman@netscape.com>
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either of 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 ***** */
|
||||
|
||||
/* Styles to alter look of things in the Editor content window
|
||||
* for the "Normal Edit Mode" These settings will be removed
|
||||
* when we display in completely WYSIWYG "Edit Preview" mode
|
||||
* Anything that should never change, like cursors, should be
|
||||
* place in EditorOverride.css, instead of here.
|
||||
*/
|
||||
|
||||
@import url(chrome://communicator/skin/smileys.css);
|
||||
|
||||
a[name] {
|
||||
min-height: 17px; margin-left: 2px; margin-top: 2px;
|
||||
padding-left: 20px;
|
||||
background-image: url(chrome://editor/content/images/tag-anchor.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: top left;
|
||||
}
|
||||
|
||||
/* Force border display for empty cells
|
||||
and tables with 0 border
|
||||
*/
|
||||
table {
|
||||
empty-cells: show;
|
||||
}
|
||||
|
||||
/* give a red dotted border to tables and cells with no border
|
||||
otherwise they are invisible
|
||||
*/
|
||||
table[empty-cells],
|
||||
table[border="0"],
|
||||
/* next two selectors on line below for the case where tbody is omitted */
|
||||
table[border="0"] > tr > td, table[border="0"] > tr > th,
|
||||
table[border="0"] > thead > tr > td, table[border="0"] > tbody > tr > td, table[border="0"] > tfoot > tr > td,
|
||||
table[border="0"] > thead > tr > th, table[border="0"] > tbody > tr > th, table[border="0"] > tfoot > tr > th,
|
||||
table:not([border]),
|
||||
/* next two selectors on line below for the case where tbody is omitted */
|
||||
table:not([border]) > tr > td, table:not([border]) > tr > th,
|
||||
table:not([border]) > thead > tr > td, table:not([border]) > tbody > tr > td, table:not([border]) > tfoot > tr > td,
|
||||
table:not([border]) > thead > tr > th, table:not([border]) > tbody > tr > th, table:not([border]) > tfoot > tr > th
|
||||
{
|
||||
border: 1px dotted red;
|
||||
}
|
||||
|
||||
/* give a green dashed border to forms otherwise they are invisible
|
||||
*/
|
||||
form
|
||||
{
|
||||
border: 2px dashed green;
|
||||
}
|
||||
/* give a green dotted border to labels otherwise they are invisible
|
||||
*/
|
||||
label
|
||||
{
|
||||
border: 1px dotted green;
|
||||
}
|
||||
|
||||
img {
|
||||
-moz-force-broken-image-icon: 1;
|
||||
}
|
|
@ -1,172 +0,0 @@
|
|||
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
/* ***** 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, released
|
||||
* March 31, 1998.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 2000
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Charles Manske (cmanske@netscape.com)
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either of 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 ***** */
|
||||
|
||||
function EditorFillContextMenu(event, contextMenuNode)
|
||||
{
|
||||
if ( event.target != contextMenuNode )
|
||||
return;
|
||||
|
||||
// Setup object property menuitem
|
||||
var objectName = InitObjectPropertiesMenuitem("objectProperties_cm");
|
||||
var isInLink = objectName == "href";
|
||||
|
||||
// Special case of an image inside a link
|
||||
if (objectName == "img")
|
||||
try {
|
||||
isInLink = GetCurrentEditor().getElementOrParentByTagName("href", GetObjectForProperties());
|
||||
} catch (e) {}
|
||||
|
||||
InitRemoveStylesMenuitems("removeStylesMenuitem_cm", "removeLinksMenuitem_cm", "removeNamedAnchorsMenuitem_cm");
|
||||
|
||||
var inCell = IsInTableCell();
|
||||
// Set appropriate text for join cells command
|
||||
InitJoinCellMenuitem("joinTableCells_cm");
|
||||
|
||||
// Update enable states for all table commands
|
||||
goUpdateTableMenuItems(document.getElementById("composerTableMenuItems"));
|
||||
|
||||
// Loop through all children to hide disabled items
|
||||
var children = contextMenuNode.childNodes;
|
||||
if (children)
|
||||
{
|
||||
var count = children.length;
|
||||
for (var i = 0; i < count; i++)
|
||||
HideDisabledItem(children[i]);
|
||||
}
|
||||
|
||||
// The above loop will always show all separators and the next two items
|
||||
// Hide "Create Link" if in a link
|
||||
ShowMenuItem("createLink_cm", !isInLink);
|
||||
|
||||
// Hide "Edit link in new Composer" unless in a link
|
||||
ShowMenuItem("editLink_cm", isInLink);
|
||||
|
||||
// Remove separators if all items in immediate group above are hidden
|
||||
// A bit complicated to account if multiple groups are completely hidden!
|
||||
var haveUndo =
|
||||
IsMenuItemShowing("menu_undo_cm") ||
|
||||
IsMenuItemShowing("menu_redo_cm");
|
||||
|
||||
var haveEdit =
|
||||
IsMenuItemShowing("menu_cut_cm") ||
|
||||
IsMenuItemShowing("menu_copy_cm") ||
|
||||
IsMenuItemShowing("menu_paste_cm") ||
|
||||
IsMenuItemShowing("menu_pasteNoFormatting_cm") ||
|
||||
IsMenuItemShowing("menu_delete_cm");
|
||||
|
||||
var haveStyle =
|
||||
IsMenuItemShowing("removeStylesMenuitem_cm") ||
|
||||
IsMenuItemShowing("createLink_cm") ||
|
||||
IsMenuItemShowing("removeLinksMenuitem_cm") ||
|
||||
IsMenuItemShowing("removeNamedAnchorsMenuitem_cm");
|
||||
|
||||
var haveProps =
|
||||
IsMenuItemShowing("objectProperties_cm");
|
||||
|
||||
ShowMenuItem("undoredo-separator", haveUndo && haveEdit);
|
||||
|
||||
ShowMenuItem("edit-separator", haveEdit || haveUndo);
|
||||
|
||||
// Note: Item "menu_selectAll_cm" and
|
||||
// following separator are ALWAYS enabled,
|
||||
// so there will always be 1 separator here
|
||||
|
||||
var showStyleSep = haveStyle && (haveProps || inCell);
|
||||
ShowMenuItem("styles-separator", showStyleSep);
|
||||
|
||||
var showPropSep = (haveProps && inCell);
|
||||
ShowMenuItem("property-separator", showPropSep);
|
||||
|
||||
// Remove table submenus if not in table
|
||||
ShowMenuItem("tableInsertMenu_cm", inCell);
|
||||
ShowMenuItem("tableSelectMenu_cm", inCell);
|
||||
ShowMenuItem("tableDeleteMenu_cm", inCell);
|
||||
|
||||
// if we have a mispelled word, show spellchecker context
|
||||
// menuitems as well as the usual context menu
|
||||
InlineSpellCheckerUI.clearSuggestionsFromMenu();
|
||||
InlineSpellCheckerUI.initFromEvent(document.popupRangeParent, document.popupRangeOffset);
|
||||
var onMisspelling = InlineSpellCheckerUI.overMisspelling;
|
||||
document.getElementById('spellCheckSuggestionsSeparator').hidden = !onMisspelling;
|
||||
document.getElementById('spellCheckAddToDictionary').hidden = !onMisspelling;
|
||||
document.getElementById('spellCheckIgnoreWord').hidden = !onMisspelling;
|
||||
var separator = document.getElementById('spellCheckAddSep');
|
||||
separator.hidden = !onMisspelling;
|
||||
document.getElementById('spellCheckNoSuggestions').hidden = !onMisspelling ||
|
||||
InlineSpellCheckerUI.addSuggestionsToMenu(contextMenuNode, separator, 5);
|
||||
}
|
||||
|
||||
function IsItemOrCommandEnabled( item )
|
||||
{
|
||||
var command = item.getAttribute("command");
|
||||
if (command) {
|
||||
// If possible, query the command controller directly
|
||||
var controller = document.commandDispatcher.getControllerForCommand(command);
|
||||
if (controller)
|
||||
return controller.isCommandEnabled(command);
|
||||
}
|
||||
|
||||
// Fall back on the inefficient observed disabled attribute
|
||||
return item.getAttribute("disabled") != "true";
|
||||
}
|
||||
|
||||
function HideDisabledItem( item )
|
||||
{
|
||||
item.hidden = !IsItemOrCommandEnabled(item);
|
||||
}
|
||||
|
||||
function ShowMenuItem(id, showItem)
|
||||
{
|
||||
var item = document.getElementById(id);
|
||||
if (item && !showItem)
|
||||
{
|
||||
item.hidden = true;
|
||||
}
|
||||
// else HideDisabledItem showed the item anyway
|
||||
}
|
||||
|
||||
function IsMenuItemShowing(menuID)
|
||||
{
|
||||
var item = document.getElementById(menuID);
|
||||
if (item)
|
||||
return !item.hidden;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
|
@ -1,164 +0,0 @@
|
|||
<?xml version="1.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, released
|
||||
- March 31, 1998.
|
||||
-
|
||||
- The Initial Developer of the Original Code is
|
||||
- Netscape Communications Corporation.
|
||||
- Portions created by the Initial Developer are Copyright (C) 2000
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Daniel Glazman (glazman@netscape.com)
|
||||
- Charles Manske (cmanske@netscape.com)
|
||||
-
|
||||
- Alternatively, the contents of this file may be used under the terms of
|
||||
- either of 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 ***** -->
|
||||
|
||||
<!DOCTYPE overlay SYSTEM "chrome://editor/locale/editorOverlay.dtd">
|
||||
|
||||
<overlay id="ComposerContextMenuOverlay"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
<script type="application/x-javascript" src="chrome://editor/content/EditorContextMenu.js"/>
|
||||
<script type="application/x-javascript" src="chrome://editor/content/StructBarContextMenu.js"/>
|
||||
<script type="application/x-javascript" src="chrome://global/content/inlineSpellCheckUI.js"/>
|
||||
|
||||
<popupset id="editorContentContextSet">
|
||||
<popup id="editorContentContext"
|
||||
onpopupshowing="EditorFillContextMenu(event, this);">
|
||||
<menuitem id="spellCheckNoSuggestions" label="&spellCheckNoSuggestions.label;" disabled="true"/>
|
||||
<menuseparator id="spellCheckAddSep"/>
|
||||
<menuitem id="spellCheckAddToDictionary"
|
||||
label="&spellCheckAddToDictionary.label;"
|
||||
accesskey="&spellCheckAddToDictionary.accesskey;"
|
||||
oncommand="InlineSpellCheckerUI.addToDictionary();"/>
|
||||
<menuitem id="spellCheckIgnoreWord"
|
||||
label="&spellCheckIgnoreWord.label;"
|
||||
accesskey="&spellCheckIgnoreWord.accesskey;"
|
||||
oncommand="InlineSpellCheckerUI.ignoreWord();"/>
|
||||
<menuseparator id="spellCheckSuggestionsSeparator"/>
|
||||
|
||||
<menuitem id="menu_undo_cm" label="&undoCmd.label;" accesskey="&undo.accesskey;" command="cmd_undo"/>
|
||||
<menuitem id="menu_redo_cm" label="&redoCmd.label;" accesskey="&redo.accesskey;" command="cmd_redo"/>
|
||||
<menuseparator id="undoredo-separator"/>
|
||||
|
||||
<menuitem id="menu_cut_cm" label="&cutCmd.label;" accesskey="&cut.accesskey;" command="cmd_cut"/>
|
||||
<menuitem id="menu_copy_cm" label="©Cmd.label;" accesskey="©.accesskey;" command="cmd_copy"/>
|
||||
<menuitem id="menu_paste_cm" label="&pasteCmd.label;" accesskey="&paste.accesskey;" command="cmd_paste"/>
|
||||
<menuitem id="menu_pasteNoFormatting_cm" command="cmd_pasteNoFormatting"/>
|
||||
<menuitem id="menu_delete_cm" label="&deleteCmd.label;" accesskey="&delete.accesskey;" command="cmd_delete"/>
|
||||
<menuseparator id="edit-separator"/>
|
||||
<menuitem id="menu_selectAll_cm" label="&selectAllCmd.label;" accesskey="&selectall.accesskey;" command="cmd_selectAll"/>
|
||||
<menuseparator id="selectAll-separator"/>
|
||||
|
||||
<!-- label and accesskey set at runtime from strings -->
|
||||
<menuitem id="removeStylesMenuitem_cm"
|
||||
observes="cmd_removeStyles"/>
|
||||
<menuitem id="createLink_cm" label="&createLinkCmd.label;" accesskey="&createlink.accesskey;" command="cmd_link"/>
|
||||
<!-- label and accesskey set at runtime from strings -->
|
||||
<menuitem id="removeLinksMenuitem_cm" observes="cmd_removeLinks"/>
|
||||
<menuitem id="removeNamedAnchorsMenuitem_cm" label="&formatRemoveNamedAnchors.label;"
|
||||
accesskey="&formatRemoveNamedAnchors.accesskey;"
|
||||
observes="cmd_removeNamedAnchors"/>
|
||||
<menuseparator id="styles-separator"/>
|
||||
|
||||
<!-- label and accesskey are set in InitObjectProperties -->
|
||||
<menuitem id="objectProperties_cm" observes="cmd_objectProperties"/>
|
||||
<menuitem id="editLink_cm" label="&editLinkCmd.label;" accesskey="&editlink.accesskey;" command="cmd_editLink"/>
|
||||
<menuseparator id="property-separator"/>
|
||||
|
||||
<!-- Can't get submenus to load from a shared overlay -->
|
||||
<menu id="tableInsertMenu_cm" label="&tableInsertMenu2.label;" accesskey="&tableinsertmenu.accesskey;">
|
||||
<menupopup>
|
||||
<menuitem label="&insertTableCmd.label;" accesskey="&tabletable.accesskey;" observes="cmd_InsertTable"/>
|
||||
<menuseparator />
|
||||
<menuitem label="&tableRowAbove.label;" accesskey="&tablerow.accesskey;" observes="cmd_InsertRowAbove"/>
|
||||
<menuitem label="&tableRowBelow.label;" accesskey="&tablerowbelow.accesskey;" observes="cmd_InsertRowBelow"/>
|
||||
<menuseparator />
|
||||
<menuitem label="&tableColumnBefore.label;" accesskey="&tablecolumn.accesskey;" observes="cmd_InsertColumnBefore"/>
|
||||
<menuitem label="&tableColumnAfter.label;" accesskey="&tablecolumnafter.accesskey;" observes="cmd_InsertColumnAfter"/>
|
||||
<menuseparator />
|
||||
<menuitem label="&tableCellBefore.label;" accesskey="&tablecell.accesskey;" observes="cmd_InsertCellBefore"/>
|
||||
<menuitem label="&tableCellAfter.label;" accesskey="&tablecellafter.accesskey;" observes="cmd_InsertCellAfter"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menu id="tableSelectMenu_cm" label="&tableSelectMenu2.label;" accesskey="&tableselectmenu.accesskey;">
|
||||
<menupopup>
|
||||
<menuitem id="menu_SelectTable_cm" label="&tableTable.label;" accesskey="&tabletable.accesskey;" observes="cmd_SelectTable" />
|
||||
<menuitem id="menu_SelectRow_cm" label="&tableRow.label;" accesskey="&tablerow.accesskey;" observes="cmd_SelectRow" />
|
||||
<menuitem id="menu_SelectColumn_cm" label="&tableColumn.label;" accesskey="&tablecolumn.accesskey;" observes="cmd_SelectColumn" />
|
||||
<menuitem id="menu_SelectCell_cm" label="&tableCell.label;" accesskey="&tablecell.accesskey;" observes="cmd_SelectCell" />
|
||||
<menuitem id="menu_SelectAllCells_cm" label="&tableAllCells.label;" accesskey="&tableallcells.accesskey;" observes="cmd_SelectAllCells" />
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menu id="tableDeleteMenu_cm" label="&tableDeleteMenu2.label;" accesskey="&tabledeletemenu.accesskey;">
|
||||
<menupopup>
|
||||
<menuitem id="menu_DeleteTable_cm" label="&tableTable.label;" accesskey="&tabletable.accesskey;" observes="cmd_DeleteTable"/>
|
||||
<menuitem id="menu_DeleteRow_cm" label="&tableRows.label;" accesskey="&tablerow.accesskey;" observes="cmd_DeleteRow"/>
|
||||
<menuitem id="menu_DeleteColumn_cm" label="&tableColumns.label;" accesskey="&tablecolumn.accesskey;" observes="cmd_DeleteColumn"/>
|
||||
<menuitem id="menu_DeleteCell_cm" label="&tableCells.label;" accesskey="&tablecell.accesskey;" observes="cmd_DeleteCell"/>
|
||||
<menuitem id="menu_DeleteCellContents_cm" label="&tableCellContents.label;" accesskey="&tablecellcontents.accesskey;" observes="cmd_DeleteCellContents"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<!-- menu label is set in InitTableMenu -->
|
||||
<menuitem id="joinTableCells_cm" label="&tableJoinCells.label;" accesskey="&tablejoincells.accesskey;" observes="cmd_JoinTableCells"/>
|
||||
<menuitem id="splitTableCell_cm" label="&tableSplitCell.label;" accesskey="&tablesplitcell.accesskey;" observes="cmd_SplitTableCell"/>
|
||||
<menuitem id="tableOrCellColor_cm" label="&tableOrCellColor.label;" accesskey="&tableOrCellColor.accesskey;" observes="cmd_TableOrCellColor"/>
|
||||
</popup>
|
||||
|
||||
<popup id="editorSourceContext">
|
||||
<menuitem label="&undoCmd.label;" accesskey="&undo.accesskey;" command="cmd_undo"/>
|
||||
<menuitem label="&redoCmd.label;" accesskey="&redo.accesskey;" command="cmd_redo"/>
|
||||
<menuseparator/>
|
||||
<menuitem label="&cutCmd.label;" accesskey="&cut.accesskey;" command="cmd_cut"/>
|
||||
<menuitem label="©Cmd.label;" accesskey="©.accesskey;" command="cmd_copy"/>
|
||||
<menuitem label="&pasteCmd.label;" accesskey="&paste.accesskey;" command="cmd_paste"/>
|
||||
<menuitem label="&deleteCmd.label;" accesskey="&delete.accesskey;" command="cmd_delete"/>
|
||||
<menuseparator/>
|
||||
<menuitem label="&selectAllCmd.label;" accesskey="&selectall.accesskey;" command="cmd_selectAll"/>
|
||||
</popup>
|
||||
|
||||
<popup id="structToolbarContext">
|
||||
<menuitem id="structSelect" label="&structSelect.label;"
|
||||
accesskey="&structSelect.accesskey;"
|
||||
oncommand="StructSelectTag()"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="structRemoveTag" label="&structRemoveTag.label;"
|
||||
accesskey="&structRemoveTag.accesskey;"
|
||||
oncommand="StructRemoveTag()"/>
|
||||
<menuitem id="structChangeTag" label="&structChangeTag.label;"
|
||||
accesskey="&structChangeTag.accesskey;"
|
||||
oncommand="StructChangeTag()"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="advancedPropsTag" label="&advancedPropertiesCmd.label;"
|
||||
accesskey="&advancedproperties.accesskey;"
|
||||
oncommand="OpenAdvancedProperties()"/>
|
||||
</popup>
|
||||
|
||||
</popupset>
|
||||
|
||||
</overlay>
|
|
@ -1,49 +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, released
|
||||
* March 31, 1998.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998-1999
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either of 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 ***** */
|
||||
|
||||
/* This adds the standard paragraph symbol
|
||||
* after paragraphs (block container tags)
|
||||
*/
|
||||
|
||||
p:after,br:after,
|
||||
h1:after,h2:after,h3:after,h4:after,h5:after,h6:after,
|
||||
address:after,blockquote:after,listing:after,
|
||||
plaintext:after, xmp:after, pre:after,
|
||||
li:after,dt:after,dd:after
|
||||
{
|
||||
content: "\B6 ";
|
||||
}
|
|
@ -1,212 +0,0 @@
|
|||
/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
/* ***** 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.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 2002
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Daniel Glazman (glazman@netscape.com), original author
|
||||
*
|
||||
* 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 ***** */
|
||||
|
||||
var gContextMenuNode;
|
||||
var gContextMenuFiringDocumentElement;
|
||||
|
||||
function InitStructBarContextMenu(button, docElement)
|
||||
{
|
||||
gContextMenuFiringDocumentElement = docElement;
|
||||
gContextMenuNode = button;
|
||||
|
||||
var tag = docElement.nodeName.toLowerCase();
|
||||
|
||||
var structRemoveTag = document.getElementById("structRemoveTag");
|
||||
var enableRemove;
|
||||
|
||||
switch (tag) {
|
||||
case "body":
|
||||
case "tbody":
|
||||
case "thead":
|
||||
case "tfoot":
|
||||
case "col":
|
||||
case "colgroup":
|
||||
case "tr":
|
||||
case "th":
|
||||
case "td":
|
||||
case "caption":
|
||||
enableRemove = false;
|
||||
break;
|
||||
default:
|
||||
enableRemove = true;
|
||||
break;
|
||||
}
|
||||
SetElementEnabled(structRemoveTag, enableRemove);
|
||||
|
||||
var structChangeTag = document.getElementById("structChangeTag");
|
||||
SetElementEnabled(structChangeTag, (tag != "body"));
|
||||
}
|
||||
|
||||
function TableCellFilter(node)
|
||||
{
|
||||
switch (node.nodeName.toLowerCase())
|
||||
{
|
||||
case "td":
|
||||
case "th":
|
||||
case "caption":
|
||||
return NodeFilter.FILTER_ACCEPT;
|
||||
break;
|
||||
default:
|
||||
return NodeFilter.FILTER_SKIP;
|
||||
break;
|
||||
}
|
||||
return NodeFilter.FILTER_SKIP;
|
||||
}
|
||||
|
||||
function StructRemoveTag()
|
||||
{
|
||||
var editor = GetCurrentEditor();
|
||||
if (!editor) return;
|
||||
|
||||
var element = gContextMenuFiringDocumentElement;
|
||||
var offset = 0;
|
||||
var childNodes = element.parentNode.childNodes;
|
||||
|
||||
while (childNodes[offset] != element) {
|
||||
++offset;
|
||||
}
|
||||
|
||||
editor.beginTransaction();
|
||||
|
||||
try {
|
||||
|
||||
var tag = element.nodeName.toLowerCase();
|
||||
if (tag != "table") {
|
||||
MoveChildNodesAfterElement(editor, element, element, offset);
|
||||
}
|
||||
else {
|
||||
|
||||
var nodeIterator = document.createTreeWalker(element,
|
||||
NodeFilter.SHOW_ELEMENT,
|
||||
TableCellFilter,
|
||||
true);
|
||||
var node = nodeIterator.lastChild();
|
||||
while (node) {
|
||||
MoveChildNodesAfterElement(editor, node, element, offset);
|
||||
node = nodeIterator.previousSibling();
|
||||
}
|
||||
|
||||
}
|
||||
editor.deleteNode(element);
|
||||
}
|
||||
catch (e) {};
|
||||
|
||||
editor.endTransaction();
|
||||
}
|
||||
|
||||
function MoveChildNodesAfterElement(editor, element, targetElement, targetOffset)
|
||||
{
|
||||
var childNodes = element.childNodes;
|
||||
var childNodesLength = childNodes.length;
|
||||
var i;
|
||||
for (i = childNodesLength - 1; i >= 0; i--) {
|
||||
var clone = childNodes.item(i).cloneNode(true);
|
||||
editor.insertNode(clone, targetElement.parentNode, targetOffset + 1);
|
||||
}
|
||||
}
|
||||
|
||||
function StructChangeTag()
|
||||
{
|
||||
var textbox = document.createElementNS(XUL_NS, "textbox");
|
||||
textbox.setAttribute("value", gContextMenuNode.getAttribute("value"));
|
||||
textbox.setAttribute("width", gContextMenuNode.boxObject.width);
|
||||
textbox.className = "struct-textbox";
|
||||
|
||||
gContextMenuNode.parentNode.replaceChild(textbox, gContextMenuNode);
|
||||
|
||||
textbox.addEventListener("keypress", OnKeyPress, false);
|
||||
textbox.addEventListener("blur", ResetStructToolbar, true);
|
||||
|
||||
textbox.select();
|
||||
}
|
||||
|
||||
function StructSelectTag()
|
||||
{
|
||||
SelectFocusNodeAncestor(gContextMenuFiringDocumentElement);
|
||||
}
|
||||
|
||||
function OpenAdvancedProperties()
|
||||
{
|
||||
doAdvancedProperties(gContextMenuFiringDocumentElement);
|
||||
}
|
||||
|
||||
function OnKeyPress(event)
|
||||
{
|
||||
var editor = GetCurrentEditor();
|
||||
|
||||
var keyCode = event.keyCode;
|
||||
if (keyCode == 13) {
|
||||
var newTag = event.target.value;
|
||||
|
||||
var element = gContextMenuFiringDocumentElement;
|
||||
|
||||
var offset = 0;
|
||||
var childNodes = element.parentNode.childNodes;
|
||||
while (childNodes.item(offset) != element) {
|
||||
offset++;
|
||||
}
|
||||
|
||||
editor.beginTransaction();
|
||||
|
||||
try {
|
||||
var newElt = editor.document.createElement(newTag);
|
||||
if (newElt) {
|
||||
childNodes = element.childNodes;
|
||||
var childNodesLength = childNodes.length;
|
||||
var i;
|
||||
for (i = 0; i < childNodesLength; i++) {
|
||||
var clone = childNodes.item(i).cloneNode(true);
|
||||
newElt.appendChild(clone);
|
||||
}
|
||||
editor.insertNode(newElt, element.parentNode, offset+1);
|
||||
editor.deleteNode(element);
|
||||
editor.selectElement(newElt);
|
||||
|
||||
window.content.focus();
|
||||
}
|
||||
}
|
||||
catch (e) {}
|
||||
|
||||
editor.endTransaction();
|
||||
|
||||
}
|
||||
else if (keyCode == 27) {
|
||||
// if the user hits Escape, we discard the changes
|
||||
window.content.focus();
|
||||
}
|
||||
}
|
|
@ -1,48 +0,0 @@
|
|||
<?xml version="1.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, released
|
||||
- March 31, 1998.
|
||||
-
|
||||
- The Initial Developer of the Original Code is
|
||||
- Netscape Communications Corporation.
|
||||
- Portions created by the Initial Developer are Copyright (C) 1999
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Charles Manske (cmanske@netscape.com)
|
||||
-
|
||||
- Alternatively, the contents of this file may be used under the terms of
|
||||
- either of 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 ***** -->
|
||||
|
||||
<overlay id="composerOverlay"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
<!-- Items in the Edit menu used only by Composer app -->
|
||||
<menupopup id="edEditMenuPopup">
|
||||
<menuitem id="menu_publishSettings" insertafter="menu_prefsSep" observes="cmd_publishSettings"/>
|
||||
</menupopup>
|
||||
|
||||
</overlay>
|
|
@ -1,311 +0,0 @@
|
|||
<?xml version="1.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, released
|
||||
- March 31, 1998.
|
||||
-
|
||||
- The Initial Developer of the Original Code is
|
||||
- Netscape Communications Corporation.
|
||||
- Portions created by the Initial Developer are Copyright (C) 1999-2000
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Ben Goodger
|
||||
- Michael Lowe
|
||||
- Sammy Ford
|
||||
-
|
||||
- Alternatively, the contents of this file may be used under the terms of
|
||||
- either of 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 ***** -->
|
||||
|
||||
<?xml-stylesheet href="chrome://editor/skin/" type="text/css"?>
|
||||
|
||||
<?xml-stylesheet href="chrome://editor/skin/editorPrimaryToolbar.css" type="text/css"?>
|
||||
<?xml-stylesheet href="chrome://editor/skin/editorFormatToolbar.css" type="text/css"?>
|
||||
<?xml-stylesheet href="chrome://editor/skin/editorModeToolbar.css" type="text/css"?>
|
||||
<?xul-overlay href="chrome://editor/content/editorOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://editor/content/composerOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://editor/content/EditorContextMenuOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://global/content/globalOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://global/content/charsetOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://communicator/content/utilityOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://communicator/content/tasksOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://communicator/content/contentAreaContextOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://communicator/content/sidebar/sidebarOverlay.xul"?>
|
||||
|
||||
<!DOCTYPE window [
|
||||
<!ENTITY % editorDTD SYSTEM "chrome://editor/locale/editor.dtd" >
|
||||
%editorDTD;
|
||||
<!ENTITY % editorOverlayDTD SYSTEM "chrome://editor/locale/editorOverlay.dtd" >
|
||||
%editorOverlayDTD;
|
||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
||||
%brandDTD;
|
||||
]>
|
||||
|
||||
<window id="editorWindow"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
onload="EditorOnLoad()"
|
||||
onunload="EditorShutdown()"
|
||||
onclose="return EditorCanClose()"
|
||||
onfocus="EditorOnFocus()"
|
||||
contenttitlesetting="true"
|
||||
titlemodifier="&editorWindow.titlemodifier;"
|
||||
titlemenuseparator="&editorWindow.titlemodifiermenuseparator;"
|
||||
windowtype="composer:html"
|
||||
width="640" height="480"
|
||||
screenX="10" screenY="10"
|
||||
persist="screenX screenY width height sizemode">
|
||||
|
||||
<script type="application/x-javascript" src="chrome://editor/content/editor.js"/>
|
||||
<script type="application/x-javascript" src="chrome://editor/content/EditorContextMenu.js"/>
|
||||
<script type="application/x-javascript" src="chrome://editor/content/StructBarContextMenu.js"/>
|
||||
<script type="application/x-javascript" src="chrome://editor/content/editorApplicationOverlay.js"/>
|
||||
<script type="application/x-javascript" src="chrome://editor/content/publishprefs.js"/>
|
||||
<script type="application/x-javascript" src="chrome://communicator/content/contentAreaDD.js"/>
|
||||
<script type="application/x-javascript" src="chrome://communicator/content/contentAreaClick.js"/>
|
||||
<script type="application/x-javascript" src="chrome://global/content/printUtils.js"/>
|
||||
<script type="application/x-javascript" src="chrome://global/content/nsDragAndDrop.js"/>
|
||||
|
||||
<popupset id="editorContentContextSet"/>
|
||||
<popup id="sidebarPopup"/>
|
||||
<popup id="popupNotificationMenu"/>
|
||||
|
||||
<commandset id="tasksCommands">
|
||||
<commandset id="globalEditMenuItems"/>
|
||||
<commandset id="selectEditMenuItems"/>
|
||||
<commandset id="undoEditMenuItems"/>
|
||||
<commandset id="clipboardEditMenuItems"/>
|
||||
|
||||
<commandset id="commonEditorMenuItems"/>
|
||||
<commandset id="composerMenuItems"/>
|
||||
<commandset id="composerEditMenuItems"/>
|
||||
<commandset id="composerSaveMenuItems"/>
|
||||
<commandset id="composerStyleMenuItems"/>
|
||||
<commandset id="composerTableMenuItems"/>
|
||||
<commandset id="composerListMenuItems"/>
|
||||
<command id="toggleSidebar"/>
|
||||
</commandset>
|
||||
|
||||
<tooltip id="aHTMLTooltip" onpopupshowing="return FillInHTMLTooltipEditor(this);"/>
|
||||
|
||||
<broadcaster id="args" value="about:blank"/>
|
||||
<broadcaster id="canPrint"/>
|
||||
|
||||
<!-- Interim hack to transition from nsIXULWindowCallbacks/ShowWindowWithArgs
|
||||
<broadcaster id="dialog.start" ready="false"/>
|
||||
<observes element="dialog.start" attribute="ready" onbroadcast="EditorStartup('html')"/>
|
||||
-->
|
||||
<broadcasterset id="broadcasterset">
|
||||
<broadcaster id="Editor:Throbber" busy="false"/>
|
||||
<broadcaster id="Communicator:WorkMode"/>
|
||||
</broadcasterset>
|
||||
|
||||
<!-- keys are appended from the overlay -->
|
||||
<keyset id="editorKeys">
|
||||
<keyset id="tasksKeys"/>
|
||||
<key id="showHideSidebar"/>
|
||||
<!-- eat these tab events here to stop focus from moving -->
|
||||
<key keycode="VK_TAB" oncommand="return true;"/>
|
||||
<key keycode="VK_TAB" modifiers="shift" oncommand="return true;"/>
|
||||
<key keycode="VK_TAB" modifiers="control" oncommand="return true;"/>
|
||||
<key keycode="VK_TAB" modifiers="control,shift" oncommand="return true;"/>
|
||||
</keyset>
|
||||
|
||||
<toolbox class="toolbox-top" id="EditorToolbox">
|
||||
<menubar id="main-menubar" class="chromeclass-menubar" persist="collapsed" grippytooltiptext="&menuBar.tooltip;">
|
||||
<menu id="fileMenu"/>
|
||||
<menu id="editMenu"/>
|
||||
|
||||
<menu id="viewMenu" label="&viewMenu.label;" accesskey="&viewmenu.accesskey;">
|
||||
<!-- id pulls in "Show Sidebar" item from sidebarOverlay -->
|
||||
<menupopup id="menu_View_Popup">
|
||||
<menu id="menu_Toolbars">
|
||||
<menupopup id="view_toolbars_popup">
|
||||
<menuitem id="viewComposerToolbar" label="&compositionToolbarCmd.label;" type="checkbox" accesskey="&compositiontb.accesskey;" command="cmd_viewCompToolbar" />
|
||||
<menuitem id="viewFormatToolbar" label="&formattingToolbarCmd.label;" type="checkbox" accesskey="&formattingtb.accesskey;" command="cmd_viewFormatToolbar" />
|
||||
<menuitem id="viewEditModeToolbar" label="&editmodeToolbarCmd.label;" type="checkbox" accesskey="&editmodetb.accesskey;" command="cmd_viewEditModeToolbar" />
|
||||
<menuitem id="menu_showTaskbar"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuseparator id="viewSep1"/>
|
||||
<menuitem id="viewNormalMode" checked="true"/>
|
||||
<menuitem id="viewAllTagsMode"/>
|
||||
<menuitem id="viewSourceMode"/>
|
||||
<menuitem id="viewPreviewMode"/>
|
||||
<menuseparator id="viewSep2"/>
|
||||
<menu id = "composerCharsetMenu" />
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menu id="insertMenu"/>
|
||||
|
||||
<menu id="formatMenu" label="&formatMenu.label;" accesskey="&formatmenu.accesskey;">
|
||||
<menupopup id="formatMenuPopup">
|
||||
<menuitem id="snapToGrid"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="objectProperties"/>
|
||||
<menuitem id="colorsAndBackground"/>
|
||||
<menuitem id="pageProperties"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menu id="tableMenu"/>
|
||||
|
||||
<!-- tasks menu filled from tasksOverlay -->
|
||||
<menu id="tasksMenu">
|
||||
<menupopup id="taskPopup">
|
||||
<menuitem id="menu_validate" observes="cmd_validate"/>
|
||||
<menuseparator id="sep_validate"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menu id="windowMenu"/>
|
||||
|
||||
<!-- help menu filled from globalOverlay -->
|
||||
<menu id="menu_Help"/>
|
||||
|
||||
<spacer flex="1"/>
|
||||
</menubar>
|
||||
|
||||
<!-- toolbar filled out from editorOverlay -->
|
||||
<!-- add class="standard" for dark blue background (icons need rework first) -->
|
||||
<toolbar class="chromeclass-toolbar toolbar-primary" id="EditToolbar" persist="collapsed"
|
||||
grippytooltiptext="&compositionToolbar.tooltip;">
|
||||
<toolbarbutton id="newButton"/>
|
||||
<toolbarbutton id="openButton"/>
|
||||
<toolbarbutton id="saveButton"/>
|
||||
<toolbarbutton id="publishButton"/>
|
||||
<toolbarbutton id="previewButton"/>
|
||||
<toolbarbutton id="cutButton"/>
|
||||
<toolbarbutton id="copyButton"/>
|
||||
<toolbarbutton id="pasteButton"/>
|
||||
<toolbarbutton id="printButton"/>
|
||||
<toolbarbutton id="findButton"/>
|
||||
<toolbarseparator class="toolbarseparator-primary"/>
|
||||
<toolbarbutton id="linkButton"/>
|
||||
<toolbarbutton id="namedAnchorButton"/>
|
||||
<toolbarbutton id="imageButton"/>
|
||||
<toolbarbutton id="hlineButton"/>
|
||||
<toolbarbutton id="tableButton"/>
|
||||
<toolbarbutton id="spellingButton"/>
|
||||
<spacer flex="1"/>
|
||||
<hbox id="throbber-box" align="center">
|
||||
<button id="navigator-throbber" oncommand="goClickThrobber('editor.throbber.url')" tooltiptext="&throbber.tooltip;">
|
||||
<observes element="Editor:Throbber" attribute="busy"/>
|
||||
</button>
|
||||
</hbox>
|
||||
</toolbar>
|
||||
<toolbar class="chromeclass-toolbar" id="FormatToolbar" persist="collapsed" grippytooltiptext="&formatToolbar.tooltip;">
|
||||
<!-- from editorOverlay -->
|
||||
<menulist id="ParagraphSelect"/>
|
||||
<stack id="ColorButtons"/>
|
||||
<toolbarbutton id="HighlightColorButton"/>
|
||||
|
||||
<toolbarseparator class="toolbarseparator-standard"/>
|
||||
|
||||
<toolbarbutton id="DecreaseFontSizeButton"/>
|
||||
<toolbarbutton id="IncreaseFontSizeButton"/>
|
||||
|
||||
<toolbarseparator class="toolbarseparator-standard"/>
|
||||
|
||||
<toolbarbutton id="boldButton"/>
|
||||
<toolbarbutton id="italicButton"/>
|
||||
<toolbarbutton id="underlineButton"/>
|
||||
|
||||
<toolbarseparator class="toolbarseparator-standard"/>
|
||||
|
||||
<toolbarbutton id="ulButton"/>
|
||||
<toolbarbutton id="olButton"/>
|
||||
<toolbarbutton id="outdentButton"/>
|
||||
<toolbarbutton id="indentButton"/>
|
||||
|
||||
<toolbarseparator class="toolbarseparator-standard"/>
|
||||
|
||||
<toolbarbutton id="align-left-button"/>
|
||||
<toolbarbutton id="align-center-button"/>
|
||||
<toolbarbutton id="align-right-button"/>
|
||||
<toolbarbutton id="align-justify-button"/>
|
||||
|
||||
<toolbarbutton id="absolutePositionButton"/>
|
||||
<toolbarbutton id="decreaseZIndexButton"/>
|
||||
<toolbarbutton id="increaseZIndexButton"/>
|
||||
|
||||
<!-- TODO: Change to a menulist? -->
|
||||
<!-- menu>
|
||||
<button id="AlignPopupButton"/>
|
||||
<menupopup id="AlignmentPopup"/>
|
||||
</menu -->
|
||||
|
||||
|
||||
<spacer flex="1"/>
|
||||
</toolbar>
|
||||
</toolbox>
|
||||
|
||||
<!-- sidebar/toolbar/content/status -->
|
||||
<hbox id="sidebar-parent" flex="1">
|
||||
<!-- From sidebarOverlay.xul -->
|
||||
<vbox id="sidebar-box" class="chromeclass-extrachrome" hidden="true"/>
|
||||
<splitter id="sidebar-splitter" class="chromeclass-extrachrome" hidden="true"/>
|
||||
|
||||
<vbox id="appcontent" flex="1">
|
||||
<deck id="ContentWindowDeck" selectedIndex="0" flex="1">
|
||||
<!-- KLUDGE: Temporary fix for bug 34414:
|
||||
The current editor tag doesn't have a view,
|
||||
which breaks deck frame-hiding mechanism
|
||||
-->
|
||||
<stack>
|
||||
<editor editortype="html" type="content-primary" id="content-frame"
|
||||
context="editorContentContext" flex="1" tooltip="aHTMLTooltip"/>
|
||||
</stack>
|
||||
<vbox>
|
||||
<label id="doctype-text" crop="right"/>
|
||||
<editor type="content" id="content-source" context="editorSourceContext" flex="1"/>
|
||||
</vbox>
|
||||
</deck>
|
||||
|
||||
<hbox id="EditModeToolbar" align="center" hidden="false" persist="collapsed">
|
||||
<tabs id="EditModeTabs" class="tabs-bottom" flex="1">
|
||||
<tab id="NormalModeButton"/>
|
||||
<tab id="TagModeButton"/>
|
||||
<tab id="SourceModeButton"/>
|
||||
<tab id="PreviewModeButton"/>
|
||||
</tabs>
|
||||
</hbox>
|
||||
|
||||
</vbox> <!-- appcontent -->
|
||||
</hbox><!-- sidebar-parent -->
|
||||
|
||||
<!-- Some of this is from globarOverlay.xul -->
|
||||
<statusbar class="chromeclass-status" id="status-bar">
|
||||
<statusbarpanel id="component-bar"/>
|
||||
<statusbarpanel id="structToolbar" flex="1" pack="end">
|
||||
<label id="structSpacer" value="" flex="1"/>
|
||||
</statusbarpanel>
|
||||
<statusbarpanel class="statusbarpanel-iconic" id="offline-status"/>
|
||||
</statusbar>
|
||||
|
||||
|
||||
|
||||
</window>
|
|
@ -1,169 +0,0 @@
|
|||
/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
/* ***** 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.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998-1999
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either of 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 ***** */
|
||||
|
||||
/* Implementations of nsIControllerCommand for composer commands */
|
||||
|
||||
function initEditorContextMenuItems(aEvent)
|
||||
{
|
||||
var shouldShowEditPage = !gContextMenu.onImage && !gContextMenu.onLink && !gContextMenu.onTextInput && !gContextMenu.inDirList;
|
||||
gContextMenu.showItem( "context-editpage", shouldShowEditPage );
|
||||
|
||||
var shouldShowEditLink = gContextMenu.onSaveableLink;
|
||||
gContextMenu.showItem( "context-editlink", shouldShowEditLink );
|
||||
|
||||
// Hide the applications separator if there's no add-on apps present.
|
||||
gContextMenu.showItem("context-sep-apps", gContextMenu.shouldShowSeparator("context-sep-apps"));
|
||||
}
|
||||
|
||||
function initEditorContextMenuListener(aEvent)
|
||||
{
|
||||
var popup = document.getElementById("contentAreaContextMenu");
|
||||
if (popup)
|
||||
popup.addEventListener("popupshowing", initEditorContextMenuItems, false);
|
||||
}
|
||||
|
||||
addEventListener("load", initEditorContextMenuListener, false);
|
||||
|
||||
function editDocument(aDocument)
|
||||
{
|
||||
if (!aDocument)
|
||||
aDocument = window.content.document;
|
||||
|
||||
editPage(aDocument.URL);
|
||||
}
|
||||
|
||||
function editPageOrFrame()
|
||||
{
|
||||
var focusedWindow = document.commandDispatcher.focusedWindow;
|
||||
|
||||
// if the uri is a specific frame, grab it, else use the frameset uri
|
||||
// and let Composer handle error if necessary
|
||||
editPage(getContentFrameURI(focusedWindow));
|
||||
}
|
||||
|
||||
// Any non-editor window wanting to create an editor with a URL
|
||||
// should use this instead of "window.openDialog..."
|
||||
// We must always find an existing window with requested URL
|
||||
function editPage(url)
|
||||
{
|
||||
// Always strip off "view-source:" and #anchors
|
||||
url = url.replace(/^view-source:/, "").replace(/#.*/, "");
|
||||
|
||||
// if the current window is a browser window, then extract the current charset menu setting from the current
|
||||
// document and use it to initialize the new composer window...
|
||||
|
||||
var wintype = document.documentElement.getAttribute('windowtype');
|
||||
var charsetArg;
|
||||
|
||||
if (wintype == "navigator:browser" && content.document)
|
||||
charsetArg = "charset=" + content.document.characterSet;
|
||||
|
||||
try {
|
||||
var uri = createURI(url, null, null);
|
||||
|
||||
var windowManager = Components.classes['@mozilla.org/appshell/window-mediator;1'].getService();
|
||||
var windowManagerInterface = windowManager.QueryInterface( Components.interfaces.nsIWindowMediator);
|
||||
var enumerator = windowManagerInterface.getEnumerator( "composer:html" );
|
||||
var emptyWindow;
|
||||
while ( enumerator.hasMoreElements() )
|
||||
{
|
||||
var win = enumerator.getNext().QueryInterface(Components.interfaces.nsIDOMWindowInternal);
|
||||
if ( win && win.IsWebComposer())
|
||||
{
|
||||
if (CheckOpenWindowForURIMatch(uri, win))
|
||||
{
|
||||
// We found an editor with our url
|
||||
win.focus();
|
||||
return;
|
||||
}
|
||||
else if (!emptyWindow && win.PageIsEmptyAndUntouched())
|
||||
{
|
||||
emptyWindow = win;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (emptyWindow)
|
||||
{
|
||||
// we have an empty window we can use
|
||||
if (emptyWindow.IsInHTMLSourceMode())
|
||||
emptyWindow.SetEditMode(emptyWindow.PreviousNonSourceDisplayMode);
|
||||
emptyWindow.EditorLoadUrl(url);
|
||||
emptyWindow.focus();
|
||||
emptyWindow.SetSaveAndPublishUI(url);
|
||||
return;
|
||||
}
|
||||
|
||||
// Create new Composer window
|
||||
openDialog("chrome://editor/content", "_blank", "chrome,all,dialog=no", url, charsetArg);
|
||||
|
||||
} catch(e) {}
|
||||
}
|
||||
|
||||
function createURI(urlstring)
|
||||
{
|
||||
try {
|
||||
var ioserv = Components.classes["@mozilla.org/network/io-service;1"]
|
||||
.getService(Components.interfaces.nsIIOService);
|
||||
return ioserv.newURI(urlstring, null, null);
|
||||
} catch (e) {}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
function CheckOpenWindowForURIMatch(uri, win)
|
||||
{
|
||||
try {
|
||||
var contentWindow = win.content; // need to QI win to nsIDOMWindowInternal?
|
||||
var contentDoc = contentWindow.document;
|
||||
var htmlDoc = contentDoc.QueryInterface(Components.interfaces.nsIDOMHTMLDocument);
|
||||
var winuri = createURI(htmlDoc.URL);
|
||||
return winuri.equals(uri);
|
||||
} catch (e) {}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
function NewEditorFromTemplate()
|
||||
{
|
||||
// XXX not implemented
|
||||
}
|
||||
|
||||
function NewEditorFromDraft()
|
||||
{
|
||||
// XXX not implemented
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!-- retrieve generic commands -->
|
||||
<?xul-overlay href="chrome://messenger/content/mailOverlay.xul"?>
|
||||
|
||||
<!DOCTYPE overlay SYSTEM "chrome://editor/locale/editorNavigatorOverlay.dtd" >
|
||||
|
||||
<overlay id="editorMailOverlay"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
<script type="application/x-javascript" src="editorApplicationOverlay.js"/>
|
||||
|
||||
<!-- navigator specific commands -->
|
||||
<commandset id="tasksCommands">
|
||||
<!-- XXX insert commands here -->
|
||||
</commandset>
|
||||
|
||||
<!-- navigator specific UI items -->
|
||||
<menupopup id="menu_NewPopup">
|
||||
<!-- XXX insert File->New Menu add-ins here -->
|
||||
</menupopup>
|
||||
|
||||
<menupopup id="menu_FilePopup">
|
||||
<!-- XXX insert File Menu add-ins here -->
|
||||
</menupopup>
|
||||
</overlay>
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!-- retrieve generic commands -->
|
||||
<!-- <?xul-overlay href="chrome://messenger/content/mailOverlay.xul"?> -->
|
||||
|
||||
<!DOCTYPE overlay SYSTEM "chrome://editor/locale/editorNavigatorOverlay.dtd" >
|
||||
|
||||
<overlay id="editorNavigatorOverlay"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
<script type="application/x-javascript" src="editorApplicationOverlay.js"/>
|
||||
|
||||
<!-- navigator specific commands -->
|
||||
<commandset id="tasksCommands">
|
||||
<!-- XXX insert commands here -->
|
||||
</commandset>
|
||||
|
||||
<!-- navigator specific UI items -->
|
||||
<menupopup id="menu_NewPopup">
|
||||
<!-- XXX insert File->New Menu add-ins here -->
|
||||
</menupopup>
|
||||
|
||||
<menupopup id="menu_FilePopup">
|
||||
<!-- XXX insert File Menu add-ins here -->
|
||||
</menupopup>
|
||||
</overlay>
|
||||
|
|
@ -1,51 +0,0 @@
|
|||
/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
/* ***** 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.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is
|
||||
* Netscape Communications Corporation.
|
||||
* Portions created by the Initial Developer are Copyright (C) 1998-1999
|
||||
* the Initial Developer. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of
|
||||
* either of 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 ***** */
|
||||
|
||||
function EditorNew()
|
||||
{
|
||||
dump("In EditorNew..\n");
|
||||
}
|
||||
|
||||
function EditorNewFromTemplate()
|
||||
{
|
||||
dump("In EditorNewFromTemplate..\n");
|
||||
}
|
||||
|
||||
function EditorNewFromDraft()
|
||||
{
|
||||
dump("In EditorNewFromDraft..\n");
|
||||
}
|
|
@ -1,918 +0,0 @@
|
|||
<?xml version="1.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, released
|
||||
- March 31, 1998.
|
||||
-
|
||||
- The Initial Developer of the Original Code is
|
||||
- Netscape Communications Corporation.
|
||||
- Portions created by the Initial Developer are Copyright (C) 1999
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Ryan Cassin (rcassin@supernova.org)
|
||||
- Daniel Glazman (glazman@netscape.com)
|
||||
- Aaron Kaluszka (ask@swva.net)
|
||||
- Stephen Donner (technutz@netscape.net)
|
||||
-
|
||||
- Alternatively, the contents of this file may be used under the terms of
|
||||
- either of 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 ***** -->
|
||||
|
||||
<!DOCTYPE overlay [
|
||||
<!ENTITY % editorOverlayDTD SYSTEM "chrome://editor/locale/editorOverlay.dtd">
|
||||
%editorOverlayDTD;
|
||||
<!ENTITY % platformCommunicatorDTD SYSTEM
|
||||
"chrome://communicator-platform/locale/platformCommunicatorOverlay.dtd">
|
||||
%platformCommunicatorDTD;
|
||||
]>
|
||||
|
||||
<overlay id="editorOverlay"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
<script type="application/x-javascript" src="chrome://editor/content/editorUtilities.js"/>
|
||||
<script type="application/x-javascript" src="chrome://editor/content/ComposerCommands.js"/>
|
||||
|
||||
<keyset id="editorKeys">
|
||||
<!-- defined in globalOverlay -->
|
||||
<key id="key_newNavigator"/>
|
||||
<key id="key_newBlankPage"/>
|
||||
|
||||
<key id="openeditorkb" key="&fileopen.keybinding;" observes="cmd_open" modifiers="accel"/>
|
||||
<key id="openremoteeditorkb" key="&fileopenremote.keybinding;" observes="cmd_openRemote" modifiers="accel,shift"/>
|
||||
<key id="savekb" key="&filesave.keybinding;" observes="cmd_save" modifiers="accel"/>
|
||||
<key id="publishkb" key="&filesave.keybinding;" observes="cmd_publish" modifiers="accel,shift"/>
|
||||
<key id="closekb" key="&fileclose.keybinding;" observes="cmd_close" modifiers="accel"/>
|
||||
<key id="printkb" key="&fileprint.keybinding;" observes="cmd_print" modifiers="accel"/>
|
||||
<key id="key_quit"/>
|
||||
<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="pastequotationkb" key="&editpastequotation.keybinding;" observes="cmd_pasteQuote" modifiers="accel, shift"/>
|
||||
<key id="findkb" key="&editfind.keybinding;" observes="cmd_find" modifiers="accel"/>
|
||||
<key id="findnextkb" key="&editfindnext.keybinding;" observes="cmd_findNext" modifiers="accel"/>
|
||||
<key id="findprevkb" key="&editfindprev.keybinding;" observes="cmd_findPrev" modifiers="accel,shift"/>
|
||||
<key keycode="&editfindnext.keybinding2;" observes="cmd_findNext"/>
|
||||
<key keycode="&editfindprev.keybinding2;" observes="cmd_findPrev" modifiers="shift"/>
|
||||
#ifdef MOZ_X11
|
||||
<key keycode="&editfind.keybinding2;" observes="cmd_find"/>
|
||||
#endif
|
||||
<key id="checkspellingkb"
|
||||
key="&editcheckspelling.keybinding;"
|
||||
observes="cmd_spelling"
|
||||
modifiers="&accel.emacs_conflict;"
|
||||
disabled="true"
|
||||
/>
|
||||
|
||||
<key id="boldkb" key="&stylebold.keybinding;" observes="cmd_bold" modifiers="accel"/>
|
||||
<key id="italickb" key="&styleitalic.keybinding;" observes="cmd_italic" modifiers="accel"/>
|
||||
<key id="underlinekb" key="&styleunderline.keybinding;" observes="cmd_underline" modifiers="accel"/>
|
||||
<key id="fixedwidthkb" key="&formatfontfixed.keybinding;" observes="cmd_tt" modifiers="accel"/>
|
||||
|
||||
<key id="increaseindentkb" key="&formatindent.keybinding;" observes="cmd_indent" modifiers="accel"/>
|
||||
<key id="decreaseindentkb" key="&formatoutdent.keybinding;" observes="cmd_outdent" modifiers="accel"/>
|
||||
|
||||
<key id="removestyleskb" key="&formatremovestyles.keybinding;" observes="cmd_removeStyles" modifiers="accel, shift"/>
|
||||
<key id="removestyleskb2" key=" " observes="cmd_removeStyles" modifiers="accel"/>
|
||||
<key id="removelinkskb" key="&formatremovelinks.keybinding;" observes="cmd_removeLinks" modifiers="accel, shift"/>
|
||||
<key id="removenamedanchorskb" key="&formatremovenamedanchors.keybinding;" observes="cmd_removeNamedAnchors" modifiers="accel, shift"/>
|
||||
<key id="decreasefontsizekb" key="&decreaseFontSize.keybinding;" observes="cmd_decreaseFont" modifiers="accel"/>
|
||||
<key id="increasefontsizekb" key="&increaseFontSize.keybinding;" observes="cmd_increaseFont" modifiers="accel"/>
|
||||
<key key="&increaseFontSize.keybinding;" observes="cmd_increaseFont" modifiers="accel,shift"/>
|
||||
<key key="&increaseFontSize.keybinding2;" observes="cmd_increaseFont" modifiers="accel"/>
|
||||
|
||||
<key id="insertlinkkb" key="&insertlink.keybinding;" observes="cmd_link" modifiers="accel"/>
|
||||
</keyset>
|
||||
|
||||
<!-- commands updated when the editor gets created -->
|
||||
<commandset id="commonEditorMenuItems"
|
||||
commandupdater="true"
|
||||
events="create"
|
||||
oncommandupdate="goUpdateComposerMenuItems(this)"
|
||||
>
|
||||
<command id="cmd_open" oncommand="goDoCommand('cmd_open')"/>
|
||||
<command id="cmd_openRemote" label="&openremoteCmd.label;" oncommand="goDoCommand('cmd_openRemote')"/>
|
||||
<command id="cmd_close" label="&closeCmd.label;" oncommand="goDoCommand('cmd_close')"/>
|
||||
<command id="cmd_printSetup" oncommand="goDoCommand('cmd_printSetup')"/>
|
||||
<!--
|
||||
<command id="cmd_printPreview" label="&printPreviewCmd.label;" oncommand="goDoCommand('cmd_printPreview')"/>
|
||||
-->
|
||||
<command id="cmd_print" oncommand="goDoCommand('cmd_print')"/>
|
||||
<command id="cmd_quit" oncommand="goDoCommand('cmd_quit')"/>
|
||||
</commandset>
|
||||
|
||||
<commandset id="composerMenuItems"
|
||||
commandupdater="true"
|
||||
events="create, mode_switch"
|
||||
oncommandupdate="goUpdateComposerMenuItems(this)"
|
||||
>
|
||||
<!-- format menu -->
|
||||
<command id="cmd_listProperties" oncommand="goDoCommand('cmd_listProperties')"/>
|
||||
<command id="cmd_pageProperties" oncommand="goDoCommand('cmd_pageProperties')"/>
|
||||
<command id="cmd_colorProperties" oncommand="goDoCommand('cmd_colorProperties')"/>
|
||||
|
||||
<command id="cmd_link" oncommand="goDoCommand('cmd_link')"/>
|
||||
<command id="cmd_anchor" oncommand="goDoCommand('cmd_anchor')"/>
|
||||
<command id="cmd_image" oncommand="goDoCommand('cmd_image')"/>
|
||||
<command id="cmd_hline" oncommand="goDoCommand('cmd_hline')"/>
|
||||
<command id="cmd_table" oncommand="goDoCommand('cmd_table')"/>
|
||||
<command id="cmd_form" oncommand="goDoCommand('cmd_form')"/>
|
||||
<command id="cmd_inputtag" oncommand="goDoCommand('cmd_inputtag')"/>
|
||||
<command id="cmd_inputimage" oncommand="goDoCommand('cmd_inputimage')"/>
|
||||
<command id="cmd_textarea" oncommand="goDoCommand('cmd_textarea')"/>
|
||||
<command id="cmd_select" oncommand="goDoCommand('cmd_select')"/>
|
||||
<command id="cmd_button" oncommand="goDoCommand('cmd_button')"/>
|
||||
<command id="cmd_label" oncommand="goDoCommand('cmd_label')"/>
|
||||
<command id="cmd_fieldset" oncommand="goDoCommand('cmd_fieldset')"/>
|
||||
<command id="cmd_isindex" oncommand="goDoCommand('cmd_isindex')"/>
|
||||
<command id="cmd_objectProperties" oncommand="goDoCommand('cmd_objectProperties')"/>
|
||||
<command id="cmd_insertChars" oncommand="goDoCommand('cmd_insertChars')" label="&insertCharsCmd.label;"/>
|
||||
<command id="cmd_insertHTMLWithDialog" oncommand="goDoCommand('cmd_insertHTMLWithDialog')" label="&insertHTMLCmd.label;"/>
|
||||
|
||||
<command id="cmd_insertBreak" oncommand="goDoCommand('cmd_insertBreak')"/>
|
||||
<command id="cmd_insertBreakAll" oncommand="goDoCommand('cmd_insertBreakAll')"/>
|
||||
<command id="cmd_NormalMode" oncommand="goDoCommand('cmd_NormalMode')" label="&NormalMode.label;"/>
|
||||
<command id="cmd_AllTagsMode" oncommand="goDoCommand('cmd_AllTagsMode')" label="&AllTagsMode.label;"/>
|
||||
<command id="cmd_HTMLSourceMode" oncommand="goDoCommand('cmd_HTMLSourceMode')"/>
|
||||
<command id="cmd_PreviewMode" oncommand="goDoCommand('cmd_PreviewMode')" label="&PreviewMode.label;"/>
|
||||
|
||||
<!-- only used in context popup menu -->
|
||||
<command id="cmd_editLink" oncommand="goDoCommand('cmd_editLink')"/>
|
||||
|
||||
<!-- dummy command used just to disable things in non-HTML modes -->
|
||||
<command id="cmd_renderedHTMLEnabler"/>
|
||||
</commandset>
|
||||
|
||||
<commandset id="composerSaveMenuItems"
|
||||
commandupdater="true"
|
||||
events="create, save"
|
||||
oncommandupdate="goUpdateComposerMenuItems(this)"
|
||||
>
|
||||
<command id="cmd_save" label="&saveCmd.label;" oncommand="goDoCommand('cmd_save')"/>
|
||||
<command id="cmd_saveAs" label="&saveAsCmd.label;" oncommand="goDoCommand('cmd_saveAs')"/>
|
||||
<command id="cmd_exportToText" label="&exportToTextCmd.label;" oncommand="goDoCommand('cmd_exportToText')"/>
|
||||
<command id="cmd_saveAndChangeEncoding" label="&saveAsChangeEncodingCmd.label;" oncommand="goDoCommand('cmd_saveAndChangeEncoding')"/>
|
||||
<command id="cmd_publish" label="&publishCmd.label;" oncommand="goDoCommand('cmd_publish')"/>
|
||||
<command id="cmd_publishAs" label="&publishAsCmd.label;" oncommand="goDoCommand('cmd_publishAs')"/>
|
||||
<command id="cmd_revert" label="&fileRevert.label;" oncommand="goDoCommand('cmd_revert')"/>
|
||||
<command id="cmd_preview" oncommand="goDoCommand('cmd_preview')"/>
|
||||
<command id="cmd_editSendPage" label="&sendPageCmd.label;"
|
||||
accesskey="&sendPage.accesskey;" oncommand="goDoCommand('cmd_editSendPage')"/>
|
||||
</commandset>
|
||||
|
||||
|
||||
<!-- edit menu commands. These get updated by code in globalOverlay.js -->
|
||||
<commandset id="composerEditMenuItems"
|
||||
commandupdater="true"
|
||||
events="create, mode_switch"
|
||||
oncommandupdate="goUpdateComposerMenuItems(this)"
|
||||
>
|
||||
<command id="cmd_undo"/>
|
||||
<command id="cmd_redo"/>
|
||||
<command id="cmd_cut"/>
|
||||
<command id="cmd_copy"/>
|
||||
<command id="cmd_paste"/>
|
||||
<command id="cmd_pasteNoFormatting" oncommand="goDoCommand('cmd_pasteNoFormatting')"
|
||||
label="&pasteNoFormatting.label;" accesskey="&pasteNoFormatting.accesskey;"/>
|
||||
<command id="cmd_delete"/>
|
||||
<command id="cmd_selectAll"/>
|
||||
<command id="cmd_preferences" oncommand="goDoCommand('cmd_preferences')"/>
|
||||
<command id="cmd_find" oncommand="goDoCommand('cmd_find')"/>
|
||||
<command id="cmd_findNext" oncommand="goDoCommand('cmd_findNext')" label="&findAgainCmd.label;"/>
|
||||
<command id="cmd_findPrev" oncommand="goDoCommand('cmd_findPrev')" label="&findPrevCmd.label;"/>
|
||||
<command id="cmd_spelling" oncommand="goDoCommand('cmd_spelling')"/>
|
||||
<command id="cmd_validate" label="&validateCmd.label;" accesskey="&validate.accesskey;" oncommand="goDoCommand('cmd_validate')"/>
|
||||
<command id="cmd_checkLinks" oncommand="goDoCommand('cmd_checkLinks')"/>
|
||||
<command id="cmd_pasteQuote" oncommand="goDoCommand('cmd_pasteQuote')" label="&pasteAsQuotationCmd.label;"/>
|
||||
<command id="cmd_publishSettings" label="&publishSettings.label;" accesskey="&publishSettings.accesskey;" oncommand="goDoCommand('cmd_publishSettings')"/>
|
||||
</commandset>
|
||||
|
||||
<!-- style related commands that update on creation, and on selection change -->
|
||||
<commandset id="composerStyleMenuItems"
|
||||
commandupdater="true"
|
||||
events="create, style, mode_switch"
|
||||
oncommandupdate="goUpdateComposerMenuItems(this)"
|
||||
>
|
||||
<command id="cmd_bold" state="false" oncommand="doStyleUICommand('cmd_bold')"/>
|
||||
<command id="cmd_italic" state="false" oncommand="doStyleUICommand('cmd_italic')"/>
|
||||
<command id="cmd_underline" state="false" oncommand="doStyleUICommand('cmd_underline')"/>
|
||||
<command id="cmd_tt" state="false" oncommand="doStyleUICommand('cmd_tt')"/>
|
||||
<command id="cmd_smiley"/>
|
||||
|
||||
<command id="cmd_strikethrough" state="false" oncommand="doStyleUICommand('cmd_strikethrough');"/>
|
||||
<command id="cmd_superscript" state="false" oncommand="doStyleUICommand('cmd_superscript');"/>
|
||||
<command id="cmd_subscript" state="false" oncommand="doStyleUICommand('cmd_subscript');"/>
|
||||
<command id="cmd_nobreak" state="false" oncommand="doStyleUICommand('cmd_nobreak');"/>
|
||||
|
||||
<command id="cmd_em" state="false" oncommand="doStyleUICommand('cmd_em')"/>
|
||||
<command id="cmd_strong" state="false" oncommand="doStyleUICommand('cmd_strong')"/>
|
||||
<command id="cmd_cite" state="false" oncommand="doStyleUICommand('cmd_cite')"/>
|
||||
<command id="cmd_abbr" state="false" oncommand="doStyleUICommand('cmd_abbr')"/>
|
||||
<command id="cmd_acronym" state="false" oncommand="doStyleUICommand('cmd_acronym')"/>
|
||||
<command id="cmd_code" state="false" oncommand="doStyleUICommand('cmd_code')"/>
|
||||
<command id="cmd_samp" state="false" oncommand="doStyleUICommand('cmd_samp')"/>
|
||||
<command id="cmd_var" state="false" oncommand="doStyleUICommand('cmd_var')"/>
|
||||
|
||||
<command id="cmd_ul" state="false" oncommand="doStyleUICommand('cmd_ul')"/>
|
||||
<command id="cmd_ol" state="false" oncommand="doStyleUICommand('cmd_ol')"/>
|
||||
|
||||
<command id="cmd_indent" oncommand="goDoCommand('cmd_indent')"/>
|
||||
<command id="cmd_outdent" oncommand="goDoCommand('cmd_outdent')"/>
|
||||
|
||||
<!-- the state attribute gets filled with the paragraph format before the command is exectued -->
|
||||
<command id="cmd_paragraphState" state="" oncommand="doStatefulCommand('cmd_paragraphState', event.target.value)"/>
|
||||
<command id="cmd_fontFace" state="" oncommand="doStatefulCommand('cmd_fontFace', event.target.value)"/>
|
||||
|
||||
<!-- No "oncommand", use EditorSelectColor() to bring up color dialog -->
|
||||
<command id="cmd_fontColor" state=""/>
|
||||
<command id="cmd_backgroundColor" state=""/>
|
||||
<command id="cmd_highlight" state="transparent" oncommand="EditorSelectColor('Highlight', event);"/>
|
||||
|
||||
<command id="cmd_fontSize" oncommand="goDoCommand('cmd_fontSize')"/>
|
||||
<command id="cmd_align" state=""/>
|
||||
|
||||
<command id="cmd_absPos" state="" oncommand="goDoCommand('cmd_absPos')"/>
|
||||
<command id="cmd_increaseZIndex" state="" oncommand="goDoCommand('cmd_increaseZIndex')"/>
|
||||
<command id="cmd_decreaseZIndex" state="" oncommand="goDoCommand('cmd_decreaseZIndex')"/>
|
||||
|
||||
<command id="cmd_advancedProperties" oncommand="goDoCommand('cmd_advancedProperties')"/>
|
||||
|
||||
<command id="cmd_increaseFont" oncommand="goDoCommand('cmd_increaseFont')"/>
|
||||
<command id="cmd_decreaseFont" oncommand="goDoCommand('cmd_decreaseFont')"/>
|
||||
|
||||
<command id="cmd_removeStyles" oncommand="goDoCommand('cmd_removeStyles')"/>
|
||||
<command id="cmd_removeLinks" oncommand="goDoCommand('cmd_removeLinks')"/>
|
||||
<command id="cmd_removeNamedAnchors" oncommand="goDoCommand('cmd_removeNamedAnchors')"/>
|
||||
<command id="cmd_updateStructToolbar" oncommand="goDoCommand('cmd_updateStructToolbar')"/>
|
||||
</commandset>
|
||||
|
||||
<!-- commands updated only when the menu gets created -->
|
||||
<commandset id="composerListMenuItems"
|
||||
commandupdater="true"
|
||||
events="create, mode_switch"
|
||||
oncommandupdate="goUpdateComposerMenuItems(this)">
|
||||
<!-- List menu -->
|
||||
<command id="cmd_dt" oncommand="doStyleUICommand('cmd_dt')"/>
|
||||
<command id="cmd_dd" oncommand="doStyleUICommand('cmd_dd')"/>
|
||||
<command id="cmd_removeList" oncommand="goDoCommand('cmd_removeList')"/>
|
||||
<!-- cmd_ul and cmd_ol are shared with toolbar and are in composerStyleMenuItems commandset -->
|
||||
</commandset>
|
||||
|
||||
<commandset id="composerTableMenuItems"
|
||||
commandupdater="true"
|
||||
events="create, mode_switch"
|
||||
oncommandupdate="goUpdateTableMenuItems(this)">
|
||||
<!-- Table menu -->
|
||||
<command id="cmd_SelectTable" oncommand="goDoCommand('cmd_SelectTable')"/>
|
||||
<command id="cmd_SelectRow" oncommand="goDoCommand('cmd_SelectRow')"/>
|
||||
<command id="cmd_SelectColumn" oncommand="goDoCommand('cmd_SelectColumn')"/>
|
||||
<command id="cmd_SelectCell" oncommand="goDoCommand('cmd_SelectCell')"/>
|
||||
<command id="cmd_SelectAllCells" oncommand="goDoCommand('cmd_SelectAllCells')"/>
|
||||
<command id="cmd_InsertTable" oncommand="goDoCommand('cmd_InsertTable')"/>
|
||||
<command id="cmd_InsertRowAbove" oncommand="goDoCommand('cmd_InsertRowAbove')"/>
|
||||
<command id="cmd_InsertRowBelow" oncommand="goDoCommand('cmd_InsertRowBelow')"/>
|
||||
<command id="cmd_InsertColumnBefore" oncommand="goDoCommand('cmd_InsertColumnBefore')"/>
|
||||
<command id="cmd_InsertColumnAfter" oncommand="goDoCommand('cmd_InsertColumnAfter')"/>
|
||||
<command id="cmd_InsertCellBefore" oncommand="goDoCommand('cmd_InsertCellBefore')"/>
|
||||
<command id="cmd_InsertCellAfter" oncommand="goDoCommand('cmd_InsertCellAfter')"/>
|
||||
<command id="cmd_DeleteTable" oncommand="goDoCommand('cmd_DeleteTable')"/>
|
||||
<command id="cmd_DeleteRow" oncommand="goDoCommand('cmd_DeleteRow')"/>
|
||||
<command id="cmd_DeleteColumn" oncommand="goDoCommand('cmd_DeleteColumn')"/>
|
||||
<command id="cmd_DeleteCell" oncommand="goDoCommand('cmd_DeleteCell')"/>
|
||||
<command id="cmd_DeleteCellContents" oncommand="goDoCommand('cmd_DeleteCellContents')"/>
|
||||
<command id="cmd_NormalizeTable" oncommand="goDoCommand('cmd_NormalizeTable')"/>
|
||||
<command id="cmd_JoinTableCells" oncommand="goDoCommand('cmd_JoinTableCells')"/>
|
||||
<command id="cmd_SplitTableCell" oncommand="goDoCommand('cmd_SplitTableCell')"/>
|
||||
<command id="cmd_ConvertToTable" oncommand="goDoCommand('cmd_ConvertToTable')"/>
|
||||
<command id="cmd_TableOrCellColor" oncommand="goDoCommand('cmd_TableOrCellColor')"/>
|
||||
<command id="cmd_editTable" oncommand="goDoCommand('cmd_editTable')"/>
|
||||
</commandset>
|
||||
|
||||
<broadcasterset id="broadcasterset">
|
||||
<!-- Broadcasters/commands with no other home -->
|
||||
<!-- view menu -->
|
||||
<command id="cmd_newNavigator"/>
|
||||
<command id="cmd_newEditor"/>
|
||||
<command id="cmd_newEditorTemplate"/>
|
||||
<command id="cmd_newEditorDraft"/>
|
||||
|
||||
<command id="cmd_viewCompToolbar" oncommand="goToggleToolbar('EditToolbar','cmd_viewCompToolbar');" checked="true"/>
|
||||
<command id="cmd_viewFormatToolbar" oncommand="goToggleToolbar('FormatToolbar','cmd_viewFormatToolbar');" checked="true"/>
|
||||
<command id="cmd_viewEditModeToolbar" oncommand="goToggleToolbar('EditModeToolbar','cmd_viewEditModeToolbar');" checked="true"/>
|
||||
|
||||
<!-- Obsolete; these will go away -->
|
||||
<command id="Editor:Font:Size" fontsize=""/>
|
||||
</broadcasterset>
|
||||
|
||||
<!-- File menu items -->
|
||||
<!-- Note: globalOverlay.xul uses menu_newEditor, but we want different menu item text
|
||||
so we use our own id, label, and accesskey but connect to the same global key and broadcaster node
|
||||
-->
|
||||
<menu id="fileMenu" label="&fileMenu.label;" accesskey="&filemenu.accesskey;">
|
||||
<menupopup id="menu_FilePopup" onpopupshowing="EditorInitFileMenu();">
|
||||
<menu id="menu_New">
|
||||
<menupopup id="menu_NewPopup">
|
||||
<menuitem id="menu_newBlankPage" label="&newBlankPageCmd.label;"
|
||||
accesskey="&newBlankPage.accesskey;" key="key_newBlankPage"
|
||||
command="cmd_newEditor"/>
|
||||
<menuseparator id="composerBeginGlobalNewItems"/>
|
||||
<!-- From globalOverlay.xul -->
|
||||
<menuitem id="menu_newNavigator" observes="cmd_newNavigator"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuitem accesskey="&fileopenremote.accesskey;" key="openremoteeditorkb" observes="cmd_openRemote"/>
|
||||
<menuitem accesskey="&fileopen.accesskey;" key="openeditorkb" observes="cmd_open" label="&openFileCmd.label;"/>
|
||||
<menu id="menu_RecentFiles" accesskey="&filerecentmenu.accesskey;" label="&fileRecentMenu.label;"
|
||||
onpopupshowing="BuildRecentPagesMenu();">
|
||||
<menupopup id="menupopup_RecentFiles" oncommand="editPage(event.target.getAttribute('value'), window, false);"/>
|
||||
<!-- menuitems appended at runtime -->
|
||||
</menu>
|
||||
<menuitem accesskey="&fileclose.accesskey;" key="closekb" observes="cmd_close"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="saveMenuitem" accesskey="&filesave.accesskey;" key="savekb" observes="cmd_save"/>
|
||||
<menuitem accesskey="&filesaveas.accesskey;" observes="cmd_saveAs"/>
|
||||
<menuitem accesskey="&filesaveandchangeencoding.accesskey;" observes="cmd_saveAndChangeEncoding"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="publishMenuitem" accesskey="&publishcmd.accesskey;" key="publishkb" observes="cmd_publish"/>
|
||||
<menuitem accesskey="&publishas.accesskey;" observes="cmd_publishAs"/>
|
||||
<menuseparator/>
|
||||
<menuitem accesskey="&filerevert.accesskey;" observes="cmd_revert"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="fileExportToText" accesskey="&fileexporttotext.accesskey;" observes="cmd_exportToText"/>
|
||||
<menuitem id="previewInBrowser" label="&previewCmd.label;" accesskey="&filepreview.accesskey;" observes="cmd_preview"/>
|
||||
<!-- menuitem id="menu_SendPage" is merged here from mailEditorOverlay.xul,
|
||||
where "position" is assumed to be just after 'previewInBrowser' -->
|
||||
<menuitem id="printSetupMenuItem" accesskey="&fileprintsetup.accesskey;" label="&printSetupCmd.label;" command="cmd_printSetup"/>
|
||||
<menuitem id="printMenuItem" accesskey="&fileprint.accesskey;" key="printkb" observes="cmd_print" label="&printCmd.label;"/>
|
||||
<!-- The Exit/Quit item is merged from platformGlobalOverlay.xul -->
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menu id="editMenu" label="&editMenu.label;" accesskey="&editmenu.accesskey;">
|
||||
<menupopup id="edEditMenuPopup">
|
||||
<!-- from utilityOverlay.xul -->
|
||||
<menuitem id="menu_undo"/>
|
||||
<menuitem id="menu_redo"/>
|
||||
<menuseparator id="edEditMenuSep1" />
|
||||
<menuitem id="menu_cut"/>
|
||||
<menuitem id="menu_copy"/>
|
||||
<menuitem id="menu_paste"/>
|
||||
<menuitem id="menu_pasteNoFormatting" observes="cmd_pasteNoFormatting"/>
|
||||
|
||||
<!-- PasteAs not implemented yet
|
||||
<menu id="menu_pasteAs" label="&pasteAs.label;" accesskey="&pasteAs.accesskey;">
|
||||
<menupopup onpopupshowing="InitPasteAsMenu();">
|
||||
<menuitem id="menu_pasteText" label="&pasteTextCmd.label;" accesskey="&pasteText.accesskey;"/>
|
||||
<menuitem id="menu_pasteImage" label="&pasteImageCmd.label;" accesskey="&pasteImage.accesskey;"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="menu_pasteRows" label="&pasteRowsCmd.label;" accesskey="&pasteRows.accesskey;"/>
|
||||
<menuitem id="menu_pasteColumns" label="&pasteColumnsCmd.label;" accesskey="&pasteColumns.accesskey;"/>
|
||||
<menuitem id="menu_pasteTable" accesskey="&pasteTable.accesskey;"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
-->
|
||||
<menuitem id="menu_delete"/>
|
||||
<menuseparator id="edEditMenuSep2" />
|
||||
<menuitem id="menu_selectAll"/>
|
||||
<menuseparator id="sep_find"/>
|
||||
<menuitem id="menu_find" accesskey="&editfind.accesskey;" key="findkb" observes="cmd_find" label="&findCmd.label;"/>
|
||||
<menuitem id="menu_findnext" accesskey="&editfindnext.accesskey;" key="findnextkb" observes="cmd_findNext"/>
|
||||
<menuitem id="menu_findprev" accesskey="&editfindprev.accesskey;" key="findprevkb" observes="cmd_findPrev"/>
|
||||
<menuseparator id="sep_checkspelling"/>
|
||||
<menuitem id="menu_checkspelling" accesskey="&editcheckspelling.accesskey;"
|
||||
key="checkspellingkb" observes="cmd_spelling" disabled="true"
|
||||
label="&checkSpellingCmd.label;"/>
|
||||
<menuitem id="menu_inlinespellcheck" type="checkbox"
|
||||
label="&enableInlineSpellChecker.label;"
|
||||
accesskey="&enableInlineSpellChecker.accesskey;"
|
||||
oncommand="InlineSpellCheckerUI.enabled = !InlineSpellCheckerUI.enabled"/>
|
||||
<menuseparator id="menu_prefsSep"/>
|
||||
<menuitem id="menu_preferences" observes="cmd_preferences"/>
|
||||
<!-- Note: other Edit items (menu_validate, menu_publishSettings) are inserted from composerOverlay.xul -->
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menuitem id="viewNormalMode" type="radio" group="mode" accesskey="&NormalMode.accesskey;" observes="cmd_NormalMode"/>
|
||||
<menuitem id="viewAllTagsMode" type="radio" group="mode" accesskey="&AllTagsMode.accesskey;" observes="cmd_AllTagsMode"/>
|
||||
<menuitem id="viewSourceMode" type="radio" group="mode" accesskey="&HTMLSourceMode.accesskey;" observes="cmd_HTMLSourceMode" label="&HTMLSourceMode.label;"/>
|
||||
<menuitem id="viewPreviewMode" type="radio" group="mode" accesskey="&PreviewMode.accesskey;" observes="cmd_PreviewMode"/>
|
||||
|
||||
<menupopup id = "composerCharsetMenuPopup" onpopupshowing="updateCharsetPopupMenu(this)" />
|
||||
|
||||
<!-- Insert menu -->
|
||||
<menu id="insertMenu" label="&insertMenu.label;" accesskey="&insertmenu.accesskey;">
|
||||
<menupopup id="insertMenuPopup">
|
||||
<menuitem id="insertImage" accesskey="&insertimage.accesskey;" observes="cmd_image" label="&insertImageCmd.label;"/>
|
||||
<menuitem id="insertTable" accesskey="&inserttable.accesskey;" observes="cmd_InsertTable" label="&insertTableCmd.label;"/>
|
||||
<menuitem id="insertLink" accesskey="&insertlink.accesskey;" observes="cmd_link" label="&insertLinkCmd.label;" key="insertlinkkb"/>
|
||||
<menuitem id="insertAnchor" accesskey="&insertanchor.accesskey;" observes="cmd_anchor" label="&insertAnchorCmd.label;"/>
|
||||
<menuitem id="insertHline" accesskey="&inserthline.accesskey;" observes="cmd_hline" label="&insertHLineCmd.label;"/>
|
||||
<menuitem id="insertHTMLSource" accesskey="&insertHTMLCmd.accesskey;" observes="cmd_insertHTMLWithDialog" key="inserthtmlkb"/>
|
||||
<menuitem accesskey="&insertchars.accesskey;" observes="cmd_insertChars" id="insertChars"/>
|
||||
<menu id="insertTOC" label="&tocMenu.label;" accesskey="&tocMenu.accesskey;">
|
||||
<menupopup onpopupshowing="InitTOCMenu()">
|
||||
<menuitem id="insertTOCMenuitem"
|
||||
label="&insertTOC.label;"
|
||||
accesskey="&insertTOC.accesskey;"
|
||||
oncommand="UpdateTOC()"/>
|
||||
<menuitem id="updateTOCMenuitem"
|
||||
label="&updateTOC.label;"
|
||||
accesskey="&updateTOC.accesskey;"
|
||||
oncommand="UpdateTOC()"/>
|
||||
<menuitem id="removeTOCMenuitem"
|
||||
label="&removeTOC.label;"
|
||||
accesskey="&removeTOC.accesskey;"
|
||||
oncommand="RemoveTOC()"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuseparator id="insertMenuSeparator"/>
|
||||
<!-- Activate this after Enter key inserts P tag and not BR
|
||||
<menuitem accesskey="&insertbreak.accesskey;" observes="cmd_insertBreak" label="&insertBreakCmd.label;"/>
|
||||
-->
|
||||
<menuitem id="insertBreakAll" accesskey="&insertbreakall.accesskey;" observes="cmd_insertBreakAll" label="&insertBreakAllCmd.label;"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<!-- Insert menu for PlainText editor -->
|
||||
<menu id="insertMenuPlainText" label="&insertMenu.label;" accesskey="&insertmenu.accesskey;">
|
||||
<menupopup>
|
||||
<menuitem accesskey="&insertchars.accesskey;" observes="cmd_insertChars" />
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<!-- Format Menu -->
|
||||
<menupopup id="formatMenuPopup" onpopupshowing="EditorInitFormatMenu()">
|
||||
<!-- Font face submenu -->
|
||||
<menu id="fontFaceMenu" label="&fontfaceMenu.label;" accesskey="&formatfontmenu.accesskey;"
|
||||
position="1">
|
||||
<menupopup oncommand="if (event.target.localName == 'menuitem')
|
||||
doStatefulCommand('cmd_fontFace', event.target.getAttribute('value'));"
|
||||
onpopupshowing="initFontFaceMenu(this);">
|
||||
<menuitem label="&fontVarWidth.label;" accesskey="&fontvarwidth.accesskey;" value="" type="radio" name="1" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem label="&fontFixedWidth.label;" accesskey="&fontfixedwidth.accesskey;" value="tt" type="radio" name="1" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuseparator/>
|
||||
<menuitem label="&fontHelveticaFont.label;" accesskey="&fonthelvetica.accesskey;" value="Helvetica, Arial, sans-serif" type="radio" name="2" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem label="&fontTimes.label;" accesskey="&fonttimes.accesskey;" value="Times New Roman, Times, serif" type="radio" name="2" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem label="&fontCourier.label;" accesskey="&fontcourier.accesskey;" value="Courier New, Courier, monospace" type="radio" name="2" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuseparator/>
|
||||
<!-- Local font face items added here by initLocalFontFaceMenu() -->
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<!-- Font size submenu -->
|
||||
<menu id="fontSizeMenu" label="&fontsizeMenu.label;"
|
||||
accesskey="&formatsizemenu.accesskey;"
|
||||
position="2">
|
||||
<menupopup onpopupshowing="initFontSizeMenu(this)">
|
||||
<menuitem label="&decreaseFontSize.label;" accesskey="&decreasefontsize.accesskey;" observes="cmd_decreaseFont" type="radio" name="1" key="decreasefontsizekb"/>
|
||||
<menuitem label="&increaseFontSize.label;" accesskey="&increasefontsize.accesskey;" observes="cmd_increaseFont" type="radio" name="1" key="increasefontsizekb"/>
|
||||
<menuseparator/>
|
||||
<!-- Not supported in current font size implementation
|
||||
<menuitem label="&size-xx-smallCmd.label;" accesskey="&size-xx-small.accesskey;" oncommand="EditorSetFontSize('xx-small')" type="radio" name="2" />
|
||||
-->
|
||||
<menuitem label="&size-x-smallCmd.label;" accesskey="&size-x-small.accesskey;" oncommand="EditorSetFontSize('x-small')" type="radio" name="2" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem label="&size-smallCmd.label;" accesskey="&size-small.accesskey;" oncommand="EditorSetFontSize('small')" type="radio" name="2" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem label="&size-mediumCmd.label;" accesskey="&size-medium.accesskey;" oncommand="EditorSetFontSize('medium')" type="radio" name="2" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem label="&size-largeCmd.label;" accesskey="&size-large.accesskey;" oncommand="EditorSetFontSize('large')" type="radio" name="2" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem label="&size-x-largeCmd.label;" accesskey="&size-x-large.accesskey;" oncommand="EditorSetFontSize('x-large')" type="radio" name="2" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem label="&size-xx-largeCmd.label;" accesskey="&size-xx-large.accesskey;" oncommand="EditorSetFontSize('xx-large')" type="radio" name="2" observes="cmd_renderedHTMLEnabler"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<!-- Font style submenu -->
|
||||
<menu id="fontStyleMenu" label="&fontStyleMenu.label;"
|
||||
accesskey="&formatstylemenu.accesskey;"
|
||||
position="3">
|
||||
<menupopup onpopupshowing="initFontStyleMenu(this)">
|
||||
<menuitem label="&styleBoldCmd.label;" accesskey="&stylebold.accesskey;" observes="cmd_bold" type="checkbox" key="boldkb"/>
|
||||
<menuitem label="&styleItalicCmd.label;" accesskey="&styleitalic.accesskey;" observes="cmd_italic" type="checkbox" key="italickb" />
|
||||
<menuitem label="&styleUnderlineCmd.label;" accesskey="&styleunderline.accesskey;" observes="cmd_underline" type="checkbox" key="underlinekb"/>
|
||||
<menuitem label="&styleStrikeThruCmd.label;" accesskey="&stylestrikethru.accesskey;" observes="cmd_strikethrough" type="checkbox"/>
|
||||
<menuitem label="&styleSuperscriptCmd.label;" accesskey="&stylesuperscript.accesskey;" observes="cmd_superscript" type="checkbox"/>
|
||||
<menuitem label="&styleSubscriptCmd.label;" accesskey="&stylesubscript.accesskey;" observes="cmd_subscript" type="checkbox"/>
|
||||
<menuitem label="&fontFixedWidth.label;" accesskey="&fontfixedwidth.accesskey;" observes="cmd_tt" type="checkbox" key="fixedwidthkb"/>
|
||||
<menuitem label="&styleNonbreakingCmd.label;" accesskey="&stylenonbreaking.accesskey;" observes="cmd_nobreak" type="checkbox"/>
|
||||
<menuseparator/>
|
||||
<menuitem label="&styleEm.label;" accesskey="&styleEm.accesskey;" observes="cmd_em" type="checkbox"/>
|
||||
<menuitem label="&styleStrong.label;" accesskey="&styleStrong.accesskey;" observes="cmd_strong" type="checkbox"/>
|
||||
<menuitem label="&styleCite.label;" accesskey="&styleCite.accesskey;" observes="cmd_cite" type="checkbox"/>
|
||||
<menuitem label="&styleAbbr.label;" accesskey="&styleAbbr.accesskey;" observes="cmd_abbr" type="checkbox"/>
|
||||
<menuitem label="&styleAcronym.label;" accesskey="&styleAcronym.accesskey;" observes="cmd_acronym" type="checkbox"/>
|
||||
<menuitem label="&styleCode.label;" accesskey="&styleCode.accesskey;" observes="cmd_code" type="checkbox"/>
|
||||
<menuitem label="&styleSamp.label;" accesskey="&styleSamp.accesskey;" observes="cmd_samp" type="checkbox"/>
|
||||
<menuitem label="&styleVar.label;" accesskey="&styleVar.accesskey;" observes="cmd_var" type="checkbox"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<!-- Note: "cmd_fontColor" only monitors color state, it doesn't execute the command
|
||||
(We should use "cmd_fontColorState" and "cmd_backgroundColorState" ?) -->
|
||||
<menuitem id="fontColor" label="&formatFontColor.label;"
|
||||
accesskey="&formatfontcolor.accesskey;"
|
||||
observes="cmd_fontColor"
|
||||
oncommand="EditorSelectColor('Text', null);"
|
||||
position="4"/>
|
||||
<menuseparator id="removeSep" position="5"/>
|
||||
|
||||
<!-- label and accesskey set at runtime from strings -->
|
||||
<menuitem id="removeStylesMenuitem" key="removestyleskb"
|
||||
observes="cmd_removeStyles"
|
||||
position="6"/>
|
||||
<menuitem id="removeLinksMenuitem" key="removelinkskb"
|
||||
observes="cmd_removeLinks"
|
||||
position="7"/>
|
||||
<menuitem id="removeNamedAnchorsMenuitem" label="&formatRemoveNamedAnchors.label;"
|
||||
key="removenamedanchorskb"
|
||||
accesskey="&formatRemoveNamedAnchors.accesskey;"
|
||||
observes="cmd_removeNamedAnchors"
|
||||
position="8"/>
|
||||
<menuseparator id="tabSep" position="9"/>
|
||||
|
||||
<!-- Note: the 'Init' menu methods for Paragraph, List, and Align
|
||||
assume that the id = 'menu_'+tagName (the 'value' label),
|
||||
except for the first ('none') item
|
||||
-->
|
||||
<!-- Paragraph Style submenu -->
|
||||
<menu id="paragraphMenu" label="¶graphMenu.label;"
|
||||
accesskey="&formatparagraphmenu.accesskey;"
|
||||
position="10" onpopupshowing="InitParagraphMenu()">
|
||||
<menupopup oncommand="doStatefulCommand('cmd_paragraphState', event.target.getAttribute('value'))">
|
||||
<menuitem id="menu_bodyText" type="radio" name="1" label="&bodyTextCmd.label;" accesskey="&bodytext.accesskey;" value="" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_p" type="radio" name="1" label="¶graphParagraphCmd.label;" accesskey="¶graphparagraph.accesskey;" value="p" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_h1" type="radio" name="1" label="&heading1Cmd.label;" accesskey="&heading1.accesskey;" value="h1" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_h2" type="radio" name="1" label="&heading2Cmd.label;" accesskey="&heading2.accesskey;" value="h2" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_h3" type="radio" name="1" label="&heading3Cmd.label;" accesskey="&heading3.accesskey;" value="h3" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_h4" type="radio" name="1" label="&heading4Cmd.label;" accesskey="&heading4.accesskey;" value="h4" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_h5" type="radio" name="1" label="&heading5Cmd.label;" accesskey="&heading5.accesskey;" value="h5" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_h6" type="radio" name="1" label="&heading6Cmd.label;" accesskey="&heading6.accesskey;" value="h6" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_address" type="radio" name="1" label="¶graphAddressCmd.label;" accesskey="¶graphaddress.accesskey;" value="address" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_pre" type="radio" name="1" label="¶graphPreformatCmd.label;" accesskey="¶graphpreformat.accesskey;" value="pre" observes="cmd_renderedHTMLEnabler"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<!-- List Style submenu -->
|
||||
<menu id="listMenu" label="&formatlistMenu.label;"
|
||||
accesskey="&formatlistmenu.accesskey;"
|
||||
position="11" onpopupshowing="InitListMenu()">
|
||||
<menupopup>
|
||||
<menuitem id="menu_noList" type="radio" name="1" label="&noneCmd.label;" accesskey="&none.accesskey;" observes="cmd_removeList"/>
|
||||
<menuitem id="menu_ul" type="radio" name="1" label="&listBulletCmd.label;" accesskey="&listbullet.accesskey;" observes="cmd_ul"/>
|
||||
<menuitem id="menu_ol" type="radio" name="1" label="&listNumberedCmd.label;" accesskey="&listnumbered.accesskey;" observes="cmd_ol"/>
|
||||
<menuitem id="menu_dt" type="radio" name="1" label="&listTermCmd.label;" accesskey="&listterm.accesskey;" observes="cmd_dt"/>
|
||||
<menuitem id="menu_dd" type="radio" name="1" label="&listDefinitionCmd.label;" accesskey="&listdefinition.accesskey;" observes="cmd_dd"/>
|
||||
<menuseparator/>
|
||||
<menuitem id="listProps" label="&listProps.label;" accesskey="&listprops.accesskey;" observes="cmd_listProperties"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuseparator id="identingSep" position="12"/>
|
||||
|
||||
<menuitem id="increaseIndent" label="&increaseIndent.label;" accesskey="&increaseindent.accesskey;" key="increaseindentkb"
|
||||
observes="cmd_indent" position="13"/>
|
||||
<menuitem id="decreaseIndent" label="&decreaseIndent.label;" accesskey="&decreaseindent.accesskey;" key="decreaseindentkb"
|
||||
observes="cmd_outdent" position="14"/>
|
||||
|
||||
<menu id="alignMenu" label="&alignMenu.label;" accesskey="&formatalignmenu.accesskey;"
|
||||
onpopupshowing="InitAlignMenu()"
|
||||
position="15">
|
||||
<!-- Align submenu -->
|
||||
<menupopup oncommand="doStatefulCommand('cmd_align', event.target.getAttribute('value'))">
|
||||
<menuitem id="menu_left" label="&alignLeft.label;" accesskey="&alignleft.accesskey;" type="radio" name="1" value="left" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_center" label="&alignCenter.label;" accesskey="&aligncenter.accesskey;" type="radio" name="1" value="center" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_right" label="&alignRight.label;" accesskey="&alignright.accesskey;" type="radio" name="1" value="right" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="menu_justify" label="&alignJustify.label;" accesskey="&alignjustify.accesskey;" type="radio" name="1" value="justify" observes="cmd_renderedHTMLEnabler"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuseparator id="tableSep" position="16"/>
|
||||
<!-- Merge Table Menu and separator in Messenger Composer here -->
|
||||
<!-- Merge property items here -->
|
||||
</menupopup>
|
||||
|
||||
<menuitem id="snapToGrid" label="&grid.label;" accesskey="&grid.accesskey;"
|
||||
oncommand="goDoCommand('cmd_grid')" observes="cmd_renderedHTMLEnabler"/>
|
||||
|
||||
<!-- Next 3 are items to append at the bottom of the formatMenuPopup -->
|
||||
<!-- label and accesskey filled in during menu creation -->
|
||||
<menuitem id="objectProperties" oncommand="goDoCommand('cmd_objectProperties')" observes="cmd_renderedHTMLEnabler"/>
|
||||
<!-- Don't use 'observes', must call command correctly -->
|
||||
<menuitem id="pageProperties" label="&pageProperties.label;" accesskey="&pageproperties.accesskey;"
|
||||
oncommand="goDoCommand('cmd_pageProperties')" observes="cmd_renderedHTMLEnabler"/>
|
||||
<menuitem id="colorsAndBackground" label="&colorsAndBackground.label;" accesskey="&colorsandbackground.accesskey;"
|
||||
oncommand="goDoCommand('cmd_colorProperties')" observes="cmd_renderedHTMLEnabler"/>
|
||||
|
||||
<menu id="tableMenu" label="&tableMenu.label;" accesskey="&tablemenu.accesskey;">
|
||||
<menupopup onpopupshowing="EditorInitTableMenu()">
|
||||
<!-- From EditorCommandOverlay.xul (shared with context popup) -->
|
||||
<menu id="tableInsertMenu" label="&tableInsertMenu.label;" accesskey="&tableinsertmenu.accesskey;">
|
||||
<menupopup>
|
||||
<menuitem label="&insertTableCmd.label;" accesskey="&tabletable.accesskey;" observes="cmd_InsertTable"/>
|
||||
<menuseparator />
|
||||
<menuitem label="&tableRowAbove.label;" accesskey="&tablerow.accesskey;" observes="cmd_InsertRowAbove"/>
|
||||
<menuitem label="&tableRowBelow.label;" accesskey="&tablerowbelow.accesskey;" observes="cmd_InsertRowBelow"/>
|
||||
<menuseparator />
|
||||
<menuitem label="&tableColumnBefore.label;" accesskey="&tablecolumn.accesskey;" observes="cmd_InsertColumnBefore"/>
|
||||
<menuitem label="&tableColumnAfter.label;" accesskey="&tablecolumnafter.accesskey;" observes="cmd_InsertColumnAfter"/>
|
||||
<menuseparator />
|
||||
<menuitem label="&tableCellBefore.label;" accesskey="&tablecell.accesskey;" observes="cmd_InsertCellBefore"/>
|
||||
<menuitem label="&tableCellAfter.label;" accesskey="&tablecellafter.accesskey;" observes="cmd_InsertCellAfter"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menu id="tableSelectMenu" label="&tableSelectMenu.label;" accesskey="&tableselectmenu.accesskey;">
|
||||
<menupopup id="tableSelectPopup">
|
||||
<menuitem id="menu_SelectTable" label="&tableTable.label;" accesskey="&tabletable.accesskey;" observes="cmd_SelectTable" />
|
||||
<menuitem id="menu_SelectRow" label="&tableRow.label;" accesskey="&tablerow.accesskey;" observes="cmd_SelectRow" />
|
||||
<menuitem id="menu_SelectColumn" label="&tableColumn.label;" accesskey="&tablecolumn.accesskey;" observes="cmd_SelectColumn" />
|
||||
<menuitem id="menu_SelectCell" label="&tableCell.label;" accesskey="&tablecell.accesskey;" observes="cmd_SelectCell" />
|
||||
<menuitem id="menu_SelectAllCells" label="&tableAllCells.label;" accesskey="&tableallcells.accesskey;" observes="cmd_SelectAllCells" />
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menu id="tableDeleteMenu" label="&tableDeleteMenu.label;" accesskey="&tabledeletemenu.accesskey;">
|
||||
<menupopup id="tableDeletePopup">
|
||||
<menuitem id="menu_DeleteTable" label="&tableTable.label;" accesskey="&tabletable.accesskey;" observes="cmd_DeleteTable"/>
|
||||
<menuitem id="menu_DeleteRow" label="&tableRows.label;" accesskey="&tablerow.accesskey;" observes="cmd_DeleteRow"/>
|
||||
<menuitem id="menu_DeleteColumn" label="&tableColumns.label;" accesskey="&tablecolumn.accesskey;" observes="cmd_DeleteColumn"/>
|
||||
<menuitem id="menu_DeleteCell" label="&tableCells.label;" accesskey="&tablecell.accesskey;" observes="cmd_DeleteCell"/>
|
||||
<menuitem id="menu_DeleteCellContents" label="&tableCellContents.label;" accesskey="&tablecellcontents.accesskey;" observes="cmd_DeleteCellContents"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuseparator />
|
||||
<!-- menu label is set in InitTableMenu -->
|
||||
<menuitem id="menu_JoinTableCells" label="&tableJoinCells.label;" accesskey="&tablejoincells.accesskey;" observes="cmd_JoinTableCells"/>
|
||||
<menuitem id="menu_SlitTableCell" label="&tableSplitCell.label;" accesskey="&tablesplitcell.accesskey;" observes="cmd_SplitTableCell"/>
|
||||
<menuitem id="menu_ConvertToTable" label="&convertToTable.label;" accesskey="&converttotable.accesskey;" observes="cmd_ConvertToTable"/>
|
||||
<menuseparator />
|
||||
<menuitem id="menu_TableOrCellColor" label="&tableOrCellColor.label;" accesskey="&tableOrCellColor.accesskey;" observes="cmd_TableOrCellColor"/>
|
||||
<menuitem id="menu_tableProperties" label="&tableProperties.label;" accesskey="&tableProperties.accesskey;" observes="cmd_editTable"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<!-- this is only used in messengercompose.xul -->
|
||||
<toolbarbutton type="menu" id="AlignPopupButton" observes="cmd_align"
|
||||
tooltiptext="&AlignPopupButton.tooltip;">
|
||||
<menupopup id="AlignPopup">
|
||||
<menuitem id="AlignLeftItem" class="menuitem-iconic" label="&alignLeft.label;"
|
||||
oncommand="doStatefulCommand('cmd_align', 'left')"
|
||||
tooltiptext="&alignLeftButton.tooltip;" />
|
||||
<menuitem id="AlignCenterItem" class="menuitem-iconic" label="&alignCenter.label;"
|
||||
oncommand="doStatefulCommand('cmd_align', 'center')"
|
||||
tooltiptext="&alignCenterButton.tooltip;" />
|
||||
<menuitem id="AlignRightItem" class="menuitem-iconic" label="&alignRight.label;"
|
||||
oncommand="doStatefulCommand('cmd_align', 'right')"
|
||||
tooltiptext="&alignRightButton.tooltip;" />
|
||||
<menuitem id="AlignJustifyItem" class="menuitem-iconic" label="&alignJustify.label;"
|
||||
oncommand="doStatefulCommand('cmd_align', 'justify')"
|
||||
tooltiptext="&alignjustifyButton.tooltip;" />
|
||||
</menupopup>
|
||||
</toolbarbutton>
|
||||
|
||||
<!-- InsertPopupButton is used by messengercompose.xul -->
|
||||
<toolbarbutton type="menu" id="InsertPopupButton" observes="cmd_renderedHTMLEnabler"
|
||||
tooltiptext="&InsertPopupButton.tooltip;">
|
||||
<menupopup id="InsertPopup">
|
||||
<menuitem id="InsertLinkItem" class="menuitem-iconic" observes="cmd_link"
|
||||
oncommand="goDoCommand('cmd_link')" label="&linkToolbarCmd.label;"
|
||||
tooltiptext="&linkToolbarCmd.tooltip;" />
|
||||
<menuitem id="InsertAnchorItem" class="menuitem-iconic" observes="cmd_anchor"
|
||||
oncommand="goDoCommand('cmd_anchor')" label="&anchorToolbarCmd.label;"
|
||||
tooltiptext="&anchorToolbarCmd.tooltip;" />
|
||||
<menuitem id="InsertImageItem" class="menuitem-iconic" observes="cmd_image"
|
||||
oncommand="goDoCommand('cmd_image')" label="&imageToolbarCmd.label;"
|
||||
tooltiptext="&imageToolbarCmd.tooltip;" />
|
||||
<menuitem id="InsertHRuleItem" class="menuitem-iconic" observes="cmd_hline"
|
||||
oncommand="goDoCommand('cmd_hline')" label="&hruleToolbarCmd.label;"
|
||||
tooltiptext="&hruleToolbarCmd.tooltip;" />
|
||||
<menuitem id="InsertTableItem" class="menuitem-iconic" observes="cmd_table"
|
||||
oncommand="goDoCommand('cmd_table')" label="&tableToolbarCmd.label;"
|
||||
tooltiptext="&tableToolbarCmd.tooltip;" />
|
||||
</menupopup>
|
||||
</toolbarbutton>
|
||||
|
||||
<!-- Editor toolbar items -->
|
||||
<!-- note that we override the submenu item label "Blank Window" with "New" used for the menu -->
|
||||
<toolbarbutton id="newButton" class="toolbarbutton-1"
|
||||
label="&newMenu.label;" command="cmd_newEditor"
|
||||
tooltiptext="&newToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="openButton" class="toolbarbutton-1"
|
||||
label="&openToolbarCmd.label;" observes="cmd_open"
|
||||
tooltiptext="&openToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="saveButton" class="toolbarbutton-1" observes="cmd_save"
|
||||
tooltiptext="&saveToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="publishButton" class="toolbarbutton-1"
|
||||
observes="cmd_publish"
|
||||
tooltiptext="&publishToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="previewButton" class="toolbarbutton-1"
|
||||
label="&previewToolbarCmd.label;" observes="cmd_preview"
|
||||
tooltiptext="&previewToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="cutButton" class="toolbarbutton-1"
|
||||
label="&cutCmd.label;" command="cmd_cut"
|
||||
tooltiptext="&cutCmd.label;"/>
|
||||
<toolbarbutton id="copyButton" class="toolbarbutton-1"
|
||||
label="©Cmd.label;" command="cmd_copy"
|
||||
tooltiptext="©Cmd.label;"/>
|
||||
<toolbarbutton id="pasteButton" class="toolbarbutton-1"
|
||||
label="&pasteCmd.label;" command="cmd_paste"
|
||||
tooltiptext="&pasteCmd.label;"/>
|
||||
|
||||
<toolbarbutton id="printButton" type="menu-button" class="toolbarbutton-1"
|
||||
label="&printToolbarCmd.label;"
|
||||
tooltiptext="&printToolbarCmd.tooltip;"
|
||||
oncommand="if (event.target==this) goDoCommand('cmd_print');">
|
||||
<menupopup id="printMenu">
|
||||
<menuitem id="printMenuItemToolbar" accesskey="&fileprint.accesskey;" label="&printCmd.label;" default="true"
|
||||
oncommand="goDoCommand('cmd_print');"/>
|
||||
<!-- 'printSetupToolbar' is merged in here from platformGlobalOverlay.xul -->
|
||||
</menupopup>
|
||||
</toolbarbutton>
|
||||
|
||||
<toolbarbutton id="findButton" class="toolbarbutton-1"
|
||||
label="&findToolbarCmd.label;" observes="cmd_find"
|
||||
tooltiptext="&findToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="spellingButton" class="toolbarbutton-1" disabled="true"
|
||||
label="&spellToolbarCmd.label;" observes="cmd_spelling"
|
||||
tooltiptext="&spellToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="imageButton" class="toolbarbutton-1"
|
||||
label="&imageToolbarCmd.label;" observes="cmd_image"
|
||||
tooltiptext="&imageToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="hlineButton" class="toolbarbutton-1"
|
||||
label="&hruleToolbarCmd.label;" observes="cmd_hline"
|
||||
tooltiptext="&hruleToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="tableButton" class="toolbarbutton-1"
|
||||
label="&tableToolbarCmd.label;" observes="cmd_table"
|
||||
tooltiptext="&tableToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="linkButton" class="toolbarbutton-1"
|
||||
label="&linkToolbarCmd.label;" observes="cmd_link"
|
||||
tooltiptext="&linkToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="namedAnchorButton" class="toolbarbutton-1"
|
||||
label="&anchorToolbarCmd.label;" observes="cmd_anchor"
|
||||
tooltiptext="&anchorToolbarCmd.tooltip;"/>
|
||||
|
||||
<!-- Formatting toolbar items. "value" are HTML tagnames, don't translate -->
|
||||
<menulist class="toolbar-focustarget" id="ParagraphSelect" observes="cmd_renderedHTMLEnabler"
|
||||
tooltiptext="&ParagraphSelect.tooltip;" crop="right">
|
||||
<observes element="cmd_paragraphState" attribute="state" onbroadcast="onParagraphFormatChange(this.parentNode, 'cmd_paragraphState')"/>
|
||||
<menupopup id="ParagraphPopup" oncommand="doStatefulCommand('cmd_paragraphState', event.target.value)">
|
||||
<menuitem label="&bodyTextCmd.label;" value=""/>
|
||||
<menuitem label="¶graphParagraphCmd.label;" value="p"/>
|
||||
<menuitem label="&heading1Cmd.label;" value="h1"/>
|
||||
<menuitem label="&heading2Cmd.label;" value="h2"/>
|
||||
<menuitem label="&heading3Cmd.label;" value="h3"/>
|
||||
<menuitem label="&heading4Cmd.label;" value="h4"/>
|
||||
<menuitem label="&heading5Cmd.label;" value="h5"/>
|
||||
<menuitem label="&heading6Cmd.label;" value="h6"/>
|
||||
<menuitem label="¶graphAddressCmd.label;" value="address"/>
|
||||
<menuitem label="¶graphPreformatCmd.label;" value="pre"/>
|
||||
</menupopup>
|
||||
</menulist>
|
||||
|
||||
<!-- "value" are HTML tagnames, don't translate -->
|
||||
<menulist class="toolbar-focustarget" id="FontFaceSelect" observes="cmd_renderedHTMLEnabler"
|
||||
tooltiptext="&FontFaceSelect.tooltip;" crop="right">
|
||||
<observes element="cmd_fontFace" attribute="state" onbroadcast="onFontFaceChange(this.parentNode, 'cmd_fontFace')"/>
|
||||
<menupopup id="FontFacePopup" oncommand="doStatefulCommand('cmd_fontFace', event.target.value)">
|
||||
<menuitem label="&fontVarWidth.label;" value=""/>
|
||||
<menuitem label="&fontFixedWidth.label;" value="tt"/>
|
||||
<menuseparator/>
|
||||
<menuitem label="&fontHelveticaFont.label;" value="Helvetica, Arial, sans-serif"/>
|
||||
<menuitem label="&fontTimes.label;" value="Times New Roman, Times, serif"/>
|
||||
<menuitem label="&fontCourier.label;" value="Courier New, Courier, monospace"/>
|
||||
<menuseparator/>
|
||||
</menupopup>
|
||||
</menulist>
|
||||
|
||||
<menulist class="toolbar-focustarget" id="FontSizeSelect" oncommand="EditorSelectFontSize()" tooltiptext="&FontSizeSelect.tooltip;" crop="right">
|
||||
<observes element="cmd_fontSize" attribute="state" onbroadcast="onFontSizeChange(this.parentNode, 'cmd_fontSize')"/>
|
||||
<menupopup>
|
||||
<menuitem label="&size-xx-smallCmd.label;"/>
|
||||
<menuitem label="&size-x-smallCmd.label;"/>
|
||||
<menuitem label="&size-smallCmd.label;"/>
|
||||
<menuitem label="&size-mediumCmd.label;"/>
|
||||
<menuitem label="&size-largeCmd.label;"/>
|
||||
<menuitem label="&size-x-largeCmd.label;"/>
|
||||
<menuitem label="&size-xx-largeCmd.label;"/>
|
||||
</menupopup>
|
||||
</menulist>
|
||||
|
||||
<stack id="ColorButtons" align="center">
|
||||
<observes element="cmd_fontColor" attribute="state" onbroadcast="onFontColorChange()"/>
|
||||
<observes element="cmd_backgroundColor" attribute="state" onbroadcast="onBackgroundColorChange()"/>
|
||||
<box class="color-button" id="BackgroundColorButton"
|
||||
onclick="EditorSelectColor('', event);"
|
||||
tooltiptext="&BackgroundColorButton.tooltip;"/>
|
||||
<box class="color-button" id="TextColorButton"
|
||||
onclick="EditorSelectColor('Text', event);"
|
||||
tooltiptext="&TextColorButton.tooltip;"/>
|
||||
</stack>
|
||||
<toolbarbutton id="HighlightColorButton"
|
||||
tooltiptext="&HighlightColorButton.tooltip;" command="cmd_highlight">
|
||||
<observes element="cmd_highlight" attribute="state" onbroadcast="onHighlightColorChange()"/>
|
||||
<observes element="cmd_highlight" attribute="collapsed"/>
|
||||
</toolbarbutton>
|
||||
|
||||
<!-- A BUG IN CSS/BOXES MAKES THIS ASSERT WHEN CLASS= IS PRESENT AND WE TRY TO COLLAPSE THE TOOLBOX -->
|
||||
<toolbarbutton id="DecreaseFontSizeButton" observes="cmd_decreaseFont"
|
||||
tooltiptext="&decreaseFontSizeToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="IncreaseFontSizeButton" observes="cmd_increaseFont"
|
||||
tooltiptext="&increaseFontSizeToolbarCmd.tooltip;"/>
|
||||
|
||||
<toolbarbutton id="boldButton" type="checkbox" autoCheck="false" observes="cmd_bold"
|
||||
tooltiptext="&boldToolbarCmd.tooltip;">
|
||||
<observes element="cmd_bold" type="checkbox" attribute="state" onbroadcast="onButtonUpdate(this.parentNode, 'cmd_bold')"/>
|
||||
</toolbarbutton>
|
||||
<toolbarbutton id="italicButton" type="checkbox" autoCheck="false" observes="cmd_italic"
|
||||
tooltiptext="&italicToolbarCmd.tooltip;">
|
||||
<observes element="cmd_italic" attribute="state" onbroadcast="onButtonUpdate(this.parentNode, 'cmd_italic')"/>
|
||||
</toolbarbutton>
|
||||
<toolbarbutton id="underlineButton" type="checkbox" autoCheck="false" observes="cmd_underline"
|
||||
tooltiptext="&underlineToolbarCmd.tooltip;">
|
||||
<observes element="cmd_underline" attribute="state" onbroadcast="onButtonUpdate(this.parentNode, 'cmd_underline')"/>
|
||||
</toolbarbutton>
|
||||
|
||||
<toolbarbutton id="ulButton" type="radio" group="lists" autoCheck="false" observes="cmd_ul"
|
||||
tooltiptext="&bulletListToolbarCmd.tooltip;">
|
||||
<observes element="cmd_ul" attribute="state" onbroadcast="onButtonUpdate(this.parentNode, 'cmd_ul')"/>
|
||||
</toolbarbutton>
|
||||
|
||||
<toolbarbutton id="olButton" type="radio" group="lists" autoCheck="false" observes="cmd_ol"
|
||||
tooltiptext="&numberListToolbarCmd.tooltip;">
|
||||
<observes element="cmd_ol" attribute="state" onbroadcast="onButtonUpdate(this.parentNode, 'cmd_ol')"/>
|
||||
</toolbarbutton>
|
||||
|
||||
<toolbarbutton id="outdentButton" observes="cmd_outdent"
|
||||
tooltiptext="&outdentToolbarCmd.tooltip;"/>
|
||||
<toolbarbutton id="indentButton" observes="cmd_indent"
|
||||
tooltiptext="&indentToolbarCmd.tooltip;"/>
|
||||
|
||||
<!-- alignment buttons -->
|
||||
<toolbarbutton id="align-left-button" type="radio" group="align" autoCheck="false"
|
||||
oncommand="doStatefulCommand('cmd_align', 'left')"
|
||||
tooltiptext="&alignLeft.tooltip;" >
|
||||
<observes element="cmd_align" attribute="state"
|
||||
onbroadcast="onStateButtonUpdate(this.parentNode, 'cmd_align', 'left')" />
|
||||
</toolbarbutton>
|
||||
<toolbarbutton id="align-center-button" type="radio" group="align" autoCheck="false"
|
||||
oncommand="doStatefulCommand('cmd_align', 'center')"
|
||||
tooltiptext="&alignCenter.tooltip;" >
|
||||
<observes element="cmd_align" attribute="state"
|
||||
onbroadcast="onStateButtonUpdate(this.parentNode, 'cmd_align', 'center')"/>
|
||||
</toolbarbutton>
|
||||
<toolbarbutton id="align-right-button" type="radio" group="align" autoCheck="false"
|
||||
oncommand="doStatefulCommand('cmd_align', 'right')"
|
||||
tooltiptext="&alignRight.tooltip;" >
|
||||
<observes element="cmd_align" attribute="state"
|
||||
onbroadcast="onStateButtonUpdate(this.parentNode, 'cmd_align', 'right')"/>
|
||||
</toolbarbutton>
|
||||
<toolbarbutton id="align-justify-button" type="radio" group="align" autoCheck="false"
|
||||
oncommand="doStatefulCommand('cmd_align', 'justify')"
|
||||
tooltiptext="&alignJustify.tooltip;" >
|
||||
<observes element="cmd_align" attribute="state"
|
||||
onbroadcast="onStateButtonUpdate(this.parentNode, 'cmd_align', 'justify')"/>
|
||||
</toolbarbutton>
|
||||
|
||||
<toolbarbutton id="absolutePositionButton" type="checkbox" tooltiptext="&layer.tooltip;" observes="cmd_absPos">
|
||||
<observes element="cmd_absPos" attribute="state" onbroadcast="onStateButtonUpdate(this.parentNode, 'cmd_absPos', 'absolute')"/>
|
||||
</toolbarbutton>
|
||||
<toolbarbutton id="decreaseZIndexButton" observes="cmd_decreaseZIndex"
|
||||
tooltiptext="&layerSendToBack.tooltip;"/>
|
||||
<toolbarbutton id="increaseZIndexButton" observes="cmd_increaseZIndex"
|
||||
tooltiptext="&layerBringToFront.tooltip;"/>
|
||||
|
||||
<!-- Edit Mode toolbar -->
|
||||
<tabs id="EditModeTabs" onselect="this.selectedItem.doCommand()"/>
|
||||
<tab id="NormalModeButton" class="tab-bottom edit-mode _plain" type="text" selected="1" label="&NormalModeTab.label;" oncommand="goDoCommand('cmd_NormalMode');"
|
||||
tooltiptext="&NormalMode.tooltip;"/>
|
||||
<tab id="TagModeButton" class="tab-bottom edit-mode _plain" type="text" selected="0" label="&AllTagsMode.label;" oncommand="goDoCommand('cmd_AllTagsMode');"
|
||||
tooltiptext="&AllTagsMode.tooltip;"/>
|
||||
<tab id="SourceModeButton" class="tab-bottom edit-mode _plain" type="text" selected="0" label="&SourceMode.label;" oncommand="goDoCommand('cmd_HTMLSourceMode');"
|
||||
tooltiptext="&HTMLSourceMode.tooltip;" dir="&SourceTabDirection;"/>
|
||||
<tab id="PreviewModeButton" class="tab-bottom edit-mode _plain" type="text" selected="0" label="&PreviewMode.label;" oncommand="goDoCommand('cmd_PreviewMode');"
|
||||
tooltiptext="&PreviewMode.tooltip;"/>
|
||||
|
||||
<!-- Paste as quotation is used by mail compose,
|
||||
but in composer it has to go in the debug menu
|
||||
-->
|
||||
<menuitem id="menu_pasteQuote" accesskey="&editpastequotation.accesskey;" command="cmd_pasteQuote" key="pastequotationkb"/>
|
||||
|
||||
</overlay>
|
|
@ -1,72 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!DOCTYPE overlay [
|
||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
||||
%brandDTD;
|
||||
<!ENTITY % editorPrefsOverlayDTD SYSTEM "chrome://editor/locale/editorPrefsOverlay.dtd" >
|
||||
%editorPrefsOverlayDTD;
|
||||
]>
|
||||
|
||||
<overlay id="editorPrefsOverlay"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
<preferences id="appearance_preferences">
|
||||
<preference id="general.startup.editor"
|
||||
name="general.startup.editor"
|
||||
type="bool"/>
|
||||
</preferences>
|
||||
|
||||
<!-- editor startup toggle -->
|
||||
<groupbox id="generalStartupPreferences">
|
||||
<checkbox id="generalStartupEditor"
|
||||
insertafter="generalStartupMail,generalStartupBrowser"
|
||||
label="&editorCheck.label;"
|
||||
accesskey="&editorCheck.accesskey;"
|
||||
preference="general.startup.editor"/>
|
||||
</groupbox>
|
||||
<!-- category tree entries for editor -->
|
||||
<treechildren id="prefsPanelChildren">
|
||||
<treeitem container="true"
|
||||
id="composerItem"
|
||||
insertafter="mailnews,navigator"
|
||||
label="&compose.label;"
|
||||
prefpane="composer_pane"
|
||||
url="chrome://editor/content/pref-composer.xul"
|
||||
helpTopic="composer_prefs_general">
|
||||
<treechildren id="composerChildren">
|
||||
<treeitem id="editingItem"
|
||||
label="&editing.label;"
|
||||
prefpane="editing_pane"
|
||||
url="chrome://editor/content/pref-editing.xul"
|
||||
helpTopic="composer_prefs_newpage"/>
|
||||
<treeitem id="toolbarsItem"
|
||||
label="&toolbars.label;"
|
||||
prefpane="toolbars_pane"
|
||||
url="chrome://editor/content/pref-toolbars.xul"
|
||||
helpTopic="composer_prefs_toolbars"/>
|
||||
</treechildren>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
|
||||
<!-- category tree entries for editor -->
|
||||
<treechildren id="panelChildren">
|
||||
<treeitem container="true" id="editor" insertafter="mailnews,navigator">
|
||||
<treerow>
|
||||
<treecell label="Migrated: &compose.label;"/>
|
||||
</treerow>
|
||||
<treechildren>
|
||||
<treeitem>
|
||||
<treerow>
|
||||
<treecell label="Migrated: &editing.label;"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
<treeitem>
|
||||
<treerow>
|
||||
<treecell label="Migrated: &toolbars.label;"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
|
||||
</overlay>
|
|
@ -1,139 +0,0 @@
|
|||
<?xml version="1.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 Editor Smiley Overlay.
|
||||
-
|
||||
- The Initial Developer of the Original Code is
|
||||
- Neil Rashbrook.
|
||||
- Portions created by the Initial Developer are Copyright (C) 2003
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Neil Rashbrook <neil@parkwaycc.co.uk>
|
||||
-
|
||||
- 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 ***** -->
|
||||
|
||||
<!DOCTYPE overlay SYSTEM "chrome://editor/locale/editorSmileyOverlay.dtd">
|
||||
|
||||
<overlay xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
<!-- smiley menu -->
|
||||
<toolbarbutton type="menu" id="smileButtonMenu"
|
||||
observes="cmd_smiley"
|
||||
tooltiptext="&SmileButton.tooltip;">
|
||||
<menupopup id="smilyPopup">
|
||||
<menuitem class="smiley insert-smile menuitem-iconic" label="&smiley1Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-)' )"
|
||||
tooltiptext="&smiley1Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-frown menuitem-iconic" label="&smiley2Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-(' )"
|
||||
tooltiptext="&smiley2Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-wink menuitem-iconic" label="&smiley3Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ';-)' )"
|
||||
tooltiptext="&smiley3Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-tongue menuitem-iconic" label="&smiley4Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-P' )"
|
||||
tooltiptext="&smiley4Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-laughing menuitem-iconic" label="&smiley5Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-D' )"
|
||||
tooltiptext="&smiley5Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-embarrassed menuitem-iconic" label="&smiley6Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-[' )"
|
||||
tooltiptext="&smiley6Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-undecided menuitem-iconic" label="&smiley7Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-\\' )"
|
||||
tooltiptext="&smiley7Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-surprise menuitem-iconic" label="&smiley8Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', '=-O' )"
|
||||
tooltiptext="&smiley8Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-kiss menuitem-iconic" label="&smiley9Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-*' )"
|
||||
tooltiptext="&smiley9Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-yell menuitem-iconic" label="&smiley10Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', '>:o' )"
|
||||
tooltiptext="&smiley10Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-cool menuitem-iconic" label="&smiley11Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', '8-)' )"
|
||||
tooltiptext="&smiley11Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-money menuitem-iconic" label="&smiley12Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-$' )"
|
||||
tooltiptext="&smiley12Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-foot menuitem-iconic" label="&smiley13Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-!' )"
|
||||
tooltiptext="&smiley13Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-innocent menuitem-iconic" label="&smiley14Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', 'O:-)' )"
|
||||
tooltiptext="&smiley14Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-cry menuitem-iconic" label="&smiley15Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':\'(' )"
|
||||
tooltiptext="&smiley15Cmd.tooltip;" />
|
||||
<menuitem class="smiley insert-sealed menuitem-iconic" label="&smiley16Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-X' )"
|
||||
tooltiptext="&smiley16Cmd.tooltip;" />
|
||||
|
||||
</menupopup>
|
||||
</toolbarbutton>
|
||||
|
||||
<menu id="insertMenu">
|
||||
<menupopup id="insertMenuPopup">
|
||||
<menu id="insertSmiley" label="&insertSmiley.label;" accesskey="&insertSmiley.accesskey;" insertbefore="insertMenuSeparator">
|
||||
<menupopup id="smilyPopup">
|
||||
<menuitem class="smiley insert-smile menuitem-iconic" label="&smiley1Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-)' )" accesskey="&smiley1Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-frown menuitem-iconic" label="&smiley2Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-(' )" accesskey="&smiley2Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-wink menuitem-iconic" label="&smiley3Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ';-)' )" accesskey="&smiley3Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-tongue menuitem-iconic" label="&smiley4Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-P' )" accesskey="&smiley4Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-laughing menuitem-iconic" label="&smiley5Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-D' )" accesskey="&smiley5Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-embarrassed menuitem-iconic" label="&smiley6Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-[' )" accesskey="&smiley6Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-undecided menuitem-iconic" label="&smiley7Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-\\' )" accesskey="&smiley7Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-surprise menuitem-iconic" label="&smiley8Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', '=-O' )" accesskey="&smiley8Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-kiss menuitem-iconic" label="&smiley9Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-*' )" accesskey="&smiley9Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-yell menuitem-iconic" label="&smiley10Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', '>:o' )" accesskey="&smiley10Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-cool menuitem-iconic" label="&smiley11Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', '8-)' )" accesskey="&smiley11Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-money menuitem-iconic" label="&smiley12Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-$' )" accesskey="&smiley12Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-foot menuitem-iconic" label="&smiley13Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-!' )" accesskey="&smiley13Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-innocent menuitem-iconic" label="&smiley14Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', 'O:-)' )" accesskey="&smiley14Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-cry menuitem-iconic" label="&smiley15Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':\'(' )" accesskey="&smiley15Cmd.accesskey;"/>
|
||||
<menuitem class="smiley insert-sealed menuitem-iconic" label="&smiley16Cmd.label;"
|
||||
oncommand="doStatefulCommand('cmd_smiley', ':-X' )" accesskey="&smiley16Cmd.accesskey;"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
</menupopup>
|
||||
</menu>
|
||||
</overlay>
|
|
@ -1,76 +0,0 @@
|
|||
<?xml version="1.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 Editor Tasks Overlay.
|
||||
-
|
||||
- The Initial Developer of the Original Code is
|
||||
- Neil Rashbrook.
|
||||
- Portions created by the Initial Developer are Copyright (C) 2001
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s): Neil Rashbrook <neil@parkwaycc.co.uk>
|
||||
-
|
||||
- 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 ***** -->
|
||||
|
||||
<!DOCTYPE overlay SYSTEM "chrome://communicator/locale/tasksOverlay.dtd">
|
||||
|
||||
<overlay id="editorTasksOverlay"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
<script type="application/x-javascript">
|
||||
<![CDATA[
|
||||
function toEditor()
|
||||
{
|
||||
if (!CycleWindow("composer:html"))
|
||||
NewEditorWindow();
|
||||
}
|
||||
function NewEditorWindow()
|
||||
{
|
||||
// Open editor window with blank page
|
||||
window.openDialog( "chrome://editor/content", "_blank", "chrome,all,dialog=no", "about:blank");
|
||||
}
|
||||
]]>
|
||||
</script>
|
||||
|
||||
<keyset id="tasksKeys">
|
||||
<key id="key_editor" key="&editorCmd.commandkey;" command="Tasks:Editor" modifiers="accel"/>
|
||||
</keyset>
|
||||
|
||||
<commandset id="tasksCommands">
|
||||
<command id="Tasks:Editor" oncommand="toEditor();"/>
|
||||
</commandset>
|
||||
|
||||
<statusbarpanel id="component-bar">
|
||||
<toolbarbutton class="taskbutton" id="mini-comp" command="Tasks:Editor"
|
||||
tooltiptext="&taskComposer.tooltip;" insertafter="mini-nav"/>
|
||||
</statusbarpanel>
|
||||
|
||||
<menupopup id="windowPopup">
|
||||
<menuitem label="&editorCmd.label;" accesskey="&editorCmd.accesskey;" key="key_editor" command="Tasks:Editor" id="tasksMenuEditor" insertafter="IMMenuItem,tasksMenuNavigator" class="menuitem-iconic icon-composer16 menu-iconic"/>
|
||||
</menupopup>
|
||||
|
||||
</overlay>
|
||||
|
Двоичные данные
editor/ui/composer/content/images/bringtofront-disabled.gif
До Ширина: | Высота: | Размер: 893 B |
Двоичные данные
editor/ui/composer/content/images/bringtofront.gif
До Ширина: | Высота: | Размер: 145 B |
Двоичные данные
editor/ui/composer/content/images/sendtoback-disabled.gif
До Ширина: | Высота: | Размер: 897 B |
Двоичные данные
editor/ui/composer/content/images/sendtoback.gif
До Ширина: | Высота: | Размер: 148 B |
Двоичные данные
editor/ui/composer/content/images/tag-a.gif
До Ширина: | Высота: | Размер: 138 B |
Двоичные данные
editor/ui/composer/content/images/tag-abr.gif
До Ширина: | Высота: | Размер: 202 B |
Двоичные данные
editor/ui/composer/content/images/tag-acr.gif
До Ширина: | Высота: | Размер: 279 B |
Двоичные данные
editor/ui/composer/content/images/tag-adr.gif
До Ширина: | Высота: | Размер: 240 B |
Двоичные данные
editor/ui/composer/content/images/tag-anchor.gif
До Ширина: | Высота: | Размер: 127 B |
Двоичные данные
editor/ui/composer/content/images/tag-app.gif
До Ширина: | Высота: | Размер: 230 B |
Двоичные данные
editor/ui/composer/content/images/tag-ara.gif
До Ширина: | Высота: | Размер: 212 B |
Двоичные данные
editor/ui/composer/content/images/tag-b.gif
До Ширина: | Высота: | Размер: 138 B |
Двоичные данные
editor/ui/composer/content/images/tag-bas.gif
До Ширина: | Высота: | Размер: 216 B |
Двоичные данные
editor/ui/composer/content/images/tag-bdo.gif
До Ширина: | Высота: | Размер: 186 B |
Двоичные данные
editor/ui/composer/content/images/tag-big.gif
До Ширина: | Высота: | Размер: 176 B |
Двоичные данные
editor/ui/composer/content/images/tag-blq.gif
До Ширина: | Высота: | Размер: 281 B |
Двоичные данные
editor/ui/composer/content/images/tag-body.gif
До Ширина: | Высота: | Размер: 214 B |
Двоичные данные
editor/ui/composer/content/images/tag-br.gif
До Ширина: | Высота: | Размер: 158 B |
Двоичные данные
editor/ui/composer/content/images/tag-bsf.gif
До Ширина: | Высота: | Размер: 264 B |
Двоичные данные
editor/ui/composer/content/images/tag-btn.gif
До Ширина: | Высота: | Размер: 247 B |
Двоичные данные
editor/ui/composer/content/images/tag-cit.gif
До Ширина: | Высота: | Размер: 192 B |
Двоичные данные
editor/ui/composer/content/images/tag-clg.gif
До Ширина: | Высота: | Размер: 251 B |
Двоичные данные
editor/ui/composer/content/images/tag-cod.gif
До Ширина: | Высота: | Размер: 211 B |
Двоичные данные
editor/ui/composer/content/images/tag-col.gif
До Ширина: | Высота: | Размер: 183 B |
Двоичные данные
editor/ui/composer/content/images/tag-cpt.gif
До Ширина: | Высота: | Размер: 262 B |
Двоичные данные
editor/ui/composer/content/images/tag-ctr.gif
До Ширина: | Высота: | Размер: 229 B |
Двоичные данные
editor/ui/composer/content/images/tag-dd.gif
До Ширина: | Высота: | Размер: 159 B |
Двоичные данные
editor/ui/composer/content/images/tag-del.gif
До Ширина: | Высота: | Размер: 175 B |
Двоичные данные
editor/ui/composer/content/images/tag-dfn.gif
До Ширина: | Высота: | Размер: 185 B |
Двоичные данные
editor/ui/composer/content/images/tag-dir.gif
До Ширина: | Высота: | Размер: 176 B |
Двоичные данные
editor/ui/composer/content/images/tag-div.gif
До Ширина: | Высота: | Размер: 168 B |
Двоичные данные
editor/ui/composer/content/images/tag-dl.gif
До Ширина: | Высота: | Размер: 145 B |
Двоичные данные
editor/ui/composer/content/images/tag-dt.gif
До Ширина: | Высота: | Размер: 153 B |
Двоичные данные
editor/ui/composer/content/images/tag-em.gif
До Ширина: | Высота: | Размер: 155 B |
Двоичные данные
editor/ui/composer/content/images/tag-fld.gif
До Ширина: | Высота: | Размер: 226 B |
Двоичные данные
editor/ui/composer/content/images/tag-fnt.gif
До Ширина: | Высота: | Размер: 206 B |
Двоичные данные
editor/ui/composer/content/images/tag-for.gif
До Ширина: | Высота: | Размер: 209 B |
Двоичные данные
editor/ui/composer/content/images/tag-frm.gif
До Ширина: | Высота: | Размер: 221 B |
Двоичные данные
editor/ui/composer/content/images/tag-fst.gif
До Ширина: | Высота: | Размер: 267 B |
Двоичные данные
editor/ui/composer/content/images/tag-h1.gif
До Ширина: | Высота: | Размер: 137 B |
Двоичные данные
editor/ui/composer/content/images/tag-h2.gif
До Ширина: | Высота: | Размер: 151 B |
Двоичные данные
editor/ui/composer/content/images/tag-h3.gif
До Ширина: | Высота: | Размер: 149 B |
Двоичные данные
editor/ui/composer/content/images/tag-h4.gif
До Ширина: | Высота: | Размер: 145 B |
Двоичные данные
editor/ui/composer/content/images/tag-h5.gif
До Ширина: | Высота: | Размер: 148 B |
Двоичные данные
editor/ui/composer/content/images/tag-h6.gif
До Ширина: | Высота: | Размер: 149 B |
Двоичные данные
editor/ui/composer/content/images/tag-hed.gif
До Ширина: | Высота: | Размер: 204 B |
Двоичные данные
editor/ui/composer/content/images/tag-hr.gif
До Ширина: | Высота: | Размер: 152 B |
Двоичные данные
editor/ui/composer/content/images/tag-html.gif
До Ширина: | Высота: | Размер: 198 B |
Двоичные данные
editor/ui/composer/content/images/tag-i.gif
До Ширина: | Высота: | Размер: 126 B |
Двоичные данные
editor/ui/composer/content/images/tag-ifr.gif
До Ширина: | Высота: | Размер: 238 B |
Двоичные данные
editor/ui/composer/content/images/tag-img.gif
До Ширина: | Высота: | Размер: 182 B |
Двоичные данные
editor/ui/composer/content/images/tag-inp.gif
До Ширина: | Высота: | Размер: 207 B |
Двоичные данные
editor/ui/composer/content/images/tag-ins.gif
До Ширина: | Высота: | Размер: 178 B |
Двоичные данные
editor/ui/composer/content/images/tag-isx.gif
До Ширина: | Высота: | Размер: 267 B |
Двоичные данные
editor/ui/composer/content/images/tag-kbd.gif
До Ширина: | Высота: | Размер: 186 B |
Двоичные данные
editor/ui/composer/content/images/tag-lbl.gif
До Ширина: | Высота: | Размер: 210 B |
Двоичные данные
editor/ui/composer/content/images/tag-lgn.gif
До Ширина: | Высота: | Размер: 244 B |
Двоичные данные
editor/ui/composer/content/images/tag-li.gif
До Ширина: | Высота: | Размер: 143 B |
Двоичные данные
editor/ui/composer/content/images/tag-lnk.gif
До Ширина: | Высота: | Размер: 187 B |
Двоичные данные
editor/ui/composer/content/images/tag-lst.gif
До Ширина: | Высота: | Размер: 248 B |
Двоичные данные
editor/ui/composer/content/images/tag-map.gif
До Ширина: | Высота: | Размер: 188 B |
Двоичные данные
editor/ui/composer/content/images/tag-men.gif
До Ширина: | Высота: | Размер: 214 B |
Двоичные данные
editor/ui/composer/content/images/tag-met.gif
До Ширина: | Высота: | Размер: 202 B |