Merge from cvs-trunk-mirror to mozilla-central.

--HG--
rename : js/src/jsarray.c => js/src/jsarray.cpp
rename : js/src/jsdbgapi.c => js/src/jsdbgapi.cpp
rename : js/src/jsexn.c => js/src/jsexn.cpp
rename : js/src/jsgc.c => js/src/jsgc.cpp
rename : js/src/jsinterp.c => js/src/jsinterp.cpp
rename : js/src/jsinvoke.c => js/src/jsinvoke.cpp
rename : js/src/jsnum.c => js/src/jsnum.cpp
rename : js/src/jsobj.c => js/src/jsobj.cpp
rename : js/src/jsopcode.c => js/src/jsopcode.cpp
rename : js/src/jsregexp.c => js/src/jsregexp.cpp
rename : js/src/jsstr.c => js/src/jsstr.cpp
This commit is contained in:
jorendorff@mozilla.com 2008-03-05 15:00:01 -06:00
commit 35ce5bea9f
305 changed files with 5410 additions and 4544 deletions

View File

@ -93,10 +93,6 @@ ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2)
EXTRA_DSO_LDOPTS += $(MOZ_GTK2_LIBS)
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
EXTRA_DSO_LDOPTS += -framework Cocoa
endif
ifeq ($(OS_ARCH),WINNT)
OS_LIBS += oleaut32.lib
endif

View File

@ -114,7 +114,7 @@ endif
endif
ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
TK_LIBS := -framework Cocoa $(TK_LIBS)
TK_LIBS := $(TK_LIBS)
endif
ifdef MOZ_ENABLE_LIBXUL
@ -237,7 +237,7 @@ include $(topsrcdir)/config/static-rules.mk
DEFINES += -DIMPL_XREAPI
endif
ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
ifdef BUILD_STATIC_LIBS
ifdef USE_PREBINDING
BIN_FLAGS += -Wl,-headerpad -Wl,5a0c

View File

@ -381,8 +381,7 @@
label="&bookmarksMenu.label;" accesskey="&bookmarksMenu.accesskey;"
ondragenter="PlacesMenuDNDController.onBookmarksMenuDragEnter(event);"
ondragdrop="nsDragAndDrop.drop(event, BookmarksMenuDropHandler);"
ondragover="nsDragAndDrop.dragOver(event, BookmarksMenuDropHandler);"
ondragexit="PlacesMenuDNDController.onDragExit(event);">
ondragover="nsDragAndDrop.dragOver(event, BookmarksMenuDropHandler);">
<menupopup id="bookmarksMenuPopup"
type="places" asyncinit="true"
place="place:folder=2&amp;expandQueries=1"

View File

@ -817,21 +817,6 @@ var PlacesMenuDNDController = {
this._springLoadDelay, [event]);
},
/**
* When the user drags out of the Bookmarks Menu or Toolbar, set a timer to
* manually close the popup chain that was dragged out of. We need to do this
* since the global popup dismissal listener does not handle multiple extant
* popup chains well. See bug 332845 for more information.
*/
onDragExit: function PMDC_onDragExit(event) {
// Ensure that we don't set multiple timers if there's one already set.
if ("closeTime" in this._timers)
return;
this._setDragTimer("closeTime", this._closePopups,
this._springLoadDelay, [event.target]);
},
/**
* Creates a timer that will fire during a drag and drop operation.
* @param id
@ -882,38 +867,6 @@ var PlacesMenuDNDController = {
node.localName == "toolbarbutton" && node.getAttribute("type") == "menu";
},
/**
* Close all pieces of toplevel menu UI in the browser window. Called in
* circumstances where there may be multiple chains of menupopups, e.g.
* during drag and drop operations between menus, and in context menu-on-
* menu situations.
*/
_closePopups: function PMDC__closePopups(target) {
if (PlacesControllerDragHelper.draggingOverChildNode(target))
return;
if ("closeTime" in this._timers)
delete this._timers.closeTime;
// Close the bookmarks menu
var bookmarksMenu = document.getElementById("bookmarksMenu");
bookmarksMenu.firstChild.hidePopup();
var bookmarksBar = document.getElementById("bookmarksBarContent");
if (bookmarksBar) {
// Close the overflow chevron menu and all its children
bookmarksBar._chevron.firstChild.hidePopup();
// Close all popups on the bookmarks toolbar
var toolbarItems = bookmarksBar.childNodes;
for (var i = 0; i < toolbarItems.length; ++i) {
var item = toolbarItems[i]
if (this._isContainer(item))
item.firstChild.hidePopup();
}
}
},
/**
* Opens the Bookmarks Menu when it is dragged over. (This is special-cased,
* since the toplevel Bookmarks <menu> is not a member of an existing places

View File

@ -65,3 +65,13 @@ window[chromehidden~="toolbar"] toolbar:not(.toolbar-primary):not(.chromeclass-m
#FindToolbar {
overflow-x: hidden;
}
/* Identity UI */
#identity-popup-content-box.unknownIdentity > #identity-popup-connectedToLabel ,
#identity-popup-content-box.unknownIdentity > #identity-popup-runByLabel ,
#identity-popup-content-box.unknownIdentity > #identity-popup-content-host ,
#identity-popup-content-box.unknownIdentity > #identity-popup-content-owner ,
#identity-popup-content-box.verifiedIdentity > #identity-popup-connectedToLabel2 ,
#identity-popup-content-box.verifiedDomain > #identity-popup-connectedToLabel2 {
display: none;
}

View File

@ -380,7 +380,6 @@
onclick="BookmarksEventHandler.onClick(event);"
oncommand="BookmarksEventHandler.onCommand(event);"
onpopupshowing="BookmarksEventHandler.onPopupShowing(event);"
ondragexit="PlacesMenuDNDController.onDragExit(event);"
tooltip="btTooltip"/>
</toolbaritem>

View File

@ -2815,22 +2815,36 @@
var ctboStart = ctbo.screenX;
var ctboEnd = ctboStart + ctbo.width;
// only start the flash timer if the new tab (which was loaded in
// the background) is not completely visible
if (tsboStart > ctboStart || ctboEnd > tsboEnd) {
this._animateStep = 0;
// Is the new tab already completely visible?
if (tsboStart <= ctboStart && ctboEnd <= tsboEnd)
return;
if (!this._animateTimer)
this._animateTimer =
Components.classes["@mozilla.org/timer;1"]
.createInstance(Components.interfaces.nsITimer);
else
this._animateTimer.cancel();
if (this.mTabstrip.smoothScroll) {
var selStart = this.selectedItem.boxObject.screenX;
var selEnd = selStart + this.selectedItem.boxObject.width;
this._animateTimer.initWithCallback(this,
this._animateDelay,
Components.interfaces.nsITimer.TYPE_REPEATING_SLACK);
// Can we make both the new tab and the selected tab completely visible?
if (Math.max(ctboEnd - selStart, selEnd - ctboStart) <= tsbo.width) {
this.mTabstrip.ensureElementIsVisible(aTab);
return;
}
this.mTabstrip._smoothScrollByPixels(this.mTabstrip._isLTRScrollbox ?
selStart - tsboStart : selEnd - tsboEnd);
}
// start the flash timer
this._animateStep = 0;
if (!this._animateTimer)
this._animateTimer =
Components.classes["@mozilla.org/timer;1"]
.createInstance(Components.interfaces.nsITimer);
else
this._animateTimer.cancel();
this._animateTimer.initWithCallback(this, this._animateDelay,
this._animateTimer.TYPE_REPEATING_SLACK);
]]></body>
</method>

View File

