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
@ -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
|
||||
|
@ -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
|
||||
|
@ -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&expandQueries=1"
|
||||
|
@ -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
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -380,7 +380,6 @@
|
||||
onclick="BookmarksEventHandler.onClick(event);"
|
||||
oncommand="BookmarksEventHandler.onCommand(event);"
|
||||
onpopupshowing="BookmarksEventHandler.onPopupShowing(event);"
|
||||
ondragexit="PlacesMenuDNDController.onDragExit(event);"
|
||||
tooltip="btTooltip"/>
|
||||
</toolbaritem>
|
||||
|
||||
|
@ -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>
|
||||
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
@ -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);
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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
|
||||
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
|
@ -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"
|
||||
|
@ -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
|
||||
|
@ -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.">
|
||||
|
@ -1,2 +1,2 @@
|
||||
<!ENTITY reportPhishSiteMenu.title "Report Web Forgery">
|
||||
<!ENTITY reportPhishSiteMenu.title2 "Report Web Forgery…">
|
||||
<!ENTITY reportPhishSiteMenu.accesskey "F">
|
@ -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))
|
||||
|
@ -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
|
||||
|
@ -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");
|
||||
}
|
||||
|
||||
|
@ -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 {
|
||||
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.3 KiB |
BIN
browser/themes/winstripe/browser/Go-arrow-aero.png
Executable file
After Width: | Height: | Size: 609 B |
BIN
browser/themes/winstripe/browser/Go-arrow-rtl-aero.png
Executable file
After Width: | Height: | Size: 577 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 364 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 363 B |
BIN
browser/themes/winstripe/browser/Secure-aero.png
Executable file
After Width: | Height: | Size: 584 B |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 585 B |
BIN
browser/themes/winstripe/browser/Secure24-aero.png
Executable file
After Width: | Height: | Size: 1.1 KiB |
BIN
browser/themes/winstripe/browser/Secure24.png
Executable file
After Width: | Height: | Size: 1.1 KiB |
BIN
browser/themes/winstripe/browser/Security-broken-aero.png
Executable file
After Width: | Height: | Size: 714 B |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 726 B |
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 83 KiB |
BIN
browser/themes/winstripe/browser/Toolbar-small-aero.png
Executable file
After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 71 KiB |
@ -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 {
|
||||
|
Before Width: | Height: | Size: 748 B After Width: | Height: | Size: 767 B |
Before Width: | Height: | Size: 771 B After Width: | Height: | Size: 763 B |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
@ -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
|
||||
|
BIN
browser/themes/winstripe/browser/livemark-folder-aero.png
Executable file
After Width: | Height: | Size: 556 B |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 582 B |
BIN
browser/themes/winstripe/browser/livemark-item-aero.png
Executable file
After Width: | Height: | Size: 574 B |
Before Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 577 B |
BIN
browser/themes/winstripe/browser/menu-back-aero.png
Executable file
After Width: | Height: | Size: 473 B |
BIN
browser/themes/winstripe/browser/menu-back.png
Executable file
After Width: | Height: | Size: 458 B |
BIN
browser/themes/winstripe/browser/menu-forward-aero.png
Executable file
After Width: | Height: | Size: 464 B |
BIN
browser/themes/winstripe/browser/menu-forward.png
Executable file
After Width: | Height: | Size: 454 B |
Before Width: | Height: | Size: 734 B |
Before Width: | Height: | Size: 638 B |
BIN
browser/themes/winstripe/browser/places/collapse-aero.png
Executable file
After Width: | Height: | Size: 441 B |
BIN
browser/themes/winstripe/browser/places/collapse.png
Executable file
After Width: | Height: | Size: 469 B |
BIN
browser/themes/winstripe/browser/places/expand-aero.png
Executable file
After Width: | Height: | Size: 425 B |
BIN
browser/themes/winstripe/browser/places/expand.png
Executable file
After Width: | Height: | Size: 470 B |
BIN
browser/themes/winstripe/browser/places/history-aero.png
Executable file
After Width: | Height: | Size: 743 B |
BIN
browser/themes/winstripe/browser/places/history.png
Executable file
After Width: | Height: | Size: 871 B |
BIN
browser/themes/winstripe/browser/places/importAndBackup-aero.png
Executable file
After Width: | Height: | Size: 825 B |
BIN
browser/themes/winstripe/browser/places/importAndBackup.png
Executable file
After Width: | Height: | Size: 796 B |
BIN
browser/themes/winstripe/browser/places/minus-aero.png
Executable file
After Width: | Height: | Size: 334 B |
BIN
browser/themes/winstripe/browser/places/minus.png
Executable file
After Width: | Height: | Size: 387 B |
Before Width: | Height: | Size: 563 B After Width: | Height: | Size: 760 B |
Before Width: | Height: | Size: 730 B After Width: | Height: | Size: 752 B |
BIN
browser/themes/winstripe/browser/places/plus-aero.png
Executable file
After Width: | Height: | Size: 397 B |
BIN
browser/themes/winstripe/browser/places/plus.png
Executable file
After Width: | Height: | Size: 418 B |
Before Width: | Height: | Size: 527 B After Width: | Height: | Size: 686 B |
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 624 B |
BIN
browser/themes/winstripe/browser/places/starred48-aero.png
Executable file
After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 8.5 KiB After Width: | Height: | Size: 9.0 KiB |
Before Width: | Height: | Size: 8.7 KiB After Width: | Height: | Size: 9.2 KiB |
Before Width: | Height: | Size: 451 B After Width: | Height: | Size: 594 B |
Before Width: | Height: | Size: 515 B After Width: | Height: | Size: 586 B |
@ -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;
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
||||
|
@ -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
|
||||
|
@ -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);
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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,
|
||||
|
@ -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
|
||||
|
||||
|
29
configure.in
@ -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)'
|
||||
|
@ -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>";
|
||||
}
|
||||
|
@ -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;
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
/**
|
||||
|
@ -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());
|
||||
|
@ -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
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
|
@ -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) {
|
||||
|
@ -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)
|
||||
|
35
content/base/test/test_bug420609.xhtml
Normal 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">
|
||||
—¹…
|
||||
</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>
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -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
|
||||
|
18
content/xml/content/crashtest/420429.xul
Normal 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>
|
1
content/xml/content/crashtest/crashtests.list
Normal file
@ -0,0 +1 @@
|
||||
load 420429.xul
|
@ -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()
|
||||
|
@ -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)
|
||||
|
||||
|