@ -5,7 +5,19 @@ function url(spec) {
}
var gTestPage = null;
var gBrowserHandler;
function setHandlerFunc(aResultFunc) {
DOMLinkHandler.handleEvent = function (event) {
gBrowserHandler.call(DOMLinkHandler, event);
aResultFunc();
}
}
function test() {
gBrowserHandler = DOMLinkHandler.handleEvent;
ok(gBrowserHandler, "found browser handler");
waitForExplicitFinish();
var activeWin = Application.activeWindow;
gTestPage = activeWin.open(url("chrome://mochikit/content/browser/browser/base/content/test/autodiscovery.html"));
@ -35,10 +47,11 @@ function runIconDiscoveryTest() {
head.removeChild(head.getElementsByTagName('link')[0]);
iconDiscoveryTests.shift();
setTimeout(iconDiscovery, 0) // Run the next test.
iconDiscovery(); // Run the next test.
}
function iconDiscovery() {
setHandlerFunc(runIconDiscoveryTest);
if (iconDiscoveryTests.length) {
gProxyFavIcon.removeAttribute("src");
@ -56,8 +69,6 @@ function iconDiscovery() {
link.href = href;
link.type = type;
head.appendChild(link);
setTimeout(runIconDiscoveryTest, 0);
} else {
searchDiscovery();
}
@ -94,10 +105,17 @@ function runSearchDiscoveryTest() {
ok(!test.pass, test.text);
searchDiscoveryTests.shift();
setTimeout(searchDiscovery, 0) // Run the next test.
searchDiscovery(); // Run the next test.
}
// This handler is called twice, once for each added link element.
// Only want to check once the second link element has been added.
var ranOnce = false;
function runMultipleEnginesTestAndFinalize() {
if (!ranOnce) {
ranOnce = true;
return;
}
var browser = gBrowser.getBrowserForDocument(gTestPage.document);
ok(browser.engines, "has engines");
is(browser.engines.length, 1, "only one engine");
@ -112,6 +130,7 @@ function searchDiscovery() {
var browser = gBrowser.getBrowserForDocument(gTestPage.document);
if (searchDiscoveryTests.length) {
setHandlerFunc(runSearchDiscoveryTest);
var test = searchDiscoveryTests[0];
var link = gTestPage.document.createElement("link");
@ -127,9 +146,8 @@ function searchDiscovery() {
link.type = type;
link.title = title;
head.appendChild(link);
setTimeout(runSearchDiscoveryTest, 0);
} else {
setHandlerFunc(runMultipleEnginesTestAndFinalize);
// Test multiple engines with the same title
var link = gTestPage.document.createElement("link");
link.rel = "search";
@ -141,7 +159,5 @@ function searchDiscovery() {
head.appendChild(link);
head.appendChild(link2);
setTimeout(runMultipleEnginesTestAndFinalize, 0);
}
}

View File

@ -43,8 +43,9 @@
const Cc = Components.classes;
const Ci = Components.interfaces;
const Cr = Components.results;
const Cu = Components.utils;
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
function LOG(str) {
var prefB = Cc["@mozilla.org/preferences-service;1"].
@ -84,6 +85,7 @@ const TYPE_MAYBE_FEED = "application/vnd.mozilla.maybe.feed";
const TYPE_MAYBE_AUDIO_FEED = "application/vnd.mozilla.maybe.audio.feed";
const TYPE_MAYBE_VIDEO_FEED = "application/vnd.mozilla.maybe.video.feed";
const URI_BUNDLE = "chrome://browser/locale/feeds/subscribe.properties";
const SUBSCRIBE_PAGE_URI = "chrome://browser/content/feeds/subscribe.xhtml";
const PREF_SELECTED_APP = "browser.feeds.handlers.application";
const PREF_SELECTED_WEB = "browser.feeds.handlers.webservice";
@ -234,6 +236,19 @@ FeedWriter.prototype = {
}
},
/**
* Calls doCommand for a the given XUL element within the context of the
* content document.
*
* @param aElement
* the XUL element to call doCommand() on.
*/
_safeDoCommand: function FW___safeDoCommand(aElement) {
var sandbox = new Cu.Sandbox(this._window);
sandbox.element = aElement;
Cu.evalInSandbox("element.doCommand();", sandbox);
},
__faviconService: null,
get _faviconService() {
if (!this.__faviconService)
@ -283,9 +298,13 @@ FeedWriter.prototype = {
aCheckbox.removeAttribute('checked');
if (change) {
var event = this._document.createEvent('Events');
event.initEvent('CheckboxStateChange', true, true);
aCheckbox.dispatchEvent(event);
var sandbox = new Cu.Sandbox(this._window);
sandbox.document = this._document;
sandbox.checkbox = aCheckbox;
var codeStr = "var event = document.createEvent('Events'); " +
"event.initEvent('CheckboxStateChange', true, true);" +
"checkbox.dispatchEvent(event);"
Cu.evalInSandbox(codeStr, sandbox);
}
},
@ -726,7 +745,7 @@ FeedWriter.prototype = {
// Show and select the selected application menuitem
selectedAppMenuItem.hidden = false;
selectedAppMenuItem.doCommand();
this._safeDoCommand(selectedAppMenuItem);
return true;
}
}
@ -859,7 +878,7 @@ FeedWriter.prototype = {
return;
}
handlers[0].doCommand();
this._safeDoCommand(handlers[0]);
}
break;
}
@ -874,7 +893,7 @@ FeedWriter.prototype = {
if (selectedApp) {
this._initMenuItemWithFile(selectedAppMenuItem, selectedApp);
selectedAppMenuItem.hidden = false;
selectedAppMenuItem.doCommand();
this._safeDoCommand(selectedAppMenuItem);
// Only show the default reader menuitem if the default reader
// isn't the selected application
@ -891,7 +910,7 @@ FeedWriter.prototype = {
default: {
var liveBookmarksMenuItem = this._document.getElementById("liveBookmarksMenuItem");
if (liveBookmarksMenuItem)
liveBookmarksMenuItem.doCommand();
this._safeDoCommand(liveBookmarksMenuItem);
}
}
},
@ -1078,7 +1097,6 @@ FeedWriter.prototype = {
getInterface(Ci.nsIWebNavigation).
QueryInterface(Ci.nsIDocShell).currentDocumentChannel;
const SUBSCRIBE_PAGE_URI = "chrome://browser/content/feeds/subscribe.xhtml";
var uri = makeURI(SUBSCRIBE_PAGE_URI);
var resolvedURI = Cc["@mozilla.org/chrome/chrome-registry;1"].
getService(Ci.nsIChromeRegistry).
@ -1182,7 +1200,7 @@ FeedWriter.prototype = {
this.__bundle = null;
this._selectedApplicationItemWrapped = null;
this._defaultSystemReaderItemWrapped = null;
this._FeedURI = null;
this._feedURI = null;
var historySvc = Cc["@mozilla.org/browser/nav-history-service;1"].
getService(Ci.nsINavHistoryService);
historySvc.removeObserver(this);

View File

@ -48,9 +48,11 @@
#include "nsISupportsPrimitives.h"
#include "nsServiceManagerUtils.h"
#include "nsIProperties.h"
#include <InternetConfig.h>
#define MACIE_BOOKMARKS_FILE_NAME NS_LITERAL_STRING("Favorites.html")
#define MACIE_PREFERENCES_FOLDER_NAME NS_LITERAL_STRING("Explorer")
#define MACIE_DEFAULT_HOMEPAGE_PREF "\p4D534945¥WWWHomePage"
#define TEMP_BOOKMARKS_FILE_NAME NS_LITERAL_STRING("bookmarks_tmp.html")
#define MIGRATION_BUNDLE "chrome://browser/locale/migration/migration.properties"
@ -137,11 +139,37 @@ nsMacIEProfileMigrator::GetMigrateData(const PRUnichar* aProfile,
NS_IMETHODIMP
nsMacIEProfileMigrator::GetSourceExists(PRBool* aResult)
{
// Since the IE bookmarks file can sometimes be created by programs
// other than Internet Explorer, thus misleading, we must first
// check whether IE is even installed on this Mac. We accomplish this by
// checking one of IEs stored preferences in the apple.internetconfig file.
PRBool prefExists = PR_FALSE;
OSErr err;
ICInstance icInstance;
err = ::ICStart(&icInstance, 'FRFX');
if (err == noErr) {
ICAttr attrs;
Str255 IEhomePageValue;
long size = kICFileSpecHeaderSize;
err = ::ICGetPref(icInstance, MACIE_DEFAULT_HOMEPAGE_PREF, &attrs,
IEhomePageValue, &size);
if (err == noErr)
prefExists = PR_TRUE;
::ICStop(icInstance);
}
if (!prefExists) {
*aResult = PR_FALSE;
return NS_OK;
}
PRUint16 data;
GetMigrateData(nsnull, PR_FALSE, &data);
*aResult = data != 0;
return NS_OK;
}

View File

@ -616,6 +616,8 @@ var PlacesOrganizer = {
var queries = [];
var options = this.getCurrentOptions();
options.excludeQueries = true;
// unset expandQueries=false, which is set by the left pane
options.expandQueries = true;
var searchUI = document.getElementById("searchModifiers");
if (!searchUI.hidden)
queries = PlacesQueryBuilder.queries;

View File

@ -123,14 +123,14 @@ PlacesTreeView.prototype = {
SESSION_STATUS_START: 1,
SESSION_STATUS_CONTINUE: 2,
_getRowSessionStatus: function PTV__getRowSessionStatus(aRow) {
var node = this._visibleElements[aRow];
var node = this._visibleElements[aRow].node;
if (!PlacesUtils.nodeIsVisit(node) || asVisit(node).sessionId == 0)
return this.SESSION_STATUS_NONE;
if (aRow == 0)
return this.SESSION_STATUS_START;
var previousNode = this._visibleElements[aRow - 1];
var previousNode = this._visibleElements[aRow - 1].node;
if (!PlacesUtils.nodeIsVisit(previousNode) ||
node.sessionId != asVisit(previousNode).sessionId)
return this.SESSION_STATUS_START;
@ -147,7 +147,7 @@ PlacesTreeView.prototype = {
if (this._result) {
// Any current visible elements need to be marked as invisible.
for (var i = 0; i < this._visibleElements.length; i++) {
this._visibleElements[i].viewIndex = -1;
this._visibleElements[i].node.viewIndex = -1;
}
}
@ -158,7 +158,8 @@ PlacesTreeView.prototype = {
asContainer(rootNode);
if (this._showRoot) {
// List the root node
this._visibleElements.push(this._result.root);
this._visibleElements.push(
{ node: this._result.root, properties: null });
this._tree.rowCountChanged(0, 1);
this._result.root.viewIndex = 0;
}
@ -210,7 +211,7 @@ PlacesTreeView.prototype = {
// add item
curChild.viewIndex = aVisibleStartIndex + aVisible.length;
aVisible.push(curChild);
aVisible.push({ node: curChild, properties: null });
// recursively do containers
if (!this._flatList && PlacesUtils.containerTypes.indexOf(curChildType) != -1) {
@ -242,7 +243,7 @@ PlacesTreeView.prototype = {
NS_ASSERT(viewIndex >= 0, "Item is not visible, no rows to count");
var outerLevel = aNode.indentLevel;
for (var i = viewIndex + 1; i < this._visibleElements.length; i++) {
if (this._visibleElements[i].indentLevel <= outerLevel)
if (this._visibleElements[i].node.indentLevel <= outerLevel)
return i - viewIndex;
}
// this node plus its children occupy the bottom of the list
@ -270,7 +271,7 @@ PlacesTreeView.prototype = {
aContainer.viewIndex > this._visibleElements.length)
throw "Trying to expand a node that is not visible";
NS_ASSERT(this._visibleElements[aContainer.viewIndex] == aContainer,
NS_ASSERT(this._visibleElements[aContainer.viewIndex].node == aContainer,
"Visible index is out of sync!");
}
@ -296,13 +297,13 @@ PlacesTreeView.prototype = {
continue;
for (var nodeIndex = min.value; nodeIndex <= lastIndex; nodeIndex++)
previouslySelectedNodes.push({ node: this._visibleElements[nodeIndex],
oldIndex: nodeIndex });
previouslySelectedNodes.push(
{ node: this._visibleElements[nodeIndex].node, oldIndex: nodeIndex });
}
// Mark the removes as invisible
for (var i = 0; i < replaceCount; i++)
this._visibleElements[startReplacement + i].viewIndex = -1;
this._visibleElements[startReplacement + i].node.viewIndex = -1;
// Building the new list will set the new elements' visible indices.
var newElements = [];
@ -320,7 +321,7 @@ PlacesTreeView.prototype = {
if (replaceCount != newElements.length) {
for (i = startReplacement + newElements.length;
i < this._visibleElements.length; i ++) {
this._visibleElements[i].viewIndex = i;
this._visibleElements[i].node.viewIndex = i;
}
}
@ -556,10 +557,11 @@ PlacesTreeView.prototype = {
}
aItem.viewIndex = newViewIndex;
this._visibleElements.splice(newViewIndex, 0, aItem);
this._visibleElements.splice(newViewIndex, 0,
{ node: aItem, properties: null });
for (var i = newViewIndex + 1;
i < this._visibleElements.length; i ++) {
this._visibleElements[i].viewIndex = i;
this._visibleElements[i].node.viewIndex = i;
}
this._tree.rowCountChanged(newViewIndex, 1);
@ -590,7 +592,7 @@ PlacesTreeView.prototype = {
this._visibleElements.splice(oldViewIndex, count);
for (var i = oldViewIndex; i < this._visibleElements.length; i++)
this._visibleElements[i].viewIndex = i;
this._visibleElements[i].node.viewIndex = i;
this._tree.rowCountChanged(oldViewIndex, -count);
@ -676,7 +678,7 @@ PlacesTreeView.prototype = {
continue;
for (var nodeIndex = min.value; nodeIndex <= lastIndex; nodeIndex++)
nodesToSelect.push(this._visibleElements[nodeIndex]);
nodesToSelect.push(this._visibleElements[nodeIndex].node);
}
if (nodesToSelect.length > 0)
selection.selectEventsSuppressed = true;
@ -714,8 +716,10 @@ PlacesTreeView.prototype = {
var viewIndex = aOldItem.viewIndex;
aNewItem.viewIndex = viewIndex;
if (viewIndex >= 0 &&
viewIndex < this._visibleElements.length)
this._visibleElements[viewIndex] = aNewItem;
viewIndex < this._visibleElements.length) {
this._visibleElements[viewIndex].node = aNewItem;
this._visibleElements[viewIndex].properties = null;
}
aOldItem.viewIndex = -1;
this._tree.invalidateRow(viewIndex);
},
@ -812,7 +816,7 @@ PlacesTreeView.prototype = {
if (aIndex > this._visibleElements.length)
throw Cr.NS_ERROR_INVALID_ARG;
return this._visibleElements[aIndex];
return this._visibleElements[aIndex].node;
},
treeIndexForNode: function PTV_treeNodeForIndex(aNode) {
@ -820,7 +824,7 @@ PlacesTreeView.prototype = {
if (viewIndex < 0)
return Ci.nsINavHistoryResultTreeViewer.INDEX_INVISIBLE;
NS_ASSERT(this._visibleElements[viewIndex] == aNode,
NS_ASSERT(this._visibleElements[viewIndex].node == aNode,
"Node's visible index and array out of sync");
return viewIndex;
},
@ -878,26 +882,35 @@ PlacesTreeView.prototype = {
if (columnType != "title")
return;
var node = this._visibleElements[aRow];
var node = this._visibleElements[aRow].node;
var properties = this._visibleElements[aRow].properties;
var nodeType = node.type;
if (PlacesUtils.containerTypes.indexOf(nodeType) != -1) {
if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_QUERY) {
aProperties.AppendElement(this._getAtomFor("query"));
if (this._showQueryAsFolder)
aProperties.AppendElement(this._getAtomFor("folder"));
} else if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_FOLDER ||
if (!properties) {
properties = new Array();
var nodeType = node.type;
if (PlacesUtils.containerTypes.indexOf(nodeType) != -1) {
if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_QUERY) {
properties.push(this._getAtomFor("query"));
if (this._showQueryAsFolder)
properties.push(this._getAtomFor("folder"));
}
else if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_FOLDER ||
nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_FOLDER_SHORTCUT) {
if (PlacesUtils.annotations.itemHasAnnotation(node.itemId,
LMANNO_FEEDURI))
aProperties.AppendElement(this._getAtomFor("livemark"));
else if (PlacesUtils.bookmarks.getFolderIdForItem(node.itemId) ==
PlacesUtils.tagsFolderId)
aProperties.AppendElement(this._getAtomFor("tagContainer"));
if (PlacesUtils.annotations.itemHasAnnotation(node.itemId,
LMANNO_FEEDURI))
properties.push(this._getAtomFor("livemark"));
else if (PlacesUtils.bookmarks.getFolderIdForItem(node.itemId) ==
PlacesUtils.tagsFolderId)
properties.push(this._getAtomFor("tagContainer"));
}
}
else if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_SEPARATOR)
properties.push(this._getAtomFor("separator"));
this._visibleElements[aRow].properties = properties;
}
else if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_SEPARATOR)
aProperties.AppendElement(this._getAtomFor("separator"));
for (var i = 0; i < properties.length; i++)
aProperties.AppendElement(properties[i]);
},
getColumnProperties: function(aColumn, aProperties) { },
@ -905,7 +918,7 @@ PlacesTreeView.prototype = {
isContainer: function PTV_isContainer(aRow) {
this._ensureValidRow(aRow);
var node = this._visibleElements[aRow];
var node = this._visibleElements[aRow].node;
if (PlacesUtils.nodeIsContainer(node)) {
// the root node is always expandable
if (!node.parent)
@ -926,10 +939,10 @@ PlacesTreeView.prototype = {
return false;
this._ensureValidRow(aRow);
if (!PlacesUtils.nodeIsContainer(this._visibleElements[aRow]))
if (!PlacesUtils.nodeIsContainer(this._visibleElements[aRow].node))
throw Cr.NS_ERROR_INVALID_ARG;
return this._visibleElements[aRow].containerOpen;
return this._visibleElements[aRow].node.containerOpen;
},
isContainerEmpty: function PTV_isContainerEmpty(aRow) {
@ -938,15 +951,15 @@ PlacesTreeView.prototype = {
this._ensureValidRow(aRow);
if (!PlacesUtils.nodeIsContainer(this._visibleElements[aRow]))
if (!PlacesUtils.nodeIsContainer(this._visibleElements[aRow].node))
throw Cr.NS_ERROR_INVALID_ARG;
return !this._visibleElements[aRow].hasChildren;
return !this._visibleElements[aRow].node.hasChildren;
},
isSeparator: function PTV_isSeparator(aRow) {
this._ensureValidRow(aRow);
return PlacesUtils.nodeIsSeparator(this._visibleElements[aRow]);
return PlacesUtils.nodeIsSeparator(this._visibleElements[aRow].node);
},
isSorted: function PTV_isSorted() {
@ -1040,7 +1053,7 @@ PlacesTreeView.prototype = {
getParentIndex: function PTV_getParentIndex(aRow) {
this._ensureValidRow(aRow);
var parent = this._visibleElements[aRow].parent;
var parent = this._visibleElements[aRow].node.parent;
if (!parent || parent.viewIndex < 0)
return -1;
@ -1054,9 +1067,9 @@ PlacesTreeView.prototype = {
return false;
}
var thisLevel = this._visibleElements[aRow].indentLevel;
var thisLevel = this._visibleElements[aRow].node.indentLevel;
for (var i = aAfterIndex + 1; i < this._visibleElements.length; ++i) {
var nextLevel = this._visibleElements[i].indentLevel;
var nextLevel = this._visibleElements[i].node.indentLevel;
if (nextLevel == thisLevel)
return true;
if (nextLevel < thisLevel)
@ -1074,9 +1087,9 @@ PlacesTreeView.prototype = {
// That is because nsNavHistoryResult uses -1 as the indent level for the
// root node regardless of our internal showRoot state.
if (this._showRoot)
return this._visibleElements[aRow].indentLevel + 1;
return this._visibleElements[aRow].node.indentLevel + 1;
return this._visibleElements[aRow].indentLevel;
return this._visibleElements[aRow].node.indentLevel;
},
getImageSrc: function PTV_getImageSrc(aRow, aColumn) {
@ -1086,7 +1099,7 @@ PlacesTreeView.prototype = {
if (aColumn.index != 0)
return "";
var node = this._visibleElements[aRow];
var node = this._visibleElements[aRow].node;
// Containers may or may not have favicons. If not, we will return
// nothing as the image, and the style rule should pick up the
@ -1107,7 +1120,7 @@ PlacesTreeView.prototype = {
getCellText: function PTV_getCellText(aRow, aColumn) {
this._ensureValidRow(aRow);
var node = this._visibleElements[aRow];
var node = this._visibleElements[aRow].node;
var columnType = this._getColumnType(aColumn);
switch (columnType) {
case this.COLUMN_TYPE_TITLE:
@ -1180,7 +1193,7 @@ PlacesTreeView.prototype = {
throw Cr.NS_ERROR_UNEXPECTED;
this._ensureValidRow(aRow);
var node = this._visibleElements[aRow];
var node = this._visibleElements[aRow].node;
if (!PlacesUtils.nodeIsContainer(node))
return; // not a container, nothing to do

View File

@ -329,6 +329,8 @@ nsPlacesImportExportService::~nsPlacesImportExportService()
class BookmarkContentSink : public nsIHTMLContentSink
{
public:
BookmarkContentSink();
nsresult Init(PRBool aAllowRootChanges,
nsINavBookmarksService* bookmarkService,
PRInt64 aFolder,
@ -436,6 +438,10 @@ protected:
#endif
};
BookmarkContentSink::BookmarkContentSink() : mFrames(16)
{
}
// BookmarkContentSink::Init
//
// Note that the bookmark service pointer is passed in. We can not create
@ -1222,9 +1228,11 @@ BookmarkContentSink::NewFrame()
// don't clear last-modified, in case there's a description
}
frame.mPreviousId = ourID;
if (!mFrames.AppendElement(BookmarkImportFrame(ourID)))
return NS_ERROR_OUT_OF_MEMORY;
frame.mPreviousId = ourID;
return NS_OK;
}

View File

@ -48,7 +48,7 @@
</broadcasterset>
<menupopup id="menu_HelpPopup">
<menuitem id="menu_HelpPopup_reportPhishingtoolmenu"
label="&reportPhishSiteMenu.title;..."
label="&reportPhishSiteMenu.title2;"
accesskey="&reportPhishSiteMenu.accesskey;"
insertbefore="updateSeparator"
observes="reportPhishingBroadcaster"
@ -56,7 +56,7 @@
onclick="checkForMiddleClick(this, event);"/>
<!-- XXX Bug 415846
<menuitem id="menu_HelpPopup_reportPhishingErrortoolmenu"
label="&safeb.palm.notforgery.label;..."
label="&safeb.palm.notforgery.label2;"
accesskey="&reportPhishSiteMenu.accesskey;"
insertbefore="updateSeparator"
observes="reportPhishingErrorBroadcaster"

View File

@ -19,6 +19,7 @@ gu-IN
he
hu
hy-AM
id
it
ja
ja-JP-mac
@ -41,6 +42,7 @@ si
sk
sl
sq
sr
sv-SE
tr
uk

View File

@ -12,6 +12,6 @@
<!ENTITY safeb.palm.accept.statustext "Navigate to my home page">
<!ENTITY safeb.palm.decline.label "Ignore this warning">
<!ENTITY safeb.palm.decline.statustext "Close warning" >
<!ENTITY safeb.palm.notforgery.label "This isn't a web forgery">
<!ENTITY safeb.palm.notforgery.label2 "This isn't a web forgery">
<!ENTITY safeb.urlbaricon.tooltip "This page might be dangerous; click for details.">

View File

@ -1,2 +1,2 @@
<!ENTITY reportPhishSiteMenu.title "Report Web Forgery">
<!ENTITY reportPhishSiteMenu.title2 "Report Web Forgery">
<!ENTITY reportPhishSiteMenu.accesskey "F">

View File

@ -24,5 +24,7 @@ def test(mod, path, entity = None):
# only region.properties exceptions remain, compare all others
return True
return not (re.match(r"browser\.search\.order.[1-9]", entity) or
re.match(r"browser\.contentHandlers\.types.[0-5]", entity))
return not (re.match(r"browser\.search\.order\.[1-9]", entity) or
re.match(r"browser\.contentHandlers\.types\.[0-5]", entity) or
re.match(r"gecko\.handlerService\.schemes\.", entity) or
re.match(r"gecko\.handlerService\.defaultHandlersVersion", entity))

View File

@ -2,6 +2,7 @@ ar
be
ca
cs
da
de
el
en-GB
@ -22,6 +23,7 @@ ja win32 linux
ka
ko
lt
mk
nb-NO
nl
pa-IN

View File

@ -861,7 +861,7 @@ toolbar[iconsize="small"] #paste-button[disabled="true"] {
}
#identity-icon-label[value=""] {
display: none;
display: none;
}
#identity-box.verifiedIdentity > hbox {
@ -877,70 +877,56 @@ toolbar[iconsize="small"] #paste-button[disabled="true"] {
-moz-image-region: rect(0px, 64px, 64px, 0px);
}
.verifiedDomain > #identity-popup-container > #identity-popup-icon {
#identity-popup.verifiedDomain > #identity-popup-container > #identity-popup-icon {
-moz-image-region: rect(64px, 64px, 128px, 0px);
}
.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
#identity-popup.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
-moz-image-region: rect(128px, 64px, 192px, 0px);
}
/* Identity popup body text */
.unknownIdentity > #identity-popup-connectedToLabel,
.unknownIdentity > #identity-popup-runByLabel,
.unknownIdentity > #identity-popup-content-host,
.unknownIdentity > #identity-popup-content-owner {
display: none;
}
.verifiedIdentity > #identity-popup-connectedToLabel2,
.verifiedDomain > #identity-popup-connectedToLabel2 {
display: none;
}
#identity-popup-content-box > description,
#identity-popup-encryption-label {
white-space: -moz-pre-wrap;
white-space: pre-wrap;
color: black;
padding-left: 15px;
margin: 2px 0 4px;
}
#identity-popup-content-box > label {
white-space: -moz-pre-wrap;
white-space: pre-wrap;
padding-left: 15px;
margin: 0;
}
#identity-popup-content-host {
font-weight: bold;
max-width: 300px;
#identity-popup-content-host ,
#identity-popup-content-owner {
font-weight: bold;
max-width: 300px;
}
#identity-popup-content-host ,
#identity-popup-content-box.verifiedIdentity > #identity-popup-content-owner {
font-size: 140%;
}
#identity-popup-content-owner {
font-weight: bold;
max-width: 300px;
margin-bottom: 0 !important;
}
.verifiedIdentity > #identity-popup-content-owner,
.verifiedIdentity > #identity-popup-content-host,
.verifiedDomain > #identity-popup-content-host {
font-size: 140%;
margin-bottom: 0 !important;
}
#identity-popup-content-verifier {
margin: 4px 0 2px;
}
.verifiedIdentity > #identity-popup-encryption,
.verifiedDomain > #identity-popup-encryption {
#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption ,
#identity-popup-content-box.verifiedDomain > #identity-popup-encryption {
margin-top: 10px;
margin-left: -18px;
}
.verifiedIdentity > #identity-popup-encryption > * > #identity-popup-encryption-icon,
.verifiedDomain > #identity-popup-encryption > * > #identity-popup-encryption-icon {
#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption > vbox > #identity-popup-encryption-icon ,
#identity-popup-content-box.verifiedDomain > #identity-popup-encryption > vbox > #identity-popup-encryption-icon {
list-style-image: url("chrome://browser/skin/Secure.png");
}

View File

@ -1397,23 +1397,23 @@ toolbarbutton.bookmark-item[dragover="true"][open="true"] {
}
#identity-icon-label {
margin: 0;
color: black;
padding: 3px 6px;
-moz-padding-end: 14px;
background: url("chrome://browser/skin/urlbar/startcap-secure-end.png") no-repeat center right;
margin: 0;
color: black;
padding: 3px 6px;
-moz-padding-end: 14px;
background: url("chrome://browser/skin/urlbar/startcap-secure-end.png") no-repeat center right;
}
#urlbar[focused="true"] > #identity-box > hbox > #identity-icon-label {
background-image: url("chrome://browser/skin/urlbar/startcap-secure-end-focused.png");
background-image: url("chrome://browser/skin/urlbar/startcap-secure-end-focused.png");
}
#identity-box.verifiedIdentity > hbox > #identity-icon-label {
background: url("chrome://browser/skin/urlbar/startcap-verified-end.png") no-repeat center right;
background: url("chrome://browser/skin/urlbar/startcap-verified-end.png") no-repeat center right;
}
#urlbar[focused="true"] > #identity-box.verifiedIdentity > hbox > #identity-icon-label {
background-image: url("chrome://browser/skin/urlbar/startcap-verified-end-focused.png");
background-image: url("chrome://browser/skin/urlbar/startcap-verified-end-focused.png");
}
#identity-box.verifiedDomain {
@ -1465,93 +1465,79 @@ toolbarbutton.bookmark-item[dragover="true"][open="true"] {
}
#identity-box.unknownIdentity > hbox > #identity-icon-label {
display: none;
display: none;
}
/* Popup Icons */
#identity-popup-icon {
height: 64px;
width: 64px;
padding: 0;
list-style-image: url("chrome://browser/skin/identity.png");
-moz-image-region: rect(0px, 64px, 64px, 0px);
height: 64px;
width: 64px;
padding: 0;
list-style-image: url("chrome://browser/skin/identity.png");
-moz-image-region: rect(0px, 64px, 64px, 0px);
}
.verifiedDomain > #identity-popup-container > #identity-popup-icon {
-moz-image-region: rect(64px, 64px, 128px, 0px);
#identity-popup.verifiedDomain > #identity-popup-container > #identity-popup-icon {
-moz-image-region: rect(64px, 64px, 128px, 0px);
}
.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
-moz-image-region: rect(128px, 64px, 192px, 0px);
#identity-popup.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
-moz-image-region: rect(128px, 64px, 192px, 0px);
}
/* Popup Body Text */
.unknownIdentity > #identity-popup-connectedToLabel,
.unknownIdentity > #identity-popup-runByLabel,
.unknownIdentity > #identity-popup-content-host,
.unknownIdentity > #identity-popup-content-owner {
display: none;
}
.verifiedIdentity > #identity-popup-connectedToLabel2,
.verifiedDomain > #identity-popup-connectedToLabel2 {
display: none;
}
#identity-popup-content-box > description,
#identity-popup-encryption-label {
white-space: -moz-pre-wrap;
color: black;
padding-left: 15px;
margin: 2px 0 4px;
white-space: pre-wrap;
color: black;
padding-left: 15px;
margin: 2px 0 4px;
}
#identity-popup-content-box > label {
white-space: -moz-pre-wrap;
margin-left: 0;
padding-left: 15px;
margin: 0;
white-space: pre-wrap;
margin-left: 0;
padding-left: 15px;
margin: 0;
}
#identity-popup-content-host {
font-weight: bold;
max-width: 300px;
#identity-popup-content-host ,
#identity-popup-content-owner {
font-weight: bold;
max-width: 300px;
}
#identity-popup-content-host ,
#identity-popup-content-box.verifiedIdentity > #identity-popup-content-owner {
font-size: 140%;
}
#identity-popup-content-owner {
font-weight: bold;
max-width: 300px;
margin-bottom: 0 !important;
}
.verifiedIdentity > #identity-popup-content-owner,
.verifiedIdentity > #identity-popup-content-host,
.verifiedDomain > #identity-popup-content-host {
font-size: 140%;
margin-bottom: 0 !important;
}
#identity-popup-content-verifier {
margin: 4px 0 2px;
}
.verifiedIdentity > #identity-popup-encryption,
.verifiedDomain > #identity-popup-encryption {
#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption ,
#identity-popup-content-box.verifiedDomain > #identity-popup-encryption {
margin-top: 10px;
margin-left: -18px;
}
.verifiedIdentity > #identity-popup-encryption > * > #identity-popup-encryption-icon,
.verifiedDomain > #identity-popup-encryption > * >#identity-popup-encryption-icon {
#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption > vbox > #identity-popup-encryption-icon ,
#identity-popup-content-box.verifiedDomain > #identity-popup-encryption > vbox > #identity-popup-encryption-icon {
list-style-image: url("chrome://browser/skin/Secure.png");
-moz-image-region: rect(0px, 18px, 18px, 0px);
}
/* Popup Bounding Box */
#identity-popup-container {
background-image: none;
background-color: white;
min-width: 280px;
padding: 10px;
background-image: none;
background-color: white;
min-width: 280px;
padding: 10px;
}
#download-monitor {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 609 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 577 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 364 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 584 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 585 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 714 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 726 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 71 KiB

View File

@ -161,31 +161,14 @@ menuitem.bookmark-item {
-moz-image-region: rect(16px, 32px, 32px, 16px);
}
/* livemarks have the same layout as folder-item, but in the browser-only livemark-item.png */
/* only the folder icon has any effect for now, item icon is unused */
.bookmark-item[container][livemark] {
list-style-image: url("chrome://browser/skin/livemark-folder.png");
-moz-image-region: rect(0px, 16px, 16px, 0px);
-moz-image-region: auto;
}
.bookmark-item[container][livemark][chromedir="rtl"] {
list-style-image: url("chrome://browser/skin/livemark-folder-rtl.png");
-moz-image-region: rect(0px, 16px, 16px, 0px);
}
.bookmark-item[container][livemark][open],
.bookmark-item[container][livemark][open][chromedir="rtl"] {
-moz-image-region: rect(16px, 16px, 32px, 0px);
}
.bookmark-item[type="menu"][livemark],
.bookmark-item[type="menu"][livemark][chromedir="rtl"] {
-moz-image-region: rect(0px, 32px, 16px, 16px);
}
.bookmark-item[type="menu"][livemark][open],
.bookmark-item[type="menu"][livemark][open][chromedir="rtl"] {
-moz-image-region: rect(16px, 32px, 32px, 16px);
.bookmark-item[container][livemark] .bookmark-item {
list-style-image: url("chrome://browser/skin/livemark-item.png");
-moz-image-region: auto;
}
.bookmark-item[container][tagContainer] {
@ -236,62 +219,62 @@ toolbar[iconsize="large"][mode="icons"] #unified-back-forward-button > .toolbarb
/* unified back button with keyhole icons */
toolbar[iconsize="large"][mode="icons"] #back-button {
-moz-image-region: rect(0px 394px 34px 360px);
-moz-image-region: rect(0px 398px 34px 360px);
-moz-padding-start: 2px;
}
toolbar[iconsize="large"][mode="icons"] #back-button:not([disabled="true"]):hover {
-moz-image-region: rect(34px 394px 68px 360px);
-moz-image-region: rect(34px 398px 68px 360px);
}
toolbar[iconsize="large"][mode="icons"] #back-button[disabled="true"] {
-moz-image-region: rect(68px 394px 102px 360px);
-moz-image-region: rect(68px 398px 102px 360px);
}
toolbar[iconsize="large"][mode="icons"] #back-button:not([disabled="true"]):active {
-moz-image-region: rect(102px 394px 136px 360px);
-moz-image-region: rect(102px 398px 136px 360px);
}
/* unified back button with keyhole icons, RTL version */
toolbar[iconsize="large"][mode="icons"] #back-button[chromedir="rtl"] {
-moz-image-region: rect(0px 504px 34px 470px);
-moz-image-region: rect(0px 516px 34px 478px);
}
toolbar[iconsize="large"][mode="icons"] #back-button[chromedir="rtl"]:not([disabled="true"]):hover {
-moz-image-region: rect(34px 504px 68px 470px);
-moz-image-region: rect(34px 516px 68px 478px);
}
toolbar[iconsize="large"][mode="icons"] #back-button[chromedir="rtl"][disabled="true"] {
-moz-image-region: rect(68px 504px 102px 470px);
-moz-image-region: rect(68px 516px 102px 478px);
}
toolbar[iconsize="large"][mode="icons"] #back-button[chromedir="rtl"]:not([disabled="true"]):active {
-moz-image-region: rect(102px 504px 136px 470px);
-moz-image-region: rect(102px 516px 136px 478px);
}
/* unified forward button with keyhole icons */
toolbar[iconsize="large"][mode="icons"] #forward-button {
-moz-image-region: rect(3px 420px 31px 394px);
-moz-image-region: rect(3px 424px 31px 398px);
}
toolbar[iconsize="large"][mode="icons"] #forward-button:not([disabled="true"]):hover {
-moz-image-region: rect(37px 420px 65px 394px);
-moz-image-region: rect(37px 424px 65px 398px);
}
toolbar[iconsize="large"][mode="icons"] #forward-button[disabled="true"] {
-moz-image-region: rect(71px 420px 99px 394px);
-moz-image-region: rect(71px 424px 99px 398px);
}
toolbar[iconsize="large"][mode="icons"] #forward-button:not([disabled="true"]):active {
-moz-image-region: rect(105px 420px 133px 394px);
-moz-image-region: rect(105px 424px 133px 398px);
}
/* unified forward button with keyhole icons, RTL version */
toolbar[iconsize="large"][mode="icons"] #forward-button[chromedir="rtl"] {
-moz-image-region: rect(3px 470px 31px 444px);
-moz-image-region: rect(3px 478px 31px 452px);
}
toolbar[iconsize="large"][mode="icons"] #forward-button[chromedir="rtl"]:not([disabled="true"]):hover {
-moz-image-region: rect(37px 470px 65px 444px);
-moz-image-region: rect(37px 478px 65px 452px);
}
toolbar[iconsize="large"][mode="icons"] #forward-button[chromedir="rtl"][disabled="true"] {
-moz-image-region: rect(71px 470px 99px 444px);
-moz-image-region: rect(71px 478px 99px 452px);
}
toolbar[iconsize="large"][mode="icons"] #forward-button[chromedir="rtl"]:not([disabled="true"]):active {
-moz-image-region: rect(105px 470px 133px 444px);
-moz-image-region: rect(105px 478px 133px 452px);
}
/* dropmarker for unified back and forward buttons with keyhole icons */
@ -299,7 +282,7 @@ toolbar[iconsize="large"][mode="icons"] #forward-button[chromedir="rtl"]:not([di
toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker {
-moz-appearance: none;
list-style-image: url("chrome://browser/skin/Toolbar.png");
-moz-image-region: rect(3px 432px 31px 420px);
-moz-image-region: rect(3px 438px 31px 424px);
padding: 0;
-moz-padding-end: 2px;
border: none;
@ -316,33 +299,33 @@ toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker > dropmarker {
}
toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker:not([disabled="true"]):hover {
-moz-image-region: rect(37px 432px 65px 420px);
-moz-image-region: rect(37px 438px 65px 424px);
}
toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker[disabled="true"] {
-moz-image-region: rect(71px 432px 99px 420px);
-moz-image-region: rect(71px 438px 99px 424px);
}
toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker:not([disabled="true"]):active {
-moz-image-region: rect(105px 432px 133px 420px);
-moz-image-region: rect(105px 438px 133px 424px);
}
/* unified dropmarker with keyhole icons, RTL version */
toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker[chromedir="rtl"] {
-moz-image-region: rect(3px 444px 31px 432px);
-moz-image-region: rect(3px 452px 31px 438px);
}
toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker[chromedir="rtl"]:not([disabled="true"]):hover {
-moz-image-region: rect(37px 444px 65px 432px);
-moz-image-region: rect(37px 452px 65px 438px);
}
toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker[chromedir="rtl"][disabled="true"] {
-moz-image-region: rect(71px 444px 99px 432px);
-moz-image-region: rect(71px 452px 99px 438px);
}
toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker[chromedir="rtl"]:not([disabled="true"]):active {
-moz-image-region: rect(105px 444px 133px 432px);
-moz-image-region: rect(105px 452px 133px 438px);
}
/* ::::: 24px primary toolbar buttons ::::: */
@ -611,11 +594,6 @@ toolbar[iconsize="small"] .toolbarbutton-1 {
list-style-image: url("chrome://browser/skin/Toolbar-small.png");
}
.unified-nav-back[_moz-menuactive] ,
.unified-nav-forward[_moz-menuactive] {
list-style-image: url("chrome://browser/skin/Toolbar-small.png") !important;
}
toolbar[iconsize="small"] .toolbarbutton-1 .toolbarbutton-icon {
-moz-margin-end: 0px;
}
@ -633,8 +611,7 @@ toolbar[iconsize="small"] #back-button {
-moz-image-region: rect(0px 16px 16px 0px);
}
toolbar[iconsize="small"] #back-button:not([disabled="true"]):hover,
toolbar[iconsize="small"] #back-button[buttonover="true"] ,
.unified-nav-back[_moz-menuactive] {
toolbar[iconsize="small"] #back-button[buttonover="true"] {
-moz-image-region: rect(16px 16px 32px 0px);
}
toolbar[iconsize="small"] #back-button[disabled="true"] {
@ -648,8 +625,7 @@ toolbar[iconsize="small"] #back-button[chromedir="rtl"] {
-moz-image-region: rect(0px 32px 16px 16px);
}
toolbar[iconsize="small"] #back-button[chromedir="rtl"]:not([disabled="true"]):hover,
toolbar[iconsize="small"] #back-button[chromedir="rtl"][buttonover="true"] ,
menupopup[chromedir="rtl"] > .unified-nav-back[_moz-menuactive] {
toolbar[iconsize="small"] #back-button[chromedir="rtl"][buttonover="true"] {
-moz-image-region: rect(16px 32px 32px 16px);
}
toolbar[iconsize="small"] #back-button[chromedir="rtl"][disabled="true"] {
@ -658,6 +634,10 @@ toolbar[iconsize="small"] #back-button[chromedir="rtl"][disabled="true"] {
toolbar[iconsize="small"] #back-button[chromedir="rtl"]:not([disabled="true"]):hover:active {
-moz-image-region: rect(64px 32px 80px 16px);
}
.unified-nav-back[_moz-menuactive],
menupopup[chromedir="rtl"] > .unified-nav-forward[_moz-menuactive] {
list-style-image: url("chrome://browser/skin/menu-back.png") !important;
}
/* forward button */
@ -668,8 +648,7 @@ toolbar[iconsize="small"] #forward-button {
-moz-image-region: rect(0px 32px 16px 16px);
}
toolbar[iconsize="small"] #forward-button:not([disabled="true"]):hover,
toolbar[iconsize="small"] #forward-button[buttonover="true"] ,
.unified-nav-forward[_moz-menuactive] {
toolbar[iconsize="small"] #forward-button[buttonover="true"] {
-moz-image-region: rect(16px 32px 32px 16px);
}
toolbar[iconsize="small"] #forward-button[disabled="true"] {
@ -683,8 +662,7 @@ toolbar[iconsize="small"] #forward-button[chromedir="rtl"] {
-moz-image-region: rect(0px 16px 16px 0px);
}
toolbar[iconsize="small"] #forward-button[chromedir="rtl"]:not([disabled="true"]):hover,
toolbar[iconsize="small"] #forward-button[chromedir="rtl"][buttonover="true"] ,
menupopup[chromedir="rtl"] > .unified-nav-forward[_moz-menuactive] {
toolbar[iconsize="small"] #forward-button[chromedir="rtl"][buttonover="true"] {
-moz-image-region: rect(16px 16px 32px 0px);
}
toolbar[iconsize="small"] #forward-button[chromedir="rtl"][disabled="true"] {
@ -693,6 +671,10 @@ toolbar[iconsize="small"] #forward-button[chromedir="rtl"][disabled="true"] {
toolbar[iconsize="small"] #forward-button[chromedir="rtl"]:not([disabled="true"]):hover:active {
-moz-image-region: rect(64px 16px 80px 0px);
}
.unified-nav-forward[_moz-menuactive],
menupopup[chromedir="rtl"] > .unified-nav-back[_moz-menuactive] {
list-style-image: url("chrome://browser/skin/menu-forward.png") !important;
}
/* stop button */
@ -1088,7 +1070,7 @@ statusbarpanel#statusbar-display {
#go-button {
padding: 3px 2px 2px 2px;
list-style-image: url("chrome://browser/skin/Go-arrow.png");
-moz-image-region: rect(0px 11px 13px 0px);
-moz-image-region: rect(0px 16px 16px 0px);
}
#go-button[chromedir="rtl"] {
@ -1096,15 +1078,7 @@ statusbarpanel#statusbar-display {
}
#go-button:hover {
-moz-image-region: rect(0px 22px 13px 11px);
}
#go-button:hover:active {
-moz-image-region: rect(0px 44px 13px 33px);
}
#go-button[disabled="true"] {
-moz-image-region: rect(0px 33px 13px 22px);
-moz-image-region: rect(16px 16px 32px 0px);
}
/* star button */
@ -1153,21 +1127,14 @@ statusbarpanel#statusbar-display {
display: none;
}
#security-button[level="high"] {
list-style-image: url("chrome://browser/skin/Secure.png");
-moz-image-region: rect(36px, 18px, 54px, 0px);
display: -moz-box;
}
#security-button[level="high"],
#security-button[level="low"] {
list-style-image: url("chrome://browser/skin/Secure.png");
-moz-image-region: rect(36px, 18px, 54px, 0px);
display: -moz-box;
}
#security-button[level="broken"] {
list-style-image: url("chrome://browser/skin/Security-broken.png");
-moz-image-region: rect(36px, 18px, 54px, 0px);
display: -moz-box;
}
@ -1590,20 +1557,21 @@ toolbar[mode="text"] > #window-controls > toolbarbutton > .toolbarbutton-text {
#urlbar > .autocomplete-history-dropmarker:hover ,
#urlbar > .autocomplete-history-dropmarker[open="true"] {
background-color: -moz-dialog !important;
-moz-appearance: toolbox;
outline: 1px solid ThreeDShadow;
-moz-margin-start: 1px;
background: ButtonFace url(chrome://browser/skin/tabbrowser/tab-active-bkgnd.png) repeat-x !important;
}
#urlbar > .autocomplete-history-dropmarker > .dropmarker-icon {
-moz-margin-start: 6px;
-moz-margin-end: 5px;
margin: 0 5px;
}
#urlbar > .autocomplete-history-dropmarker:hover > .dropmarker-icon ,
#urlbar > .autocomplete-history-dropmarker[open="true"] > .dropmarker-icon {
-moz-margin-start: 5px;
#urlbar[chromedir="ltr"] > .autocomplete-history-dropmarker {
border-left: 1px solid;
-moz-border-left-colors: transparent;
}
#urlbar[chromedir="ltr"] > .autocomplete-history-dropmarker:hover ,
#urlbar[chromedir="ltr"] > .autocomplete-history-dropmarker[open="true"] {
-moz-border-left-colors: ButtonShadow;
}
/* Feed icon */
@ -1628,28 +1596,7 @@ toolbar[mode="text"] > #window-controls > toolbarbutton > .toolbarbutton-text {
}
#feed-button[feeds] {
-moz-image-region: rect(0px, 36px, 18px, 18px);
list-style-image: url("chrome://browser/skin/livemark-item.png");
}
#feed-button[chromedir="rtl"][feeds] {
-moz-image-region: rect(0px, 36px, 18px, 18px);
list-style-image: url("chrome://browser/skin/livemark-item.png");
}
#feed-button[feeds]:hover {
-moz-image-region: rect(18px, 36px, 36px, 18px);
list-style-image: url("chrome://browser/skin/livemark-item.png");
}
#feed-button[chromedir="rtl"][feeds]:hover {
-moz-image-region: rect(18px, 36px, 36px, 18px);
list-style-image: url("chrome://browser/skin/livemark-item.png");
}
#feed-button[feeds]:active {
-moz-image-region: rect(54px, 36px, 72px, 18px);
list-style-image: url("chrome://browser/skin/livemark-item.png");
}
#feed-button[chromedir="rtl"][feeds]:active {
-moz-image-region: rect(54px, 36px, 72px, 18px);
list-style-image: url("chrome://browser/skin/livemark-item.png");
list-style-image: url("chrome://browser/skin/feeds/feedIcon16.png");
}
/* ::::: About Popup Blocking dialog ::::: */
@ -1711,27 +1658,64 @@ toolbarbutton.bookmark-item[dragover="true"][open="true"] {
/* ::::: Identity Indicator Styling ::::: */
/* Location bar visuals*/
#urlbar .autocomplete-textbox-container {
#urlbar[chromedir="ltr"] {
-moz-margin-start: 4px;
/*-moz-margin-start: 6px;*/
}
#urlbar > .autocomplete-textbox-container {
-moz-box-align: stretch;
}
#identity-box {
background-color: -moz-dialog;
#identity-box {
overflow: -moz-hidden-unscrollable;
}
#urlbar[chromedir="ltr"] > #identity-box {
-moz-margin-start: -4px;
/*-moz-margin-start: -6px;*/
}
#identity-box > hbox {
background: ButtonFace url(chrome://browser/skin/tabbrowser/tab-active-bkgnd.png) repeat-x;
color: -moz-dialogtext;
-moz-appearance: toolbox;
outline: 1px solid ThreeDShadow;
-moz-margin-start: -1px;
/* currently, the identity box is always LTR */
-moz-outline-radius-topleft: 2px;
-moz-outline-radius-bottomleft: 2px;
}
#urlbar[chromedir="rtl"] > #identity-box > hbox {
border-right: 1px solid ButtonShadow;
border-left: 1px solid ButtonShadow;
padding: 0 3px;
}
#urlbar[chromedir="ltr"] > #identity-box > hbox {
border: 1px solid ButtonShadow;
border-right-style: none;
margin: -11px -10px -11px 0;
padding: 10px 12px 10px 4px;
background-position: 0 10px;
-moz-border-radius-topleft: 21px;
-moz-border-radius-bottomleft: 21px;
/*margin: -4px 0;
padding: 3px 2px 3px 4px;
background-position: 0 3px;
-moz-border-radius-topleft: 14px;
-moz-border-radius-bottomleft: 14px;*/
}
#urlbar[chromedir="ltr"] > .autocomplete-textbox-container > .textbox-input-box {
border-left: 1px solid ButtonShadow;
margin-left: 0;
padding-left: 3px;
}
#identity-box.verifiedIdentity > hbox {
background-color: #7c8;
color: #000;
}
#identity-box:focus {
outline: 1px dotted -moz-DialogText;
}
#identity-box:hover {
outline-color: ThreeDDarkShadow;
outline-offset: -3px;
}
#identity-icon-label {
@ -1740,96 +1724,77 @@ toolbarbutton.bookmark-item[dragover="true"][open="true"] {
}
#identity-icon-label[value=""] {
display: none;
}
#identity-box.verifiedIdentity > hbox {
background-color: rgba(0, 255, 0, 0.25);
display: none;
}
/* Popup Icons */
#identity-popup-icon {
height: 64px;
width: 64px;
padding: 0;
list-style-image: url("chrome://browser/skin/identity.png");
-moz-image-region: rect(0px, 64px, 64px, 0px);
height: 64px;
width: 64px;
padding: 0;
list-style-image: url("chrome://browser/skin/identity.png");
-moz-image-region: rect(0px, 64px, 64px, 0px);
}
.verifiedDomain > #identity-popup-container > #identity-popup-icon {
-moz-image-region: rect(64px, 64px, 128px, 0px);
#identity-popup.verifiedDomain > #identity-popup-container > #identity-popup-icon {
-moz-image-region: rect(64px, 64px, 128px, 0px);
}
.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
-moz-image-region: rect(128px, 64px, 192px, 0px);
#identity-popup.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
-moz-image-region: rect(128px, 64px, 192px, 0px);
}
/* Popup Body Text */
.unknownIdentity > #identity-popup-connectedToLabel,
.unknownIdentity > #identity-popup-runByLabel,
.unknownIdentity > #identity-popup-content-host,
.unknownIdentity > #identity-popup-content-owner {
display: none;
}
.verifiedIdentity > #identity-popup-connectedToLabel2,
.verifiedDomain > #identity-popup-connectedToLabel2 {
display: none;
}
#identity-popup-content-box > description,
#identity-popup-encryption-label {
white-space: -moz-pre-wrap;
color: black;
padding-left: 15px;
margin: 2px 0 4px;
white-space: pre-wrap;
color: black;
padding-left: 15px;
margin: 2px 0 4px;
}
#identity-popup-content-box > label {
white-space: -moz-pre-wrap;
padding-left: 15px;
margin: 0;
white-space: pre-wrap;
padding-left: 15px;
margin: 0;
}
#identity-popup-content-host {
font-weight: bold;
max-width: 300px;
#identity-popup-content-host ,
#identity-popup-content-owner {
font-weight: bold;
max-width: 300px;
}
#identity-popup-content-host ,
#identity-popup-content-box.verifiedIdentity > #identity-popup-content-owner {
font-size: 140%;
}
#identity-popup-content-owner {
font-weight: bold;
max-width: 300px;
margin-bottom: 0 !important;
}
.verifiedIdentity > #identity-popup-content-owner,
.verifiedIdentity > #identity-popup-content-host,
.verifiedDomain > #identity-popup-content-host {
font-size: 140%;
margin-bottom: 0 !important;
}
#identity-popup-content-verifier {
margin: 4px 0 2px;
}
.verifiedIdentity > #identity-popup-encryption,
.verifiedDomain > #identity-popup-encryption {
#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption ,
#identity-popup-content-box.verifiedDomain > #identity-popup-encryption {
margin-top: 10px;
margin-left: -18px;
}
.verifiedIdentity > #identity-popup-encryption > * > #identity-popup-encryption-icon,
.verifiedDomain > #identity-popup-encryption > * >#identity-popup-encryption-icon {
list-style-image: url("chrome://browser/skin/Secure.png");
-moz-image-region: rect(0px, 18px, 18px, 0px);
#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption > vbox > #identity-popup-encryption-icon ,
#identity-popup-content-box.verifiedDomain > #identity-popup-encryption > vbox > #identity-popup-encryption-icon {
list-style-image: url("chrome://browser/skin/Secure24.png");
}
/* Popup Bounding Box */
#identity-popup-container {
background-image: none;
background-color: white;
min-width: 280px;
padding: 10px;
background-image: none;
background-color: white;
min-width: 280px;
padding: 10px;
}
#download-monitor {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 748 B

After

Width:  |  Height:  |  Size: 767 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 771 B

After

Width:  |  Height:  |  Size: 763 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -1,69 +1,150 @@
classic.jar:
% skin browser classic/1.0 %skin/classic/browser/
* skin/classic/browser/browser.css (browser.css)
% skin browser classic/1.0 %skin/classic/browser/ os=WINNT osversion<6
% skin browser classic/1.0 %skin/classic/aero/browser/ os=WINNT osversion>=6
% skin browser classic/1.0 %skin/classic/browser/ os!=WINNT
* skin/classic/browser/browser.css (browser.css)
* skin/classic/aero/browser/browser.css (browser.css)
skin/classic/browser/browser.xml
* skin/classic/browser/engineManager.css (engineManager.css)
skin/classic/aero/browser/browser.xml
* skin/classic/browser/engineManager.css (engineManager.css)
* skin/classic/aero/browser/engineManager.css (engineManager.css)
skin/classic/browser/Info.png
skin/classic/browser/identity.png
skin/classic/aero/browser/Info.png
skin/classic/browser/identity.png (identity.png)
skin/classic/aero/browser/identity.png (identity-aero.png)
skin/classic/browser/pageInfo.css
skin/classic/aero/browser/pageInfo.css
skin/classic/browser/pageInfo.png
skin/classic/browser/page-livemarks.png
skin/classic/browser/livemark-item.png
skin/classic/browser/livemark-item-rtl.png
skin/classic/browser/livemark-folder.png
skin/classic/browser/livemark-folder-rtl.png
skin/classic/browser/Secure.png
skin/classic/browser/Security-broken.png
skin/classic/aero/browser/pageInfo.png
skin/classic/browser/page-livemarks.png (feeds/feedIcon16.png)
skin/classic/aero/browser/page-livemarks.png (feeds/feedIcon16-aero.png)
skin/classic/browser/livemark-item.png (livemark-item.png)
skin/classic/aero/browser/livemark-item.png (livemark-item-aero.png)
skin/classic/browser/livemark-folder.png (livemark-folder.png)
skin/classic/aero/browser/livemark-folder.png (livemark-folder-aero.png)
skin/classic/browser/Secure.png (Secure.png)
skin/classic/aero/browser/Secure.png (Secure-aero.png)
skin/classic/browser/Secure24.png (Secure24.png)
skin/classic/aero/browser/Secure24.png (Secure24-aero.png)
skin/classic/browser/Security-broken.png (Security-broken.png)
skin/classic/aero/browser/Security-broken.png (Security-broken-aero.png)
skin/classic/browser/Throbber.gif
skin/classic/aero/browser/Throbber.gif
skin/classic/browser/Throbber.png
skin/classic/aero/browser/Throbber.png
skin/classic/browser/Throbber-small.png
skin/classic/browser/Toolbar.png
skin/classic/browser/Toolbar-small.png
skin/classic/browser/Go-arrow.png
skin/classic/browser/Go-arrow-rtl.png
* skin/classic/browser/searchbar.css (searchbar.css)
skin/classic/aero/browser/Throbber-small.png
skin/classic/browser/Toolbar.png (Toolbar.png)
skin/classic/aero/browser/Toolbar.png (Toolbar-aero.png)
skin/classic/browser/Toolbar-small.png (Toolbar-small.png)
skin/classic/aero/browser/Toolbar-small.png (Toolbar-small-aero.png)
skin/classic/browser/Go-arrow.png (Go-arrow.png)
skin/classic/aero/browser/Go-arrow.png (Go-arrow-aero.png)
skin/classic/browser/Go-arrow-rtl.png (Go-arrow-rtl.png)
skin/classic/aero/browser/Go-arrow-rtl.png (Go-arrow-rtl-aero.png)
* skin/classic/browser/searchbar.css (searchbar.css)
* skin/classic/aero/browser/searchbar.css (searchbar.css)
skin/classic/browser/Search-glass.png
skin/classic/aero/browser/Search-glass.png
skin/classic/browser/Search-glass-rtl.png
skin/classic/aero/browser/Search-glass-rtl.png
skin/classic/browser/Search-addengines.png
skin/classic/aero/browser/Search-addengines.png
skin/classic/browser/setDesktopBackground.css
skin/classic/aero/browser/setDesktopBackground.css
skin/classic/browser/menu-back.png (menu-back.png)
skin/classic/aero/browser/menu-back.png (menu-back-aero.png)
skin/classic/browser/menu-forward.png (menu-forward.png)
skin/classic/aero/browser/menu-forward.png (menu-forward-aero.png)
skin/classic/browser/monitor.png
skin/classic/aero/browser/monitor.png
skin/classic/browser/monitor_16-10.png
skin/classic/aero/browser/monitor_16-10.png
skin/classic/browser/wrench.png
skin/classic/browser/feeds/feedIcon.png (feeds/feedIcon.png)
skin/classic/browser/feeds/feedIcon16.png (feeds/feedIcon16.png)
skin/classic/browser/feeds/videoFeedIcon.png (feeds/videoFeedIcon.png)
skin/classic/browser/feeds/videoFeedIcon16.png (feeds/videoFeedIcon16.png)
skin/classic/browser/feeds/audioFeedIcon.png (feeds/audioFeedIcon.png)
skin/classic/browser/feeds/audioFeedIcon16.png (feeds/audioFeedIcon16.png)
skin/classic/browser/feeds/subscribe.css (feeds/subscribe.css)
skin/classic/browser/places/places.css (places/places.css)
skin/classic/browser/places/organizer.css (places/organizer.css)
skin/classic/browser/places/query.png (places/query.png)
skin/classic/browser/places/bookmarksMenu.png (places/bookmarksMenu.png)
skin/classic/browser/places/bookmarksToolbar.png (places/bookmarksToolbar.png)
skin/classic/browser/places/toolbarDropMarker.png (places/toolbarDropMarker.png)
skin/classic/browser/places/editBookmarkOverlay.css (places/editBookmarkOverlay.css)
skin/classic/browser/places/starPage.png (places/starPage.png)
skin/classic/browser/places/pageStarred.png (places/pageStarred.png)
skin/classic/browser/places/starred48.png (places/starred48.png)
skin/classic/browser/places/unstarred48.png (places/unstarred48.png)
skin/classic/browser/places/tag.png (places/tag.png)
skin/classic/browser/places/bookmarkProperties.css (places/bookmarkProperties.css)
skin/classic/browser/places/organizer-toolbar.png (bookmarks/Bookmarks-toolbar.png)
skin/classic/browser/preferences/alwaysAsk.png (preferences/alwaysAsk.png)
skin/classic/browser/preferences/application.png (preferences/application.png)
skin/classic/browser/preferences/Options.png (preferences/Options.png)
skin/classic/browser/preferences/plugin.png (preferences/plugin.png)
skin/classic/browser/preferences/preferences.css (preferences/preferences.css)
skin/classic/browser/preferences/applications.css (preferences/applications.css)
skin/classic/browser/tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png (tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png)
skin/classic/browser/tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png (tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png)
skin/classic/browser/tabbrowser/tab-arrow-end.png (tabbrowser/tab-arrow-end.png)
skin/classic/browser/tabbrowser/tab-arrow-start.png (tabbrowser/tab-arrow-start.png)
skin/classic/browser/tabbrowser/tabbrowser-tabs-bkgnd.png (tabbrowser/tabbrowser-tabs-bkgnd.png)
skin/classic/browser/tabbrowser/tabDragIndicator.png (tabbrowser/tabDragIndicator.png)
skin/classic/browser/tabbrowser/tab-bkgnd.png (tabbrowser/tab-bkgnd.png)
skin/classic/browser/tabbrowser/tab-active-bkgnd.png (tabbrowser/tab-active-bkgnd.png)
skin/classic/browser/tabbrowser/tabstrip-bottom.png (tabbrowser/tabstrip-bottom.png)
skin/classic/aero/browser/wrench.png
skin/classic/browser/feeds/feedIcon.png (feeds/feedIcon.png)
skin/classic/aero/browser/feeds/feedIcon.png (feeds/feedIcon-aero.png)
skin/classic/browser/feeds/feedIcon16.png (feeds/feedIcon16.png)
skin/classic/aero/browser/feeds/feedIcon16.png (feeds/feedIcon16-aero.png)
skin/classic/browser/feeds/videoFeedIcon.png (feeds/videoFeedIcon.png)
skin/classic/aero/browser/feeds/videoFeedIcon.png (feeds/videoFeedIcon-aero.png)
skin/classic/browser/feeds/videoFeedIcon16.png (feeds/videoFeedIcon16.png)
skin/classic/aero/browser/feeds/videoFeedIcon16.png (feeds/videoFeedIcon16-aero.png)
skin/classic/browser/feeds/audioFeedIcon.png (feeds/audioFeedIcon.png)
skin/classic/aero/browser/feeds/audioFeedIcon.png (feeds/audioFeedIcon-aero.png)
skin/classic/browser/feeds/audioFeedIcon16.png (feeds/audioFeedIcon16.png)
skin/classic/aero/browser/feeds/audioFeedIcon16.png (feeds/audioFeedIcon16-aero.png)
skin/classic/browser/feeds/subscribe.css (feeds/subscribe.css)
skin/classic/aero/browser/feeds/subscribe.css (feeds/subscribe.css)
skin/classic/browser/places/places.css (places/places.css)
skin/classic/aero/browser/places/places.css (places/places.css)
skin/classic/browser/places/organizer.css (places/organizer.css)
skin/classic/aero/browser/places/organizer.css (places/organizer.css)
skin/classic/browser/places/query.png (places/query.png)
skin/classic/aero/browser/places/query.png (places/query.png)
skin/classic/browser/places/bookmarksMenu.png (places/bookmarksMenu.png)
skin/classic/aero/browser/places/bookmarksMenu.png (places/bookmarksMenu.png)
skin/classic/browser/places/bookmarksToolbar.png (places/bookmarksToolbar.png)
skin/classic/aero/browser/places/bookmarksToolbar.png (places/bookmarksToolbar.png)
skin/classic/browser/places/toolbarDropMarker.png (places/toolbarDropMarker.png)
skin/classic/aero/browser/places/toolbarDropMarker.png (places/toolbarDropMarker.png)
skin/classic/browser/places/editBookmarkOverlay.css (places/editBookmarkOverlay.css)
skin/classic/aero/browser/places/editBookmarkOverlay.css (places/editBookmarkOverlay.css)
skin/classic/browser/places/starPage.png (places/starPage.png)
skin/classic/aero/browser/places/starPage.png (places/starPage-aero.png)
skin/classic/browser/places/pageStarred.png (places/pageStarred.png)
skin/classic/aero/browser/places/pageStarred.png (places/pageStarred-aero.png)
skin/classic/browser/places/starred48.png (places/starred48.png)
skin/classic/aero/browser/places/starred48.png (places/starred48-aero.png)
skin/classic/browser/places/unstarred48.png (places/unstarred48.png)
skin/classic/aero/browser/places/unstarred48.png (places/unstarred48.png)
skin/classic/browser/places/tag.png (places/tag.png)
skin/classic/aero/browser/places/tag.png (places/tag-aero.png)
skin/classic/browser/places/collapse.png (places/collapse.png)
skin/classic/aero/browser/places/collapse.png (places/collapse-aero.png)
skin/classic/browser/places/expand.png (places/expand.png)
skin/classic/aero/browser/places/expand.png (places/expand-aero.png)
skin/classic/browser/places/history.png (places/history.png)
skin/classic/aero/browser/places/history.png (places/history-aero.png)
skin/classic/browser/places/importAndBackup.png (places/importAndBackup.png)
skin/classic/aero/browser/places/importAndBackup.png (places/importAndBackup-aero.png)
skin/classic/browser/places/minus.png (places/minus.png)
skin/classic/aero/browser/places/minus.png (places/minus-aero.png)
skin/classic/browser/places/plus.png (places/plus.png)
skin/classic/aero/browser/places/plus.png (places/plus-aero.png)
skin/classic/browser/places/bookmarkProperties.css (places/bookmarkProperties.css)
skin/classic/aero/browser/places/bookmarkProperties.css (places/bookmarkProperties.css)
skin/classic/browser/places/organizer-toolbar.png (bookmarks/Bookmarks-toolbar.png)
skin/classic/aero/browser/places/organizer-toolbar.png (bookmarks/Bookmarks-toolbar.png)
skin/classic/browser/preferences/alwaysAsk.png (preferences/alwaysAsk.png)
skin/classic/aero/browser/preferences/alwaysAsk.png (preferences/alwaysAsk-aero.png)
skin/classic/browser/preferences/application.png (preferences/application.png)
skin/classic/aero/browser/preferences/application.png (preferences/application.png)
skin/classic/browser/preferences/Options.png (preferences/Options.png)
skin/classic/aero/browser/preferences/Options.png (preferences/Options-aero.png)
skin/classic/browser/preferences/plugin.png (preferences/plugin.png)
skin/classic/aero/browser/preferences/plugin.png (preferences/plugin-aero.png)
skin/classic/browser/preferences/preferences.css (preferences/preferences.css)
skin/classic/aero/browser/preferences/preferences.css (preferences/preferences.css)
skin/classic/browser/preferences/applications.css (preferences/applications.css)
skin/classic/aero/browser/preferences/applications.css (preferences/applications.css)
skin/classic/browser/tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png (tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png)
skin/classic/aero/browser/tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png (tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png)
skin/classic/browser/tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png (tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png)
skin/classic/aero/browser/tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png (tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png)
skin/classic/browser/tabbrowser/tab-arrow-end.png (tabbrowser/tab-arrow-end.png)
skin/classic/aero/browser/tabbrowser/tab-arrow-end.png (tabbrowser/tab-arrow-end-aero.png)
skin/classic/browser/tabbrowser/tab-arrow-start.png (tabbrowser/tab-arrow-start.png)
skin/classic/aero/browser/tabbrowser/tab-arrow-start.png (tabbrowser/tab-arrow-start-aero.png)
skin/classic/browser/tabbrowser/tabbrowser-tabs-bkgnd.png (tabbrowser/tabbrowser-tabs-bkgnd.png)
skin/classic/aero/browser/tabbrowser/tabbrowser-tabs-bkgnd.png (tabbrowser/tabbrowser-tabs-bkgnd.png)
skin/classic/browser/tabbrowser/tabDragIndicator.png (tabbrowser/tabDragIndicator.png)
skin/classic/aero/browser/tabbrowser/tabDragIndicator.png (tabbrowser/tabDragIndicator-aero.png)
skin/classic/browser/tabbrowser/tab-bkgnd.png (tabbrowser/tab-bkgnd.png)
skin/classic/aero/browser/tabbrowser/tab-bkgnd.png (tabbrowser/tab-bkgnd.png)
skin/classic/browser/tabbrowser/tab-active-bkgnd.png (tabbrowser/tab-active-bkgnd.png)
skin/classic/aero/browser/tabbrowser/tab-active-bkgnd.png (tabbrowser/tab-active-bkgnd.png)
skin/classic/browser/tabbrowser/tabstrip-bottom.png (tabbrowser/tabstrip-bottom.png)
skin/classic/aero/browser/tabbrowser/tabstrip-bottom.png (tabbrowser/tabstrip-bottom.png)
icon.png
preview.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 556 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 582 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 574 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 577 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 473 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 458 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 464 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 454 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 734 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 638 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 441 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 469 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 425 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 470 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 743 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 871 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 825 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 796 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 334 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 387 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 563 B

After

Width:  |  Height:  |  Size: 760 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 730 B

After

Width:  |  Height:  |  Size: 752 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 397 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 418 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 527 B

After

Width:  |  Height:  |  Size: 686 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 624 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.5 KiB

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.7 KiB

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 451 B

After

Width:  |  Height:  |  Size: 594 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 515 B

After

Width:  |  Height:  |  Size: 586 B

View File

@ -24,22 +24,20 @@
min-width: 0;
margin: 0;
-moz-margin-end: 3px;
padding: 2px 0;
border: 0;
padding: 0;
height: 1.23em;
min-height: 20px;
-moz-box-align: center;
background-color: -moz-dialog;
-moz-appearance: toolbox;
outline: 1px solid ThreeDShadow;
-moz-margin-start: -1px;
-moz-outline-radius-topleft: 2px;
-moz-outline-radius-bottomleft: 2px;
background: ButtonFace url(chrome://browser/skin/tabbrowser/tab-active-bkgnd.png) repeat-x;
border: 0 solid;
border-right-width: 1px;
-moz-border-right-colors: ButtonShadow;
}
.searchbar-engine-button[chromedir="rtl"] {
-moz-outline-radius-topleft: 0;
-moz-outline-radius-bottomleft: 0;
-moz-outline-radius-topright: 2px;
-moz-outline-radius-bottomright: 2px;
border-right-width: 0;
border-left-width: 1px;
-moz-border-left-colors: ButtonShadow;
}
.searchbar-engine-button:hover {
@ -57,7 +55,7 @@
background: transparent url(chrome://browser/skin/Search-addengines.png) no-repeat right center;
}
.searchbar-engine-button[addengines="true"][chromedir="rtl"] {
.searchbar-engine-button[addengines="true"][chromedir="rtl"] > .button-box {
background-position: left center;
}

View File

@ -188,6 +188,8 @@ user_pref("signed.applets.codebase_principal_support", true);
user_pref("security.warn_submit_insecure", false);
user_pref("browser.shell.checkDefaultBrowser", false);
user_pref("browser.warnOnQuit", false);
user_pref("accessibility.typeaheadfind.autostart", false);
user_pref("javascript.options.showInConsole", true);
"""
prefs.append(part)

View File

@ -791,4 +791,15 @@ typedef struct
#endif
#define SHGetSpecialFolderPathW SHGetSpecialFolderPath
// On Windows CE, there are some functions that are wide, but there
// isn't a function named "functionW".
#define SHGetPathFromIDListW SHGetPathFromIDList
#define GetUserNameW GetUserName
#define RemovePropW RemoveProp
#define GetPropW GetProp
#define SetPropW SetProp
#define FONTENUMPROCW FONTENUMPROC
#define GetLongPathNameW GetLongPathName
#endif // _MOZCE_DEFS

View File

@ -125,39 +125,10 @@
#define SetWindowLongA SetWindowLongW
#define GetMonitorInfoW GetMonitorInfo
#if 0
#define GetProp GetPropA
#define SetProp SetPropA
#define RemoveProp RemovePropA
#define SetWorldTransform SetWorldTransform
#define GetWorldTransform GetWorldTransform
#define SetGraphicsMode SetGraphicsMode
#define ScriptFreeCache ScriptFreeCache
#undef GetProcAddress
#undef GetProcAddress
#define GetProcAddress GetProcAddressA
// OutlineTextMetrics are tricky. It is a pain to convert W->A text metrics,
// and we have no A functions. Because we do not define UNICODE, headers specify A function versions
// We can override the function defines here, but can't override the typedefs (typedef TEXTMETRICW TEXTMETRIC)
// A define is a hack around this, but it might fail elsewhere.
// dougt code review
#undef GetOutlineTextMetrics
#define GetOutlineTextMetrics GetOutlineTextMetricsW
#undef GetTextMetrics
#define GetTextMetrics GetTextMetricsW
#define OUTLINETEXTMETRIC OUTLINETEXTMETRICW
#define TEXTMETRIC TEXTMETRICW
#undef wsprintf
#define wsprintf wsprintfW
#endif //if 0
//still need these
#define GetCurrentDirectory GetCurrentDirectoryW
#define OpenSemaphore OpenSemaphoreW
@ -211,6 +182,9 @@ extern "C" {
MOZCE_SHUNT_API int stat(const char *inPath, struct stat * outStat);
// From stdio.cpp
MOZCE_SHUNT_API int _waccess(const wchar_t *path, int mode);
MOZCE_SHUNT_API int access(const char *path, int mode);
MOZCE_SHUNT_API void rewind(FILE* inStream);
MOZCE_SHUNT_API FILE* fdopen(int inFD, const char* inMode);
@ -307,6 +281,8 @@ extern "C" {
MOZCE_SHUNT_API void GetSystemTimeAsFileTime(LPFILETIME lpSystemTimeAsFileTime);
MOZCE_SHUNT_API DWORD GetLongPathNameW(LPCWSTR lpszShortPath, LPCWSTR lpszLongPath, DWORD cchBuffer);
#define GetFullPathNameW GetFullPathName
MOZCE_SHUNT_API DWORD GetFullPathName(const char* lpFileName, DWORD nBufferLength, const char* lpBuffer, const char** lpFilePart);

View File

@ -93,12 +93,20 @@ _getnewfd()
}
MOZCE_SHUNT_API int _waccess(const wchar_t *path, int mode)
{
#ifdef API_LOGGING
mozce_printf("-- _waccess called\n");
#endif
return 0;
}
MOZCE_SHUNT_API int access(const char *path, int mode)
{
#ifdef API_LOGGING
mozce_printf("-- access called\n");
mozce_printf("-- access called\n");
#endif
return 0;

View File

@ -552,14 +552,14 @@ MOZCE_SHUNT_API void GetSystemTimeAsFileTime(LPFILETIME lpSystemTimeAsFileTime)
SystemTimeToFileTime(&st,lpSystemTimeAsFileTime);
}
#ifndef MIN
#define MIN(a,b) (((a)<(b)) ? (a) : (b))
MOZCE_SHUNT_API DWORD GetLongPathNameW(LPCWSTR lpszShortPath, LPCWSTR lpszLongPath, DWORD cchBuffer)
{
#ifdef API_LOGGING
mozce_printf("GetLongPathNameW called\n");
#endif
#ifndef MAX
#define MAX(a,b) (((a)>(b)) ? (a) : (b))
#endif
return 0;
}
MOZCE_SHUNT_API DWORD GetFullPathName(const char* lpFileName,
DWORD nBufferLength,

View File

@ -247,6 +247,7 @@ else # ! MOZ_DEBUG
# Used in the Windows nightlies to generate symbols for crash reporting.
ifdef MOZ_DEBUG_SYMBOLS
OS_CXXFLAGS += -Zi -UDEBUG -DNDEBUG
OS_CFLAGS += -Zi -UDEBUG -DNDEBUG
OS_LDFLAGS += -DEBUG -OPT:REF -OPT:nowin98
endif

View File

@ -431,16 +431,18 @@ case "$target" in
AC_LANG_RESTORE
changequote(,)
_MSVC_VER_FILTER='s|.* \([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*|\1|p'
_MSVC_VER_FILTER='s|.* ([0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?).*|\1|p'
changequote([,])
# Determine compiler version
CC_VERSION=`"${CC}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
CC_VERSION=`"${CC}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
_CC_MAJOR_VERSION=`echo ${CC_VERSION} | $AWK -F\. '{ print $1 }'`
_CC_MINOR_VERSION=`echo ${CC_VERSION} | $AWK -F\. '{ print $2 }'`
_CC_RELEASE=`echo ${CC_VERSION} | $AWK -F\. '{ print $3 }'`
_CC_BUILD=`echo ${CC_VERSION} | $AWK -F\. '{ print $4 }'`
_MSC_VER=${_CC_MAJOR_VERSION}${_CC_MINOR_VERSION}
CXX_VERSION=`"${CXX}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
CXX_VERSION=`"${CXX}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
_CXX_MAJOR_VERSION=`echo ${CXX_VERSION} | $AWK -F\. '{ print $1 }'`
if test "$_CC_MAJOR_VERSION" != "$_CXX_MAJOR_VERSION"; then
@ -453,11 +455,20 @@ case "$target" in
elif test "$_CC_MAJOR_VERSION" = "14"; then
_CC_SUITE=8
CXXFLAGS="$CXXFLAGS -Zc:wchar_t-"
dnl -DYNAMICBASE is only supported on VC8SP1 or newer,
dnl so be very specific here!
dnl VC8 is 14.00.50727.42, VC8SP1 is 14.00.50727.762
if test $_CC_RELEASE -gt 50727; then
_USE_DYNAMICBASE=1
elif test $_CC_BUILD -ge 762; then
_USE_DYNAMICBASE=1
fi
AC_DEFINE(_CRT_SECURE_NO_DEPRECATE)
AC_DEFINE(_CRT_NONSTDC_NO_DEPRECATE)
elif test "$_CC_MAJOR_VERSION" = "15"; then
_CC_SUITE=9
CXXFLAGS="$CXXFLAGS -Zc:wchar_t-"
_USE_DYNAMICBASE=1
AC_DEFINE(_CRT_SECURE_NO_WARNINGS)
AC_DEFINE(_CRT_NONSTDC_NO_WARNINGS)
else
@ -494,7 +505,7 @@ case "$target" in
fi
# Check linker version
_LD_FULL_VERSION=`"${LD}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
_LD_FULL_VERSION=`"${LD}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
_LD_MAJOR_VERSION=`echo ${_LD_FULL_VERSION} | $AWK -F\. '{ print $1 }'`
if test "$_LD_MAJOR_VERSION" != "$_CC_SUITE"; then
AC_MSG_ERROR([The linker major version, $_LD_FULL_VERSION, does not match the compiler suite version, $_CC_SUITE.])
@ -502,7 +513,7 @@ case "$target" in
INCREMENTAL_LINKER=1
# Check midl version
_MIDL_FULL_VERSION=`"${MIDL}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
_MIDL_FULL_VERSION=`"${MIDL}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
_MIDL_MAJOR_VERSION=`echo ${_MIDL_FULL_VERSION} | $AWK -F\. '{ print $1 }'`
_MIDL_MINOR_VERSION=`echo ${_MIDL_FULL_VERSION} | $AWK -F\. '{ print $2 }'`
_MIDL_REV_VERSION=`echo ${_MIDL_FULL_VERSION} | $AWK -F\. '{ print $3 }'`
@ -1617,6 +1628,7 @@ case "$target" in
_PLATFORM_DEFAULT_TOOLKIT='cairo-cocoa'
MOZ_ENABLE_POSTSCRIPT=
TARGET_NSPR_MDCPUCFG='\"md/_darwin.cfg\"'
LDFLAGS="$LDFLAGS -framework Cocoa"
# set MACOSX to generate lib/mac/MoreFiles/Makefile
MACOSX=1
@ -1907,12 +1919,15 @@ case "$target" in
MOZ_XPCOM_OBSOLETE_LIBS='$(LIBXUL_DIST)/lib/xpcom_compat.lib'
if test $_MSC_VER -ge 1400; then
LDFLAGS="$LDFLAGS -NXCOMPAT -SAFESEH"
# For profile-guided optimization
dnl For profile-guided optimization
PROFILE_GEN_CFLAGS="-GL"
PROFILE_GEN_LDFLAGS="-LTCG:PGINSTRUMENT"
PROFILE_USE_CFLAGS="-GL"
#XXX: should be -LTCG:PGOPTIMIZE, but that fails on libxul
dnl XXX: should be -LTCG:PGOPTIMIZE, but that fails on libxul
PROFILE_USE_LDFLAGS="-LTCG:PGUPDATE"
if test -n "$_USE_DYNAMICBASE"; then
LDFLAGS="$LDFLAGS -DYNAMICBASE"
fi
fi
fi
MOZ_JPEG_LIBS='$(call EXPAND_LIBNAME_PATH,jpeg$(MOZ_BITS)$(VERSION_NUMBER),$(DEPTH)/jpeg)'

View File

@ -139,6 +139,7 @@ NS_CP_ContentTypeName(PRUint32 contentType)
CASE_RETURN( TYPE_PING );
CASE_RETURN( TYPE_XMLHTTPREQUEST );
CASE_RETURN( TYPE_OBJECT_SUBREQUEST );
CASE_RETURN( TYPE_DTD );
default:
return "<Unknown Type>";
}

View File

@ -51,7 +51,7 @@ interface nsIDOMNode;
* by launching a dialog to prompt the user for something).
*/
[scriptable,uuid(a32a984a-7a6b-ea92-75fe-1166be801a0e)]
[scriptable,uuid(58cf9dca-40b3-6211-a508-7351f437a53e)]
interface nsIContentPolicy : nsISupports
{
const unsigned long TYPE_OTHER = 1;
@ -121,6 +121,11 @@ interface nsIContentPolicy : nsISupports
*/
const unsigned long TYPE_OBJECT_SUBREQUEST = 12;
/**
* Indicates a DTD loaded by an XML document.
*/
const unsigned long TYPE_DTD = 13;
//////////////////////////////////////////////////////////////////////
/**

View File

@ -178,7 +178,7 @@ nsCommentNode::List(FILE* out, PRInt32 aIndent) const
PRInt32 indx;
for (indx = aIndent; --indx >= 0; ) fputs(" ", out);
fprintf(out, "Comment@%p refcount=%d<!--", this, mRefCnt.get());
fprintf(out, "Comment@%p refcount=%d<!--", (void*)this, mRefCnt.get());
nsAutoString tmp;
ToCString(tmp, 0, mText.GetLength());

View File

@ -154,10 +154,25 @@ NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsContentSink)
NS_INTERFACE_MAP_ENTRY(nsICSSLoaderObserver)
NS_INTERFACE_MAP_ENTRY(nsISupportsWeakReference)
NS_INTERFACE_MAP_ENTRY(nsIScriptLoaderObserver)
NS_INTERFACE_MAP_ENTRY(nsIDocumentObserver)
NS_INTERFACE_MAP_ENTRY(nsIMutationObserver)
NS_INTERFACE_MAP_ENTRY(nsITimerCallback)
NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIScriptLoaderObserver)
NS_INTERFACE_MAP_END
NS_IMPL_CYCLE_COLLECTION_2(nsContentSink, mDocument, mParser)
NS_IMPL_CYCLE_COLLECTION_CLASS(nsContentSink)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsContentSink)
if (tmp->mDocument) {
tmp->mDocument->RemoveObserver(tmp);
}
NS_IMPL_CYCLE_COLLECTION_UNLINK_NSCOMPTR(mDocument)
NS_IMPL_CYCLE_COLLECTION_UNLINK_NSCOMPTR(mParser)
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(nsContentSink)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_NSCOMPTR(mDocument)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_NSCOMPTR(mParser)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
nsContentSink::nsContentSink()
{
@ -181,6 +196,11 @@ nsContentSink::nsContentSink()
nsContentSink::~nsContentSink()
{
if (mDocument) {
// Remove ourselves just to be safe, though we really should have
// been removed in DidBuildModel if everything worked right.
mDocument->RemoveObserver(this);
}
}
nsresult

View File

@ -72,7 +72,7 @@ nsDataDocumentContentPolicy::ShouldLoad(PRUint32 aContentType,
doc = do_QueryInterface(domDoc);
}
}
if (doc && doc->IsLoadedAsData()) {
if (aContentType != nsIContentPolicy::TYPE_DTD && doc && doc->IsLoadedAsData()) {
*aDecision = nsIContentPolicy::REJECT_TYPE;
}

View File

@ -3748,11 +3748,14 @@ nsGenericElement::SetAttrAndNotify(PRInt32 aNamespaceID,
}
NS_ENSURE_SUCCESS(rv, rv);
if (document) {
nsRefPtr<nsXBLBinding> binding =
document->BindingManager()->GetBinding(this);
if (binding) {
binding->AttributeChanged(aName, aNamespaceID, PR_FALSE, aNotify);
if (document || HasFlag(NODE_FORCE_XBL_BINDINGS)) {
nsIDocument* ownerDoc = GetOwnerDoc();
if (ownerDoc) {
nsRefPtr<nsXBLBinding> binding =
ownerDoc->BindingManager()->GetBinding(this);
if (binding) {
binding->AttributeChanged(aName, aNamespaceID, PR_FALSE, aNotify);
}
}
}
@ -3998,11 +4001,15 @@ nsGenericElement::UnsetAttr(PRInt32 aNameSpaceID, nsIAtom* aName,
rv = mAttrsAndChildren.RemoveAttrAt(index, oldValue);
NS_ENSURE_SUCCESS(rv, rv);
if (document) {
nsRefPtr<nsXBLBinding> binding =
document->BindingManager()->GetBinding(this);
if (binding)
binding->AttributeChanged(aName, aNameSpaceID, PR_TRUE, aNotify);
if (document || HasFlag(NODE_FORCE_XBL_BINDINGS)) {
nsIDocument* ownerDoc = GetOwnerDoc();
if (ownerDoc) {
nsRefPtr<nsXBLBinding> binding =
ownerDoc->BindingManager()->GetBinding(this);
if (binding) {
binding->AttributeChanged(aName, aNameSpaceID, PR_TRUE, aNotify);
}
}
}
if (aNotify) {

View File

@ -174,6 +174,7 @@ _TEST_FILES = test_bug5141.html \
test_bug417255.html \
test_bug417384.html \
test_bug418214.html \
test_bug420609.xhtml \
$(NULL)
libs:: $(_TEST_FILES)

View File

@ -0,0 +1,35 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=420609
-->
<head>
<title>Test for Bug 420609</title>
<script type="text/javascript" src="/MochiKit/packed.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=420609">Mozilla Bug 420609</a>
<p id="display"></p>
<div id="content" style="display: none">
&nbsp;&mdash;&sup1;&hellip;
</div>
<pre id="test">
<script class="testbody" type="text/javascript">
<![CDATA[
/** Test for Bug 420609 **/
var request = new XMLHttpRequest();
request.open("GET", window.location.href, false);
request.send(null);
ok(request.responseXML && request.responseXML.documentElement.tagName == "html", "XMLHttpRequest should load XHTML document with entities");
is(document.getElementById("content").textContent, request.responseXML.getElementById("content").textContent, "Entities should be expanded in the document loaded by XMLHttpRequest");
]]>
</script>
</pre>
</body>
</html>

View File

@ -154,7 +154,7 @@ nsPoint nsDOMUIEvent::GetClientPoint() {
}
nsPoint pt(0, 0);
nsIPresShell* shell = mPresContext->PresShell();
nsIPresShell* shell = mPresContext->GetPresShell();
if (!shell) {
return pt;
}
@ -200,7 +200,7 @@ nsDOMUIEvent::GetPagePoint()
if (((nsGUIEvent*)mEvent)->widget) {
// Native event; calculate using presentation
nsPoint pt(0, 0);
nsIPresShell* shell = mPresContext->PresShell();
nsIPresShell* shell = mPresContext->GetPresShell();
if (!shell) {
return pt;
}

View File

@ -1570,11 +1570,6 @@ HTMLContentSink::~HTMLContentSink()
NS_IF_RELEASE(mBody);
NS_IF_RELEASE(mRoot);
if (mDocument) {
// Remove ourselves just to be safe, though we really should have
// been removed in DidBuildModel if everything worked right.
mDocument->RemoveObserver(this);
}
NS_IF_RELEASE(mHTMLDocument);
if (mNotificationTimer) {
@ -1615,22 +1610,16 @@ HTMLContentSink::~HTMLContentSink()
}
#if DEBUG
NS_IMPL_ISUPPORTS_INHERITED6(HTMLContentSink,
NS_IMPL_ISUPPORTS_INHERITED3(HTMLContentSink,
nsContentSink,
nsIContentSink,
nsIHTMLContentSink,
nsITimerCallback,
nsIDocumentObserver,
nsIMutationObserver,
nsIDebugDumpContent)
#else
NS_IMPL_ISUPPORTS_INHERITED5(HTMLContentSink,
NS_IMPL_ISUPPORTS_INHERITED2(HTMLContentSink,
nsContentSink,
nsIContentSink,
nsIHTMLContentSink,
nsITimerCallback,
nsIDocumentObserver,
nsIMutationObserver)
nsIHTMLContentSink)
#endif
static PRBool

View File

@ -0,0 +1,18 @@
<?xml version="1.0"?>
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="boom();">
<?xml-stylesheet?>
<script type="text/javascript">
function boom()
{
window.addEventListener("DOMCharacterDataModified", function(){}, false);
document.documentElement.cloneNode(true).getElementsByTagName("*").length;
}
</script>
</window>

View File

@ -0,0 +1 @@
load 420429.xul

View File

@ -81,7 +81,9 @@ nsXMLProcessingInstruction::nsXMLProcessingInstruction(nsINodeInfo *aNodeInfo,
: nsGenericDOMDataNode(aNodeInfo),
mTarget(aTarget)
{
nsGenericDOMDataNode::SetData(aData);
SetTextInternal(0, mText.GetLength(),
aData.BeginReading(), aData.Length(),
PR_FALSE); // Don't notify (bug 420429).
}
nsXMLProcessingInstruction::~nsXMLProcessingInstruction()

View File

@ -145,12 +145,6 @@ nsXMLContentSink::nsXMLContentSink()
nsXMLContentSink::~nsXMLContentSink()
{
if (mDocument) {
// Remove ourselves just to be safe, though we really should have
// been removed in DidBuildModel if everything worked right.
mDocument->RemoveObserver(this);
}
NS_IF_RELEASE(mDocElement);
if (mText) {
PR_Free(mText); // Doesn't null out, unlike PR_FREEIF
@ -189,9 +183,6 @@ NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsXMLContentSink)
NS_INTERFACE_MAP_ENTRY(nsIContentSink)
NS_INTERFACE_MAP_ENTRY(nsIXMLContentSink)
NS_INTERFACE_MAP_ENTRY(nsIExpatSink)
NS_INTERFACE_MAP_ENTRY(nsITimerCallback)
NS_INTERFACE_MAP_ENTRY(nsIDocumentObserver)
NS_INTERFACE_MAP_ENTRY(nsIMutationObserver)
NS_INTERFACE_MAP_ENTRY(nsITransformObserver)
NS_INTERFACE_MAP_END_INHERITING(nsContentSink)

Some files were not shown because too many files have changed in this diff Show More