bug 328243 - disband the browser shim, move locale to locales dir, move theme to themes dir. r=annie.sullivan@gmail.com
|
@ -11,5 +11,9 @@
|
|||
%charsetDTD;
|
||||
<!ENTITY % findBarDTD SYSTEM "chrome://global/locale/findbar.dtd" >
|
||||
%findBarDTD;
|
||||
#ifdef MOZ_PLACES
|
||||
<!ENTITY % placesDTD SYSTEM "chrome://browser/locale/places/places.dtd">
|
||||
%placesDTD;
|
||||
#endif
|
||||
]>
|
||||
|
||||
|
|
|
@ -48,6 +48,9 @@
|
|||
<stringbundle id="bundle_shell" src="chrome://browser/locale/shellservice.properties"/>
|
||||
<stringbundle id="bundle_findBar" src="chrome://global/locale/findbar.properties"/>
|
||||
<stringbundle id="bundle_preferences" src="chrome://browser/locale/preferences/preferences.properties"/>
|
||||
#ifdef MOZ_PLACES
|
||||
<stringbundle id="placeBundle" src="chrome://browser/locale/places/places.properties"/>
|
||||
#endif
|
||||
</stringbundleset>
|
||||
|
||||
<commandset id="globalEditCommandSet"
|
||||
|
@ -161,6 +164,11 @@
|
|||
<command id="Tools:Extensions" oncommand="BrowserOpenExtensions('extensions');"/>
|
||||
<command id="Tools:Themes" oncommand="BrowserOpenExtensions('themes');"/>
|
||||
<command id="Tools:Sanitize" oncommand="gBrowserGlue.sanitize(window || null);"/>
|
||||
#ifdef MOZ_PLACES
|
||||
#include ../../components/places/content/commands.inc
|
||||
<command id="Browser:ShowBookmarks" oncommand="PlacesBrowserShim.showBookmarks();"/>
|
||||
<command id="Browser:ShowHistory" oncommand="PlacesBrowserShim.showHistory();"/>
|
||||
#endif
|
||||
</commandset>
|
||||
|
||||
<broadcasterset id="mainBroadcasterSet">
|
||||
|
|
|
@ -12,8 +12,17 @@ menuitem.spell-suggestion {
|
|||
font-weight:bold;
|
||||
}
|
||||
|
||||
#noPreviewAvailable
|
||||
{
|
||||
#noPreviewAvailable {
|
||||
background-color: white !important;
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
#bookmarksBarContent {
|
||||
-moz-binding: url("chrome://browser/content/places/toolbar.xml#places-bar");
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
menupopup[type="places"] {
|
||||
-moz-binding: url("chrome://browser/content/places/menu.xml#places-menupopup");
|
||||
}
|
||||
|
||||
|
|
|
@ -725,6 +725,9 @@ function BrowserStartup()
|
|||
document.documentElement.setAttribute("height", defaultHeight);
|
||||
}
|
||||
|
||||
#ifdef MOZ_PLACES
|
||||
PlacesBrowserShim.init();
|
||||
#endif
|
||||
setTimeout(delayedStartup, 0);
|
||||
}
|
||||
|
||||
|
@ -864,8 +867,10 @@ function delayedStartup()
|
|||
document.getElementById("PersonalToolbar")
|
||||
.controllers.appendController(BookmarksMenuController);
|
||||
#else
|
||||
/*
|
||||
var bookmarksBar = document.getElementById("bookmarksBarContent");
|
||||
bookmarksBar.init();
|
||||
*/
|
||||
#endif
|
||||
|
||||
// called when we go into full screen, even if it is
|
||||
|
@ -1841,11 +1846,13 @@ function getShortcutOrURI(aURL, aPostDataRef)
|
|||
try {
|
||||
var shortcutURL = null;
|
||||
#ifdef MOZ_PLACES
|
||||
/*
|
||||
var bookmarkService = Components.classes["@mozilla.org/browser/nav-bookmarks-service;1"]
|
||||
.getService(nsCI.nsINavBookmarksService);
|
||||
var shortcutURI = bookmarkService.getURIForKeyword(aURL);
|
||||
if (shortcutURI)
|
||||
shortcutURL = shortcutURI.spec;
|
||||
*/
|
||||
#else
|
||||
shortcutURL = BMSVC.resolveKeyword(aURL, aPostDataRef);
|
||||
#endif
|
||||
|
@ -1857,9 +1864,11 @@ function getShortcutOrURI(aURL, aPostDataRef)
|
|||
var cmd = aURL.substr(0, aOffset);
|
||||
var text = aURL.substr(aOffset+1);
|
||||
#ifdef MOZ_PLACES
|
||||
/*
|
||||
shortcutURI = bookmarkService.getURIForKeyword(cmd);
|
||||
if (shortcutURI)
|
||||
shortcutURL = shortcutURI.spec;
|
||||
*/
|
||||
#else
|
||||
shortcutURL = BMSVC.resolveKeyword(cmd, aPostDataRef);
|
||||
#endif
|
||||
|
@ -2242,6 +2251,7 @@ function SetPageProxyState(aState)
|
|||
function PageProxySetIcon (aURL)
|
||||
{
|
||||
#ifdef MOZ_PLACES
|
||||
/*
|
||||
// Save this favicon in the favicon service
|
||||
if (aURL) {
|
||||
var faviconService = Components.classes["@mozilla.org/browser/favicon-service;1"].
|
||||
|
@ -2250,6 +2260,7 @@ function PageProxySetIcon (aURL)
|
|||
.getService(Components.interfaces.nsIIOService).newURI(aURL, null, null);
|
||||
faviconService.setAndLoadFaviconForPage(gBrowser.currentURI, uri, false);
|
||||
}
|
||||
*/
|
||||
#endif
|
||||
|
||||
if (!gProxyFavIcon)
|
||||
|
@ -6238,3 +6249,690 @@ var FeedHandler = {
|
|||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
#ifdef MOZ_PLACES
|
||||
var PlacesBrowserShim = {
|
||||
_bms: null, // Bookmark Service
|
||||
_lms: null, // Livemark Service
|
||||
_hist: null, // History Service
|
||||
_ios: null, // IO Service, useful for making nsIURI objects
|
||||
_strings: null, // Localization string bundle
|
||||
|
||||
// XXXben: these should die
|
||||
_currentURI: null, // URI of the bookmark being modified
|
||||
_assignableFolderResult: null, // root of user-writable folders
|
||||
MAX_INDENT_DEPTH: 6, // maximum indentation level of "tag" display
|
||||
|
||||
init: function PBS_init() {
|
||||
this._bms =
|
||||
Cc["@mozilla.org/browser/nav-bookmarks-service;1"].
|
||||
getService(Ci.nsINavBookmarksService);
|
||||
|
||||
this._lms =
|
||||
Cc["@mozilla.org/browser/livemark-service;1"].
|
||||
getService(Ci.nsILivemarkService);
|
||||
|
||||
this._hist =
|
||||
Cc["@mozilla.org/browser/nav-history-service;1"].
|
||||
getService(Ci.nsINavHistoryService);
|
||||
|
||||
this._ios =
|
||||
Cc["@mozilla.org/network/io-service;1"].
|
||||
getService(Ci.nsIIOService);
|
||||
|
||||
this._strings = document.getElementById("placeBundle");
|
||||
|
||||
// Override the old addLivemark function
|
||||
//BookmarksUtils.addLivemark = function(a,b,c,d) {PlacesBrowserShim.addLivemark(a,b,c,d);};
|
||||
|
||||
// XXXben - wrong
|
||||
var addBookmarkCmd = document.getElementById("Browser:AddBookmarkAs");
|
||||
addBookmarkCmd.setAttribute("oncommand", "PlacesBrowserShim.addBookmark()");
|
||||
|
||||
// XXXben - why isn't this done by the binding?
|
||||
var newMenuPopup = document.getElementById("bookmarksMenuPopup");
|
||||
var query = this._hist.getNewQuery();
|
||||
query.setFolders([this._bms.bookmarksRoot], 1);
|
||||
var options = this._hist.getNewQueryOptions();
|
||||
options.setGroupingMode([Ci.nsINavHistoryQueryOptions.GROUP_BY_FOLDER], 1);
|
||||
options.expandQueries = true;
|
||||
var result = this._hist.executeQuery(query, options);
|
||||
newMenuPopup._result = result;
|
||||
newMenuPopup._resultNode = result.root;
|
||||
|
||||
this._registerEventHandlers();
|
||||
|
||||
window.controllers.appendController(PlacesController);
|
||||
|
||||
PlacesController.topWindow = window;
|
||||
PlacesController.tm = PlacesTransactionManager;
|
||||
},
|
||||
|
||||
/**
|
||||
* This method creates a query for the set of assignable folders.
|
||||
* This only needs to be created once; when closed (using
|
||||
* root.containerOpen = false) and reopened, the results will be regenerated
|
||||
* if the data has changed since the close.
|
||||
* XXXben - why is this done during startup?!
|
||||
*/
|
||||
_initAssignableFolderResult: function PBS__initAssignableFolderRoot() {
|
||||
var query = this._hist.getNewQuery();
|
||||
query.setFolders([this._bms.placesRoot], 1);
|
||||
var options = this._hist.getNewQueryOptions();
|
||||
options.setGroupingMode([Ci.nsINavHistoryQueryOptions.GROUP_BY_FOLDER], 1);
|
||||
options.excludeItems = true;
|
||||
|
||||
this._assignableFolderResult = this._hist.executeQuery(query, options);
|
||||
},
|
||||
|
||||
addBookmark: function PBS_addBookmark() {
|
||||
var selectedBrowser = getBrowser().selectedBrowser;
|
||||
this._bookmarkURI(this._bms.bookmarksRoot, selectedBrowser.currentURI,
|
||||
selectedBrowser.contentTitle);
|
||||
},
|
||||
|
||||
_bookmarkURI: function PBS__bookmarkURI(folder, uri, title) {
|
||||
this._bms.insertItem(folder, uri, -1);
|
||||
this._bms.setItemTitle(uri, title);
|
||||
},
|
||||
|
||||
showHistory: function PBS_showHistory() {
|
||||
this._showPlacesView("chrome://browser/content/places/places.xul?history");
|
||||
},
|
||||
|
||||
showBookmarks: function PBS_showBookmarks() {
|
||||
this._showPlacesView("chrome://browser/content/places/places.xul?bookmarks");
|
||||
},
|
||||
|
||||
/**
|
||||
* This method shows the given URI string in whatever form we've decided
|
||||
* is appropriate for the "Places" UI. (It is intended to be used only for
|
||||
* displaying the Places chrome.)
|
||||
*/
|
||||
_showPlacesView: function PBS__showPlacesView(uriString) {
|
||||
var tab = getBrowser().addTab(uriString);
|
||||
getBrowser().selectedTab = tab;
|
||||
},
|
||||
|
||||
addLivemark: function PBS_addLivemark(url, feedURL, title, description) {
|
||||
// XXXas TODO -- put in nice confirmation dialog.
|
||||
this._lms.createLivemark(this._bms.toolbarRoot,
|
||||
title,
|
||||
this._makeURI(url),
|
||||
this._makeURI(feedURL),
|
||||
-1);
|
||||
},
|
||||
|
||||
/**
|
||||
* Makes an nsIURI object from a string containing a URI.
|
||||
*/
|
||||
_makeURI: function PBS__makeURI(urlString) {
|
||||
ASSERT(urlString, "_makeURI called with an empty or undefined string parameter");
|
||||
return this._ios.newURI(urlString, null, null);
|
||||
},
|
||||
|
||||
|
||||
/**
|
||||
* Gets the URI that the visible browser tab is rendering.
|
||||
*
|
||||
* @returns a string containing the URI currently being shown
|
||||
*/
|
||||
_getCurrentLocation: function PBS__getCurrentLocation() {
|
||||
return getBrowser().selectedBrowser.webNavigation.currentURI;
|
||||
},
|
||||
|
||||
/**
|
||||
* This method updates the state of navigation buttons (i.e. bookmark, feeds)
|
||||
* which depend on the location and contents of the current page.
|
||||
*/
|
||||
_updateControlStates: function PBS__updateControlStates() {
|
||||
var bookmarkButton = document.getElementById("places-bookmark");
|
||||
if (bookmarkButton) {
|
||||
if (this._bms.isBookmarked(this._getCurrentLocation()))
|
||||
bookmarkButton.label = this._strings.getString("locationStatusBookmarked");
|
||||
else
|
||||
bookmarkButton.label = this._strings.getString("locationStatusNotBookmarked");
|
||||
}
|
||||
|
||||
var feedButton = document.getElementById("places-subscribe");
|
||||
if (feedButton) {
|
||||
if (gBrowser.selectedBrowser.feeds)
|
||||
feedButton.removeAttribute("disabled");
|
||||
else
|
||||
feedButton.setAttribute("disabled", "true");
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Register the event handlers that Places needs to update its state.
|
||||
*/
|
||||
_registerEventHandlers: function PBS_registerEventHandlers() {
|
||||
var self = this;
|
||||
|
||||
function onPageShow(e){
|
||||
self.onPageShow(e);
|
||||
}
|
||||
// XXXben comment out until we figure out what's up with tboxes.
|
||||
//getBrowser().addEventListener("pageshow", onPageShow, true);
|
||||
|
||||
function onTabSwitch(e) {
|
||||
self.onTabSwitch(e);
|
||||
}
|
||||
getBrowser().mTabBox.addEventListener("select", onTabSwitch, true);
|
||||
},
|
||||
|
||||
/**
|
||||
* Prepares the bookmark properties dialog for display; should be called
|
||||
* from the dialog's onload handler with a reference to the dialog's
|
||||
* DOM window object.
|
||||
*/
|
||||
prepareBookmarkDialog: function PBS_prepareBookmarkDialog(dialogWindow) {
|
||||
this.populateProperties(dialogWindow.document);
|
||||
this.sizeAndPositionBookmarkDialog(dialogWindow);
|
||||
},
|
||||
|
||||
sizeAndPositionBookmarkDialog: function PBS_sizeAndPositionBookmarkDialog(childWindow) {
|
||||
var urlbar = document.getElementById("urlbar");
|
||||
var editUrlbar = childWindow.document.getElementById("edit-urlbar");
|
||||
|
||||
var newx = Math.max(0, urlbar.boxObject.x + window.screenX - editUrlbar.boxObject.x);
|
||||
var newy = urlbar.boxObject.y + window.screenY - editUrlbar.boxObject.y;
|
||||
childWindow.moveTo(newx, newy);
|
||||
|
||||
var childDoc = childWindow.document;
|
||||
|
||||
var tagbox = childDoc.getElementById("tagbox");
|
||||
tagbox.style.overflow="auto";
|
||||
|
||||
var pio = childDoc.getElementById("places-info-options");
|
||||
var pig = childDoc.getElementById("places-info-grid");
|
||||
childDoc.documentElement.getButton("accept").hidden=true;
|
||||
|
||||
var newHeight = pio.boxObject.y + pio.boxObject.height + 5;
|
||||
childWindow.resizeTo(childWindow.innerWidth, newHeight);
|
||||
},
|
||||
|
||||
/**
|
||||
* This method should be called when the location currently being
|
||||
* rendered by a browser changes (loading new page or forward/back).
|
||||
*/
|
||||
onPageShow: function PBS_onPageShow(e) {
|
||||
if (e.target && e.target.nodeName == "#document") {
|
||||
this._updateControlStates();
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* This method should be called when the user switches active tabs.
|
||||
*/
|
||||
onTabSwitch: function PBS_onTabSwitch(e) {
|
||||
if (e.target == null || e.target.localName != "tabs")
|
||||
return;
|
||||
|
||||
this._updateControlStates();
|
||||
},
|
||||
|
||||
///////////////// ALL THIS NEEDS TO MOVE TO SEPARATE DIALOG SCRIPT FILE! --->
|
||||
|
||||
/**
|
||||
* This method should be called when the bookmark button is clicked.
|
||||
*/
|
||||
onBookmarkButtonClick: function PBS_onBookmarkButtonClick() {
|
||||
this._currentURI = this._getCurrentLocation();
|
||||
if (this._bms.isBookmarked(this._currentURI)) {
|
||||
this.showBookmarkProperties();
|
||||
} else {
|
||||
this._bms.insertItem(this._bms.bookmarksRoot, this._currentURI, -1);
|
||||
this._updateControlStates();
|
||||
}
|
||||
},
|
||||
|
||||
populateProperties: function PBS_populateProperties(document, location, title) {
|
||||
if (!location) {
|
||||
location = this._currentURI;
|
||||
title = this._currentTitle;
|
||||
}
|
||||
|
||||
var nurl = document.getElementById("edit-urlbar");
|
||||
|
||||
var titlebox = document.getElementById("edit-titlebox");
|
||||
|
||||
nurl.value = location.spec;
|
||||
titlebox.value = title;
|
||||
|
||||
var tagArea = document.getElementById("tagbox");
|
||||
|
||||
while (tagArea.hasChildNodes()) {
|
||||
tagArea.removeChild(tagArea.firstChild);
|
||||
}
|
||||
|
||||
var elementDict = {};
|
||||
|
||||
var root = this._assignableFolderResult.root; //Root is always a container.
|
||||
root.containerOpen = true;
|
||||
this._populateTags(root, 0, tagArea, elementDict);
|
||||
root.containerOpen = false;
|
||||
|
||||
var categories = this._bms.getBookmarkFolders(location, {});
|
||||
|
||||
this._updateFolderTextbox(document, location);
|
||||
|
||||
var length = 0;
|
||||
for (key in elementDict) {
|
||||
length++;
|
||||
}
|
||||
|
||||
for (var i=0; i < categories.length; i++) {
|
||||
var elm = elementDict[categories[i]];
|
||||
elm.setAttribute("selected", "true");
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* This method shows the bookmark properties dialog. If bookmarkURI
|
||||
* is undefined, the dialog with display properties for the URI of the
|
||||
* most recently displayed page; if it is set to an nsIURI object, it
|
||||
* will display properties for the bookmark identified by that URI.
|
||||
* The URI used should already have been bookmarked using _bookmarkURI().
|
||||
*/
|
||||
showBookmarkProperties: function PBS_showBookmarkProperties(bookmarkURI) {
|
||||
if (bookmarkURI) {
|
||||
this._currentURI = bookmarkURI;
|
||||
}
|
||||
|
||||
ASSERT(this._bms.isBookmarked(this._currentURI), "showBookmarkProperties() was called on a URI that hadn't been bookmarked: " + this._currentURI.spec);
|
||||
|
||||
this._currentTitle = this._bms.getItemTitle(this._currentURI);
|
||||
window.openDialog("chrome://browser/content/places/bookmarkProperties.xul", "bookmarkproperties", "width=600,height=400,chrome,dependent,modal,resizable");
|
||||
},
|
||||
|
||||
/**
|
||||
* This method is called to exit the Bookmark Properties panel.
|
||||
*
|
||||
* @param aSaveChanges boolean, should be true if changes performed while
|
||||
* the panel was active should be saved
|
||||
* @param document the document containing the fields needing to be saved
|
||||
*/
|
||||
hideBookmarkProperties:
|
||||
function PBS_hideBookmarkProperties(saveChanges, document) {
|
||||
if (saveChanges) {
|
||||
var titlebox = document.getElementById("edit-titlebox");
|
||||
this._bms.setItemTitle(this._currentURI, titlebox.value);
|
||||
|
||||
var urlbox = document.getElementById("edit-urlbar");
|
||||
if (urlbox.value != this._currentURI.spec) {
|
||||
// TODO delete existing bookmark, create new one with same folder/locations
|
||||
}
|
||||
}
|
||||
|
||||
this._updateControlStates();
|
||||
},
|
||||
|
||||
|
||||
/**
|
||||
* This method deletes the bookmark corresponding to the URI stored
|
||||
* in _currentURI. _currentURI represents the URI that the Bookmark
|
||||
* Properties panel is currently viewing/editing. Therefore, this method
|
||||
* is only relevant in when the Bookmark Properties panel is active.
|
||||
*/
|
||||
deleteBookmark: function PBS_deleteBookmark() {
|
||||
if (!this._currentURI)
|
||||
return;
|
||||
|
||||
var folders = this._bms.getBookmarkFolders(this._currentURI, {});
|
||||
if (folders.length == 0)
|
||||
return;
|
||||
|
||||
this._bms.beginUpdateBatch();
|
||||
for (var i = 0; i < folders.length; i++) {
|
||||
this._bms.removeItem(folders[i], this._currentURI);
|
||||
}
|
||||
this._bms.endUpdateBatch();
|
||||
},
|
||||
|
||||
/**
|
||||
* This method implements the "Show all bookmarks" action
|
||||
* in the Bookmark Properties dialog.
|
||||
*/
|
||||
dialogShowBookmarks: function PBS_dialogShowBookmarks(dialogWindow) {
|
||||
this.hideBookmarkProperties(true, dialogWindow.document);
|
||||
dialogWindow.close();
|
||||
this.showBookmarks();
|
||||
},
|
||||
|
||||
/**
|
||||
* This method implements the "Delete Bookmark" action
|
||||
* in the Bookmark Properties dialog.
|
||||
*/
|
||||
dialogDeleteBookmark: function PBS_dialogDeleteBookmark(dialogWindow) {
|
||||
this.deleteBookmark();
|
||||
this.hideBookmarkProperties(false, dialogWindow.document);
|
||||
dialogWindow.close();
|
||||
},
|
||||
|
||||
/**
|
||||
* This method implements the "Done" action
|
||||
* in the Bookmark Properties dialog.
|
||||
*/
|
||||
dialogDone: function PBS_dialogDone(dialogWindow) {
|
||||
this.hideBookmarkProperties(true, dialogWindow.document);
|
||||
dialogWindow.close();
|
||||
},
|
||||
|
||||
/**
|
||||
* This method sets the contents of the "Folders" textbox in the
|
||||
* Bookmark Properties panel.
|
||||
*
|
||||
* @param document the document containing the textbox element
|
||||
* @param uri an nsIURI object representing the current bookmark's URI
|
||||
*/
|
||||
_updateFolderTextbox: function PBS__updateFolderTextbox(document, uri) {
|
||||
var folderTextbox = document.getElementById("places-folder-list");
|
||||
folderTextbox.value = this._getFolderNameListForURI(uri);
|
||||
},
|
||||
|
||||
/**
|
||||
* This method gets the list of folders that contain the current bookmark.
|
||||
*
|
||||
* @param aURI a nsIURI object representing the URI of the current bookmark
|
||||
*
|
||||
* @returns a comma-separated list of folder names in string form
|
||||
*/
|
||||
_getFolderNameListForURI: function PBS__getFolderNameListForURI(uri) {
|
||||
var folders = this._bms.getBookmarkFolders(uri, {});
|
||||
var results = [];
|
||||
for (var i = 0; i < folders.length; i++) {
|
||||
results.push(this._bms.getFolderTitle(folders[i]));
|
||||
}
|
||||
return results.join(", ");
|
||||
},
|
||||
|
||||
/**
|
||||
* Recursively populates the tag-like set of clickable folders.
|
||||
*
|
||||
* @param aContainer a reference to an nsINavHistoryContainerResultNode
|
||||
* (whose) containerOpen property is set to true) representing
|
||||
* the roote of the bookmark folder tree
|
||||
* @param aDepth the current iteration depth -- pass this 0 at the top level.
|
||||
* This only affects the visual indentation level of the tag display.
|
||||
* @param aParentElement a vbox element into which the tags will be populated
|
||||
* @param aElementDict a dictionary mapping folder IDs to element references
|
||||
* to be populated in this method
|
||||
*
|
||||
* @returns none
|
||||
*/
|
||||
_populateTags:
|
||||
function PBS__populateTags (container, depth, parentElement, elementDict) {
|
||||
ASSERT(container.containerOpen, "The containerOpen property of the container parameter should be set to true before calling populateTags(), and then set to false again afterwards.");
|
||||
|
||||
var row = null;
|
||||
for (var i = 0; i < container.childCount; i++) {
|
||||
var childNode = container.getChild(i);
|
||||
|
||||
if (childNode.type != childNode.RESULT_TYPE_FOLDER)
|
||||
continue;
|
||||
|
||||
var childFolder =
|
||||
childNode.QueryInterface(Ci.nsINavHistoryFolderResultNode);
|
||||
childFolder.containerOpen = true;
|
||||
|
||||
// If we can't alter it, no use showing it as an option.
|
||||
|
||||
// childFolder.childrenReadOnly currently returns wrong answer for
|
||||
// livemarks (joe@retrovirus.com 2006-02-14)
|
||||
// if (childFolder.childrenReadOnly) {
|
||||
if (this._bms.getFolderReadonly(childFolder.folderId)) {
|
||||
childFolder.containerOpen = false;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (childFolder.hasChildren) {
|
||||
row = document.createElement("hbox");
|
||||
row.setAttribute("class", "l" + depth);
|
||||
var tag = this._createTagElement(childFolder, false);
|
||||
elementDict[childFolder.folderId] = tag;
|
||||
tag.setAttribute("isparent", "true");
|
||||
row.appendChild(tag);
|
||||
parentElement.appendChild(row);
|
||||
row = null;
|
||||
var nextDepth = depth + 1;
|
||||
// We're limiting max indentation level here.
|
||||
if (nextDepth > this.MAX_INDENT_DEPTH)
|
||||
nextDepth = this.MAX_INDENT_DEPTH;
|
||||
this._populateTags(childFolder, nextDepth, parentElement, elementDict);
|
||||
} else {
|
||||
if (row == null) {
|
||||
row = document.createElement("description");
|
||||
row.setAttribute("class", "l" + depth);
|
||||
parentElement.appendChild(row);
|
||||
} else {
|
||||
// we now know that there must"ve been a tag before us on the same row
|
||||
var separator = document.createElement("label");
|
||||
separator.setAttribute("value", eval("\"\\u2022\"")); // bullet
|
||||
separator.setAttribute("class", "tag-separator");
|
||||
row.appendChild(separator);
|
||||
}
|
||||
var tag = this._createTagElement(childFolder, false);
|
||||
elementDict[childFolder.folderId] = tag;
|
||||
row.appendChild(tag);
|
||||
}
|
||||
childFolder.containerOpen = false;
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* This method creates a XUL element to represent a given Bookmark
|
||||
* folder node.
|
||||
*
|
||||
* @param aNode an nsINavHistoryFolderResultNode object
|
||||
* @param aIsSelected boolean, true if the given folder is currently selected
|
||||
*
|
||||
* @return a new XUL element corresponding to aNode
|
||||
*/
|
||||
_createTagElement: function PBS_createTagElement(node, isSelected) {
|
||||
var tag = document.createElement("label");
|
||||
tag.setAttribute("value", node.title);
|
||||
tag.setAttribute("folderid", node.folderId);
|
||||
tag.setAttribute("selected", "" + isSelected);
|
||||
var self = this;
|
||||
function onClick(e) {
|
||||
self.tagClicked(e);
|
||||
}
|
||||
tag.addEventListener("command", onClick, false);
|
||||
// We need the click event handler until we change the element from labels
|
||||
// to something like checkboxes.
|
||||
tag.addEventListener("click", onClick, false);
|
||||
tag.setAttribute("class", "tag");
|
||||
return tag;
|
||||
},
|
||||
|
||||
/**
|
||||
* This method should be called when a tag element generated by
|
||||
* _createTagElement is clicked by the user.
|
||||
*/
|
||||
tagClicked: function PBS_tagClicked(event) {
|
||||
var tagElement = event.target;
|
||||
|
||||
var folderId = parseInt(tagElement.getAttribute("folderid"));
|
||||
|
||||
if (tagElement.getAttribute("selected") == "true") {
|
||||
this._bms.removeItem(folderId, this._currentURI);
|
||||
tagElement.setAttribute("selected", "false");
|
||||
} else {
|
||||
this._bms.insertItem(folderId, this._currentURI, -1);
|
||||
tagElement.setAttribute("selected", "true");
|
||||
}
|
||||
|
||||
this._updateFolderTextbox(tagElement.ownerDocument, this._currentURI);
|
||||
},
|
||||
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* This is a custom implementation of nsITransactionManager. We do not chain
|
||||
* or aggregate the default implementation because the order in which
|
||||
* transactions are performed and undone is important to the user experience.
|
||||
* There are two classes of transactions - those done by the browser window
|
||||
* that contains this transaction manager, and those done by the embedded
|
||||
* Places page. All transactions done in either part of the UI are recorded
|
||||
* here, but ones performed by actions taken in the Places page affect the
|
||||
* Undo/Redo menu items and keybindings in the browser window only when the
|
||||
* Places page is the active tab. This is to prevent the user from accidentally
|
||||
* undoing/redoing their changes while the Places page is not selected, and the
|
||||
* user not noticing.
|
||||
*
|
||||
* When the Places page is navigated away from, the undo items registered for
|
||||
* it are destroyed and the ability to undo those actions ceases.
|
||||
*/
|
||||
var PlacesTransactionManager = {
|
||||
_undoItems: [],
|
||||
_redoItems: [],
|
||||
|
||||
hidePageTransactions: true,
|
||||
|
||||
_getNextVisibleIndex: function PTM__getNextVisibleItem(list) {
|
||||
if (!this.hidePageTransactions)
|
||||
return list.length - 1;
|
||||
|
||||
for (var i = list.length - 1; i >= 0; --i) {
|
||||
if (!list[i].pageTransaction)
|
||||
return i;
|
||||
}
|
||||
return -1;
|
||||
},
|
||||
|
||||
updateCommands: function PTM__updateCommands() {
|
||||
CommandUpdater.updateCommand("cmd_undo");
|
||||
CommandUpdater.updateCommand("cmd_redo");
|
||||
},
|
||||
|
||||
doTransaction: function PTM_doTransaction(transaction) {
|
||||
transaction.doTransaction();
|
||||
this._undoItems.push(transaction);
|
||||
this._redoItems = [];
|
||||
this.updateCommands();
|
||||
},
|
||||
|
||||
undoTransaction: function PTM_undoTransaction() {
|
||||
var index = this._getNextVisibleIndex(this._undoItems);
|
||||
ASSERT(index >= 0, "Invalid Transaction index");
|
||||
var transaction = this._undoItems.splice(index, 1)[0];
|
||||
transaction.undoTransaction();
|
||||
this._redoItems.push(transaction);
|
||||
this.updateCommands();
|
||||
},
|
||||
|
||||
redoTransaction: function PTM_redoTransaction() {
|
||||
var index = this._getNextVisibleIndex(this._redoItems);
|
||||
ASSERT(index >= 0, "Invalid Transaction index");
|
||||
var transaction = this._redoItems.splice(index, 1)[0];
|
||||
transaction.redoTransaction();
|
||||
this._undoItems.push(transaction);
|
||||
this.updateCommands();
|
||||
},
|
||||
|
||||
clear: function PTM_clear() {
|
||||
this._undoItems = [];
|
||||
this._redoItems = [];
|
||||
this.updateCommands();
|
||||
},
|
||||
|
||||
beginBatch: function PTM_beginBatch() {
|
||||
},
|
||||
|
||||
endBatch: function PTM_endBatch() {
|
||||
},
|
||||
|
||||
get numberOfUndoItems() {
|
||||
return this.getUndoList().numItems;
|
||||
},
|
||||
get numberOfRedoItems() {
|
||||
return this.getRedoList().numItems;
|
||||
},
|
||||
|
||||
maxTransactionCount: -1,
|
||||
|
||||
peekUndoStack: function PTM_peekUndoStack() {
|
||||
var index = this._getNextVisibleIndex(this._undoItems);
|
||||
ASSERT(index >= 0, "Invalid Transaction index");
|
||||
return this._undoItems[index];
|
||||
},
|
||||
peekRedoStack: function PTM_peekRedoStack() {
|
||||
var index = this._getNextVisibleIndex(this._redoItems);
|
||||
ASSERT(index >= 0, "Invalid Transaction index");
|
||||
return this._redoItems[index];
|
||||
},
|
||||
|
||||
_filterList: function PTM__filterList(list) {
|
||||
if (!this.hidePageTransactions)
|
||||
return list;
|
||||
|
||||
var transactions = [];
|
||||
for (var i = 0; i < list.length; ++i) {
|
||||
if (!list[i].pageTransaction)
|
||||
transactions.push(list[i]);
|
||||
}
|
||||
return transactions;
|
||||
},
|
||||
|
||||
getUndoList: function PTM_getUndoList() {
|
||||
return new TransactionList(this._filterList(this._undoItems));
|
||||
},
|
||||
getRedoList: function PTM_getRedoList() {
|
||||
return new TransactionList(this._filterList(this._redoItems));
|
||||
},
|
||||
|
||||
_listeners: [],
|
||||
AddListener: function PTM_AddListener(listener) {
|
||||
this._listeners.push(listener);
|
||||
},
|
||||
RemoveListener: function PTM_RemoveListener(listener) {
|
||||
for (var i = 0; i < this._listeners.length; ++i) {
|
||||
if (this._listeners[i] == listener)
|
||||
this._listeners.splice(i, 1);
|
||||
}
|
||||
},
|
||||
|
||||
QueryInterface: function PTM_QueryInterface(iid) {
|
||||
if (iid.equals(Ci.nsITransactionManager) ||
|
||||
iid.equals(Ci.nsISupports))
|
||||
return this;
|
||||
throw Cr.NS_ERROR_NOINTERFACE;
|
||||
}
|
||||
};
|
||||
|
||||
function TransactionList(transactions) {
|
||||
this._transactions = transactions;
|
||||
}
|
||||
TransactionList.prototype = {
|
||||
get numItems() {
|
||||
return this._transactions.length;
|
||||
},
|
||||
|
||||
itemIsBatch: function TL_itemIsBatch(index) {
|
||||
return false;
|
||||
},
|
||||
|
||||
getItem: function TL_getItem(index) {
|
||||
return this._transactions[i];
|
||||
},
|
||||
|
||||
getNumChildrenForItem: function TL_getNumChildrenForItem(index) {
|
||||
return 0;
|
||||
},
|
||||
|
||||
getChildListForItem: function TL_getChildListForItem(index) {
|
||||
return null;
|
||||
},
|
||||
|
||||
QueryInterface: function TL_QueryInterface(iid) {
|
||||
if (iid.equals(Ci.nsITransactionList) ||
|
||||
iid.equals(Ci.nsISupports))
|
||||
return this;
|
||||
throw Cr.NS_ERROR_NOINTERFACE;
|
||||
}
|
||||
};
|
||||
#endif
|
||||
|
||||
|
|
|
@ -110,6 +110,9 @@
|
|||
|
||||
#include browser-context.inc
|
||||
|
||||
#ifdef MOZ_PLACES
|
||||
#include ../../components/places/content/context.inc
|
||||
#endif
|
||||
</popupset>
|
||||
|
||||
# The hacky hidden tree used by the Go menu to build items.
|
||||
|
@ -266,7 +269,20 @@
|
|||
tooltiptext="&throbber.tooltip;"/>
|
||||
</toolbaritem>
|
||||
|
||||
#ifndef MOZ_PLACES
|
||||
#ifdef MOZ_PLACES
|
||||
<toolbarbutton id="bookmarksBarShowPlaces"
|
||||
oncommand="PlacesBrowserShim.showHistory()"/>
|
||||
<toolbaritem flex="1" id="bookmarksBarContainer">
|
||||
<hbox id="bookmarksBarContent" flex="1" context="placesContext"/>
|
||||
</toolbaritem>
|
||||
<toolbarbutton id="places-bookmark"
|
||||
label="&location.status.not_bookmarked;"
|
||||
tooltiptext="&location.status.bookmark.tooltip;"
|
||||
oncommand="PlacesBrowserShim.onBookmarkButtonClick();"/>
|
||||
<toolbarbutton id="places-subscribe"
|
||||
label="&feed.subscribe.label;"
|
||||
tooltiptext="&feed.subscribe.tooltip;"/>
|
||||
#else
|
||||
<toolbaritem id="personal-bookmarks" title="&bookmarksItem.title;" flex="1"
|
||||
class="chromeclass-directories">
|
||||
<stack id="bookmarks-stack" flex="1" style="min-width:0px; width:0px; overflow: hidden;"
|
||||
|
@ -402,7 +418,12 @@
|
|||
|
||||
<toolbarset id="customToolbars" context="toolbar-context-menu"/>
|
||||
|
||||
#ifndef MOZ_PLACES
|
||||
#ifdef MOZ_PLACES
|
||||
<toolbar id="bookmarksToolbar"
|
||||
defaultset="bookmarksBarShowPlaces,bookmarksBarContainer"
|
||||
toolbarname="&places.toolbar.label;"
|
||||
customizable="true"/>
|
||||
#else
|
||||
<toolbar id="PersonalToolbar" class="chromeclass-directories" iconsize="small"
|
||||
customizable="true" defaultset="personal-bookmarks" mode="icons"
|
||||
toolbarname="&personalbarCmd.label;" accesskey="&personalbarCmd.accesskey;"
|
||||
|
|
|
@ -42,7 +42,9 @@
|
|||
<script type="application/x-javascript" src="chrome://global/content/findBar.js"/>
|
||||
<script type="application/x-javascript" src="chrome://global/content/printUtils.js"/>
|
||||
<script type="application/x-javascript" src="chrome://browser/content/utilityOverlay.js"/>
|
||||
#ifndef MOZ_PLACES
|
||||
#ifdef MOZ_PLACES
|
||||
<script type="application/x-javascript" src="chrome://browser/content/places/controller.js"/>
|
||||
#else
|
||||
<script type="application/x-javascript" src="chrome://browser/content/bookmarks/bookmarks.js"/>
|
||||
<script type="application/x-javascript" src="chrome://browser/content/bookmarks/bookmarksMenu.js"/>
|
||||
#endif
|
||||
|
|
|
@ -56,10 +56,8 @@ EXTRA_PP_COMPONENTS = \
|
|||
$(NULL)
|
||||
|
||||
DIRS = \
|
||||
bookmarks \
|
||||
dirprovider \
|
||||
migration \
|
||||
history \
|
||||
preferences \
|
||||
shell \
|
||||
sidebar \
|
||||
|
@ -67,6 +65,8 @@ DIRS = \
|
|||
|
||||
ifdef MOZ_PLACES
|
||||
DIRS += places
|
||||
else
|
||||
DIRS += history bookmarks
|
||||
endif
|
||||
|
||||
DIRS += build
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
browser.jar:
|
||||
% overlay chrome://browser/content/browser.xul chrome://browser/content/places/browserShim.xul
|
||||
* content/browser/places/places.xul (content/places.xul)
|
||||
content/browser/places/places.js (content/places.js)
|
||||
content/browser/places/places.xml (content/places.xml)
|
||||
|
@ -9,23 +8,3 @@ browser.jar:
|
|||
* content/browser/places/menu.xml (content/menu.xml)
|
||||
content/browser/places/tree.xml (content/tree.xml)
|
||||
* content/browser/places/controller.js (content/controller.js)
|
||||
content/browser/places/browserShim.js (content-shim/browserShim.js)
|
||||
* content/browser/places/browserShim.xul (content-shim/browserShim.xul)
|
||||
content/browser/places/browserShim.css (content-shim/browserShim.css)
|
||||
|
||||
classic.jar:
|
||||
skin/classic/browser/places/places.css (skin-win/places.css)
|
||||
skin/classic/browser/places/default_favicon.png (skin-win/default_favicon.png)
|
||||
skin/classic/browser/places/query.png (skin-win/query.png)
|
||||
skin/classic/browser/places/bookmarks_menu.png (skin-win/bookmarks_menu.png)
|
||||
skin/classic/browser/places/bookmarks_toolbar.png (skin-win/bookmarks_toolbar.png)
|
||||
skin/classic/browser/places/livemark_item.png (skin-win/livemark_item.png)
|
||||
skin/classic/browser/places/places-icon.png (skin-win/places-icon.png)
|
||||
skin/classic/browser/places/toolbar_dropmarker.png (skin-win/toolbar_dropmarker.png)
|
||||
skin/classic/browser/places/folder_drag_over.png (skin-win/folder_drag_over.png)
|
||||
skin/classic/browser/places/bookmarkProperties.css (skin-win/bookmarkProperties.css)
|
||||
|
||||
en-US.jar:
|
||||
locale/browser/places/places.dtd (locale/places.dtd)
|
||||
locale/browser/places/places.properties (locale/places.properties)
|
||||
locale/browser/places/default_places.html (locale/default_places.html)
|
||||
|
|
|
@ -115,8 +115,8 @@ static NS_DEFINE_CID(kParserCID, NS_PARSER_CID);
|
|||
#define KEY_ICON_LOWER "icon"
|
||||
#define KEY_SHORTCUTURL_LOWER "shortcuturl"
|
||||
|
||||
#define BOOKMARKS_MENU_ICON_URI "chrome://browser/skin/places/bookmarks_menu.png"
|
||||
#define BOOKMARKS_TOOLBAR_ICON_URI "chrome://browser/skin/places/bookmarks_toolbar.png"
|
||||
#define BOOKMARKS_MENU_ICON_URI "chrome://browser/skin/places/bookmarksMenu.png"
|
||||
#define BOOKMARKS_TOOLBAR_ICON_URI "chrome://browser/skin/places/bookmarksToolbar.png"
|
||||
|
||||
static const char kWhitespace[] = " \r\n\t\b";
|
||||
|
||||
|
|
|
@ -112,5 +112,5 @@ private:
|
|||
PRBool* aHasData, PRTime* aExpiration);
|
||||
};
|
||||
|
||||
#define FAVICON_DEFAULT_URL "chrome://browser/skin/places/default_favicon.png"
|
||||
#define FAVICON_DEFAULT_URL "chrome://browser/skin/places/defaultFavicon.png"
|
||||
#define FAVICON_ANNOTATION_NAME "favicon"
|
||||
|
|
|
@ -0,0 +1,228 @@
|
|||
<!ENTITY places.title
|
||||
"Places">
|
||||
<!ENTITY places.toolbar.label
|
||||
"Places Toolbar">
|
||||
<!ENTITY cmd.find.label
|
||||
"Find in Bookmarks/History...">
|
||||
<!ENTITY cmd.find.accesskey
|
||||
"F">
|
||||
<!ENTITY cmd.export.label
|
||||
"Export...">
|
||||
<!ENTITY cmd.export.accesskey
|
||||
"x">
|
||||
<!ENTITY cmd.select_all.label
|
||||
"Select All">
|
||||
<!ENTITY cmd.select_all.accesskey
|
||||
"A">
|
||||
<!ENTITY cmd.select_all.key
|
||||
"a">
|
||||
<!ENTITY cmd.edit_cut.label
|
||||
"Cut">
|
||||
<!ENTITY cmd.edit_cut.accesskey
|
||||
"t">
|
||||
<!ENTITY cmd.edit_cut.key
|
||||
"x">
|
||||
<!ENTITY cmd.edit_copy.label
|
||||
"Copy">
|
||||
<!ENTITY cmd.edit_copy.accesskey
|
||||
"C">
|
||||
<!ENTITY cmd.edit_copy.key
|
||||
"c">
|
||||
<!ENTITY cmd.edit_paste.label
|
||||
"Paste">
|
||||
<!ENTITY cmd.edit_paste.accesskey
|
||||
"P">
|
||||
<!ENTITY cmd.edit_paste.key
|
||||
"v">
|
||||
<!ENTITY cmd.edit_delete.label
|
||||
"Delete">
|
||||
<!ENTITY cmd.edit_delete.accesskey
|
||||
"D">
|
||||
<!ENTITY cmd.open.label
|
||||
"Open">
|
||||
<!ENTITY cmd.open.accesskey
|
||||
"O">
|
||||
<!ENTITY cmd.open_window.label
|
||||
"Open in a New Window">
|
||||
<!ENTITY cmd.open_window.accesskey
|
||||
"W">
|
||||
<!ENTITY cmd.open_tab.label
|
||||
"Open in a New Tab">
|
||||
<!ENTITY cmd.open_tab.accesskey
|
||||
"T">
|
||||
<!ENTITY cmd.open_tabs.label
|
||||
"Open in Tabs">
|
||||
<!ENTITY cmd.open_tabs.accesskey
|
||||
"s">
|
||||
<!ENTITY cmd.show_infoWin.label
|
||||
"Properties">
|
||||
<!ENTITY cmd.show_infoWin.accesskey
|
||||
"i">
|
||||
<!ENTITY cmd.show_infoMac.label
|
||||
"Get Info">
|
||||
<!ENTITY cmd.show_infoMac.accesskey
|
||||
"I">
|
||||
<!ENTITY cmd.show_info.key
|
||||
"i">
|
||||
<!ENTITY cmd.rename.label
|
||||
"Rename">
|
||||
<!ENTITY cmd.rename.accesskey
|
||||
"R">
|
||||
<!ENTITY cmd.sortby_name.label
|
||||
"Sort By Name">
|
||||
<!ENTITY cmd.sortby_name.accesskey
|
||||
"S">
|
||||
<!ENTITY cmd.new_folder.label
|
||||
"New Folder...">
|
||||
<!ENTITY cmd.new_folder.accesskey
|
||||
"F">
|
||||
<!ENTITY cmd.new_separator.label
|
||||
"New Separator">
|
||||
<!ENTITY cmd.new_separator.accesskey
|
||||
"S">
|
||||
<!ENTITY cmd.reload.label
|
||||
"Reload">
|
||||
<!ENTITY cmd.reload.accesskey
|
||||
"l">
|
||||
<!ENTITY cmd.reload.key
|
||||
"r">
|
||||
<!ENTITY cmd.groupby_site.label
|
||||
"Group by Site">
|
||||
<!ENTITY cmd.groupby_site.accesskey
|
||||
"S">
|
||||
<!ENTITY cmd.groupby_page.label
|
||||
"Group by Page">
|
||||
<!ENTITY cmd.groupby_page.accesskey
|
||||
"P">
|
||||
<!ENTITY cmd.groupby_feed.label
|
||||
"Group by Subscription">
|
||||
<!ENTITY cmd.groupby_feed.accesskey
|
||||
"S">
|
||||
<!ENTITY cmd.groupby_post.label
|
||||
"Group by Post">
|
||||
<!ENTITY cmd.groupby_post.accesskey
|
||||
"P">
|
||||
<!ENTITY col.title.label
|
||||
"Title">
|
||||
<!ENTITY col.url.label
|
||||
"Location">
|
||||
<!ENTITY col.lastvisit.label
|
||||
"Last Visit Date">
|
||||
<!ENTITY col.visitcount.label
|
||||
"Visit Count">
|
||||
<!ENTITY search.label
|
||||
"Search:">
|
||||
<!ENTITY search.accesskey
|
||||
"S">
|
||||
<!ENTITY search.collection.label
|
||||
"Current Collection Only">
|
||||
<!ENTITY search.collection.accesskey
|
||||
"C">
|
||||
<!ENTITY search.all.label
|
||||
"All Bookmarks and History">
|
||||
<!ENTITY search.all.accesskey
|
||||
"A">
|
||||
<!ENTITY saveSearch.label
|
||||
"Save">
|
||||
<!ENTITY saveSearch.accesskey
|
||||
"S">
|
||||
<!ENTITY moreCriteria.label
|
||||
"+">
|
||||
<!ENTITY advancedSearch.onlybookmarked.label
|
||||
"Search Bookmarks only">
|
||||
<!ENTITY advancedSearch.match.label
|
||||
"Match ">
|
||||
<!ENTITY advancedSearch.all.label
|
||||
"all">
|
||||
<!ENTITY advancedSearch.any.label
|
||||
"any">
|
||||
<!ENTITY advancedSearch.rules.label
|
||||
" of the following rules:">
|
||||
<!ENTITY advancedSearch.subj_keyword.label
|
||||
"Keywords">
|
||||
<!ENTITY advancedSearch.subj_visited.label
|
||||
"Visited">
|
||||
<!ENTITY advancedSearch.subj_host.label
|
||||
"Host">
|
||||
<!ENTITY advancedSearch.subj_uri.label
|
||||
"URI">
|
||||
<!ENTITY advancedSearch.host_is.label
|
||||
"is">
|
||||
<!ENTITY advancedSearch.host_endswith.label
|
||||
"ends with">
|
||||
<!ENTITY advancedSearch.include.label
|
||||
"include">
|
||||
<!ENTITY advancedSearch.uri_is.label
|
||||
"is">
|
||||
<!ENTITY advancedSearch.uri_startswith.label
|
||||
"starts with">
|
||||
<!ENTITY advancedSearch.time_is.label
|
||||
"on">
|
||||
<!ENTITY advancedSearch.time_before.label
|
||||
"before">
|
||||
<!ENTITY advancedSearch.time_after.label
|
||||
"after">
|
||||
<!ENTITY advancedSearch.time_inlast.label
|
||||
"in the last">
|
||||
<!ENTITY advancedSearch.last_days.label
|
||||
"days">
|
||||
<!ENTITY advancedSearch.last_weeks.label
|
||||
"weeks">
|
||||
<!ENTITY advancedSearch.last_months.label
|
||||
"months">
|
||||
<!ENTITY advancedSearch.plus.label
|
||||
"+">
|
||||
<!ENTITY advancedSearch.minus.label
|
||||
"-">
|
||||
<!ENTITY advancedSearch.groupby.label
|
||||
"Group by: ">
|
||||
<!ENTITY advancedSearch.groupby_host.label
|
||||
"host">
|
||||
<!ENTITY advancedSearch.groupby_domain.label
|
||||
"domain">
|
||||
<!ENTITY advancedSearch.groupby_folder.label
|
||||
"folder">
|
||||
<!ENTITY advancedSearch.sortby.label
|
||||
"Sort by: ">
|
||||
<!ENTITY advancedSearch.sortby_title.label
|
||||
"title">
|
||||
<!ENTITY advancedSearch.sortby_date.label
|
||||
"date">
|
||||
<!ENTITY advancedSearch.sortby_visit.label
|
||||
"visit count">
|
||||
<!ENTITY advancedSearch.sortby_url.label
|
||||
"url">
|
||||
<!ENTITY advancedSearch.sortby_asc.label
|
||||
"ascending">
|
||||
<!ENTITY advancedSearch.sortby_desc.label
|
||||
"descending">
|
||||
<!ENTITY advancedSearch.max.label
|
||||
"Maximum results: ">
|
||||
<!ENTITY cmd.find.key
|
||||
"f">
|
||||
<!ENTITY feed.subscribe.label
|
||||
"Feed">
|
||||
<!ENTITY feed.subscribe.tooltip
|
||||
"Subscribe">
|
||||
<!ENTITY location.status.not_bookmarked
|
||||
"Star (Off)">
|
||||
<!ENTITY location.status.bookmarked
|
||||
"Star (On)">
|
||||
<!ENTITY location.status.bookmark.tooltip
|
||||
"Add a Bookmark to this page">
|
||||
<!ENTITY bookmark.property.panel.title
|
||||
"Bookmark Properties">
|
||||
<!ENTITY bookmark.property.title
|
||||
"Title">
|
||||
<!ENTITY bookmark.property.folders
|
||||
"Folders">
|
||||
<!ENTITY bookmark.property.folder_list
|
||||
"Folder List">
|
||||
<!ENTITY bookmark.property.location
|
||||
"Bookmark Location">
|
||||
<!ENTITY cmd.show_bookmarks.label
|
||||
"See all bookmarks...">
|
||||
<!ENTITY cmd.delete_bookmark.label
|
||||
"Delete Bookmark">
|
||||
<!ENTITY cmd.hide_bookmark_properties.label
|
||||
"Done">
|
|
@ -0,0 +1,40 @@
|
|||
deleteHost=Delete all from %S
|
||||
deleteDomain=Delete entire domain %S
|
||||
deleteHostNoSelection=Delete host
|
||||
deleteDomainNoSelection=Delete domain
|
||||
|
||||
finduri-AgeInDays-is-0=Today
|
||||
finduri-AgeInDays-is-1=Yesterday
|
||||
finduri-AgeInDays-is=%S days ago
|
||||
finduri-AgeInDays-isgreater=Older than %S days
|
||||
|
||||
finduri-Hostname-is-=(no host)
|
||||
|
||||
load-js-data-url-error=For security reasons, javascript or data urls cannot be loaded from the history window or sidebar.
|
||||
noTitle=(no title)
|
||||
localhost=(local files)
|
||||
|
||||
newFolderTitle=New Folder
|
||||
newFolderMessage=Enter a name for the new folder:
|
||||
newFolderDefault=New Folder
|
||||
|
||||
bookmarksMenuName=Bookmarks Menu
|
||||
bookmarksToolbarName=Bookmarks Toolbar
|
||||
bookmarksMenuEmptyFolder=(Empty)
|
||||
bookmarksLivemarkLoading=Live Bookmark loading...
|
||||
bookmarksLivemarkFailed=Live Bookmark feed failed to load.
|
||||
|
||||
findPlaceLabel=Find in Places...
|
||||
findPageLabel=Find in This Page...
|
||||
|
||||
headerTextShowing=Showing
|
||||
headerTextResultsFor=Search Results for
|
||||
headerTextAdvancedSearch=Advanced Search
|
||||
|
||||
searchDefault=Search
|
||||
|
||||
lessCriteria.label=-
|
||||
moreCriteria.label=+
|
||||
|
||||
locationStatusNotBookmarked=Star (Off)
|
||||
locationStatusBookmarked=Star (On)
|
|
@ -1,42 +1,35 @@
|
|||
<!DOCTYPE NETSCAPE-Bookmark-file-1>
|
||||
<!DOCTYPE NETSCAPE-Bookmark-file-1>
|
||||
<!-- This is an automatically generated file.
|
||||
It will be read and overwritten.
|
||||
DO NOT EDIT! -->
|
||||
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
|
||||
<TITLE>Bookmarks</TITLE>
|
||||
<H1>Bookmarks</H1>
|
||||
|
||||
<TITLE>Bookmarks and History</TITLE>
|
||||
<H1 PLACES_ROOT="true">Bookmarks and History</H1>
|
||||
<DL><p>
|
||||
<DT><H3 PERSONAL_TOOLBAR_FOLDER="true" ID="rdf:#$FvPhC3">Bookmarks Toolbar Folder</H3>
|
||||
<DD>Add bookmarks to this folder to see them displayed on the Bookmarks Toolbar
|
||||
<DT><A HREF="place:beginTime=0&beginTimeRef=1&endTime=0&endTimeRef=2&sort=4&type=1">History</A>
|
||||
<DD>Shows all browsing history
|
||||
<DT><H3 BOOKMARKS_MENU="true">Bookmarks Menu</H3>
|
||||
<DL><p>
|
||||
<DT><A HREF="http://www.mozilla.org/products/firefox/central.html" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="ISO-8859-1" ID="rdf:#$GvPhC3">Getting Started</A>
|
||||
<DT><A HREF="http://fxfeeds.mozilla.org/" LAST_MODIFIED="1094668003" FEEDURL="http://fxfeeds.mozilla.org/rss20.xml" ID="rdf:#$HvPhC3">Latest Headlines</A>
|
||||
<DT><A HREF="http://www.mozilla.com/products/firefox/central.html" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="ISO-8859-1" ID="rdf:#$GvPhC3">Getting Started</A>
|
||||
<DT><A HREF="http://fxfeeds.mozilla.com/" LAST_MODIFIED="1094668003" FEEDURL="http://fxfeeds.mozilla.com/rss20.xml" ID="rdf:#$HvPhC3">Latest Headlines</A>
|
||||
</DL><p>
|
||||
<HR>
|
||||
<DT><H3 ID="rdf:#$6wPhC3">Quick Searches</H3>
|
||||
<DD>Handy searches that can be performed in the addressbar
|
||||
<DT><H3 PERSONAL_TOOLBAR_FOLDER="true">Bookmarks Toolbar</H3>
|
||||
<DD>Add bookmarks to this folder to see them displayed on the Bookmarks Toolbar
|
||||
<DL><p>
|
||||
<DT><A HREF="http://www.google.com/search?q=%s" SHORTCUTURL="google" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//AAD///8A//3/AP39/wD6/f8A+P3/AP/8/wD9/P8A+vz/AP/7/wD/+v8A/vr/APz6/wD4+v8A+/n/APP5/wD/+P8A+vj/AO/4/wDm+P8A2fj/AP/3/wD/9v8A9vb/AP/1/wD69f8A9PT/AO30/wD/8/8A//L/APnx/wD28P8A///+APj//gD2//4A9P/+AOP//gD//f4A6f/9AP///AD2//wA8//8APf9/AD///sA/v/7AOD/+wD/+vsA9/X7APr/+gDv/voA///5AP/9+QD/+/kA+e35AP//+ADm//gA4f/4AP/9+AD0+/gA///3APv/9wDz//cA8f/3AO3/9wD/8fcA//32AP369gDr+vYA8f/1AOv/9QD/+/UA///0APP/9ADq//QA///zAP/18wD///IA/fzyAP//8QD///AA9//wAPjw8AD//+8A8//vAP//7gD9/+4A9v/uAP/u7gD//+0A9v/tAP7/6wD/+eoA///pAP//6AD2/+gA//nnAP/45wD38eYA/fblAP/25AD29uQA7N/hAPzm4AD/690AEhjdAAAa3AAaJdsA//LXAC8g1gANH9YA+dnTAP/n0gDh5dIADyjSABkk0gAdH9EABxDRAP/l0AAAJs4AGRTOAPPczQAAKs0AIi7MAA4UywD56soA8tPKANTSygD/18kA6NLHAAAjxwDj28QA/s7CAP/1wQDw3r8A/9e8APrSrwDCtqoAzamjANmPiQDQj4YA35mBAOmefgDHj3wA1qR6AO+sbwDpmm8A2IVlAKmEYgCvaFoAvHNXAEq2VgA5s1UAPbhQAFWtTwBStU0ARbNNAEGxTQA7tEwAObZIAEq5RwDKdEYAULhDANtuQgBEtTwA1ls3ALhgMQCxNzEA2FsvAEC3LQB0MCkAiyYoANZTJwDLWyYAtjMlALE6JACZNSMAuW4iANlgIgDoWCEAylwgAMUuIAD3Vh8A52gdALRCHQCxWhwAsEkcALU4HACMOBwA0V4bAMYyGgCPJRoA218ZAJM7FwC/PxYA0msVAM9jFQD2XBUAqioVAIAfFQDhYRQAujMTAMUxEwCgLBMAnxIPAMsqDgCkFgsA6GMHALE2BAC9JQAAliIAAFYTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AsbGxsbGxsbGxsbGxsbGxd7IrMg8PDw8PDw8PUBQeJXjQYE9PcKPM2NfP2sWhcg+BzTE7dLjbmG03YWaV4JYye8MPbsLZlEouKRRCg9SXMoW/U53enGRAFzCRtNO7mTiAyliw30gRTg9VbJCKfYs0j9VmuscfLTFbIy8SOhA0Inq5Y77GNBMYIxQUJzM2Vxx2wEmfyCYWMRldXCg5MU0aicRUms58SUVeRkwjPBRSNIfBMkSgvWkyPxVHFIaMSx1/0S9nkq7WdWo1a43Jt2UqgtJERGJ5m6K8y92znpNWIYS1UQ89Mmg5cXNaX0EkGyyI3KSsp6mvpaqosaatq7axsQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" LAST_CHARSET="UTF-8" ID="rdf:#$7wPhC3">Google Quicksearch</A>
|
||||
<DD>Type "google <search terms>" in the location bar to perform a Google search
|
||||
<DT><A HREF="http://www.answers.com/main/ntquery?gwp=13&s=%s" SHORTCUTURL="dict" ID="rdf:#$8wPhC3">Answers.com Dictionary Quicksearch</A>
|
||||
<DD>Type "dict <word>" in the location bar to perform a dictionary look-up
|
||||
<DT><A HREF="http://www.google.com/search?q=stocks:%s" SHORTCUTURL="quote" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//AAD///8A//3/AP39/wD6/f8A+P3/AP/8/wD9/P8A+vz/AP/7/wD/+v8A/vr/APz6/wD4+v8A+/n/APP5/wD/+P8A+vj/AO/4/wDm+P8A2fj/AP/3/wD/9v8A9vb/AP/1/wD69f8A9PT/AO30/wD/8/8A//L/APnx/wD28P8A///+APj//gD2//4A9P/+AOP//gD//f4A6f/9AP///AD2//wA8//8APf9/AD///sA/v/7AOD/+wD/+vsA9/X7APr/+gDv/voA///5AP/9+QD/+/kA+e35AP//+ADm//gA4f/4AP/9+AD0+/gA///3APv/9wDz//cA8f/3AO3/9wD/8fcA//32AP369gDr+vYA8f/1AOv/9QD/+/UA///0APP/9ADq//QA///zAP/18wD///IA/fzyAP//8QD///AA9//wAPjw8AD//+8A8//vAP//7gD9/+4A9v/uAP/u7gD//+0A9v/tAP7/6wD/+eoA///pAP//6AD2/+gA//nnAP/45wD38eYA/fblAP/25AD29uQA7N/hAPzm4AD/690AEhjdAAAa3AAaJdsA//LXAC8g1gANH9YA+dnTAP/n0gDh5dIADyjSABkk0gAdH9EABxDRAP/l0AAAJs4AGRTOAPPczQAAKs0AIi7MAA4UywD56soA8tPKANTSygD/18kA6NLHAAAjxwDj28QA/s7CAP/1wQDw3r8A/9e8APrSrwDCtqoAzamjANmPiQDQj4YA35mBAOmefgDHj3wA1qR6AO+sbwDpmm8A2IVlAKmEYgCvaFoAvHNXAEq2VgA5s1UAPbhQAFWtTwBStU0ARbNNAEGxTQA7tEwAObZIAEq5RwDKdEYAULhDANtuQgBEtTwA1ls3ALhgMQCxNzEA2FsvAEC3LQB0MCkAiyYoANZTJwDLWyYAtjMlALE6JACZNSMAuW4iANlgIgDoWCEAylwgAMUuIAD3Vh8A52gdALRCHQCxWhwAsEkcALU4HACMOBwA0V4bAMYyGgCPJRoA218ZAJM7FwC/PxYA0msVAM9jFQD2XBUAqioVAIAfFQDhYRQAujMTAMUxEwCgLBMAnxIPAMsqDgCkFgsA6GMHALE2BAC9JQAAliIAAFYTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AsbGxsbGxsbGxsbGxsbGxd7IrMg8PDw8PDw8PUBQeJXjQYE9PcKPM2NfP2sWhcg+BzTE7dLjbmG03YWaV4JYye8MPbsLZlEouKRRCg9SXMoW/U53enGRAFzCRtNO7mTiAyliw30gRTg9VbJCKfYs0j9VmuscfLTFbIy8SOhA0Inq5Y77GNBMYIxQUJzM2Vxx2wEmfyCYWMRldXCg5MU0aicRUms58SUVeRkwjPBRSNIfBMkSgvWkyPxVHFIaMSx1/0S9nkq7WdWo1a43Jt2UqgtJERGJ5m6K8y92znpNWIYS1UQ89Mmg5cXNaX0EkGyyI3KSsp6mvpaqosaatq7axsQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" LAST_CHARSET="UTF-8" ID="rdf:#$9wPhC3">Stock Symbol Quicksearch</A>
|
||||
<DD>Type "quote <symbol>" in the location bar to perform a stock symbol look-up
|
||||
<DT><A HREF="http://en.wikipedia.org/wiki/Special:Search?search=%s" SHORTCUTURL="wp" ID="rdf:#$awPhC3">Wikipedia Quicksearch</A>
|
||||
<DD>Type "wp <something>" in the location bar to look up something in Wikipedia, a free online encyclopedia.
|
||||
<DT><A HREF="http://www.urbandictionary.com/define.php?term=%s" SHORTCUTURL="slang" ID="rdf:#$bwPhC3">Urban Dictionary</A>
|
||||
<DD>Type "slang <word>" in the location bar to look up something in the people's slang dictionary
|
||||
</DL><p>
|
||||
<DT><H3 ID="rdf:#$ZvPhC3">Firefox and Mozilla Links</H3>
|
||||
<DT><A HREF="place:annotation=livemark/feedURI">Subscriptions</A>
|
||||
<DD>Shows all Subscribed Feeds
|
||||
<DL><p>
|
||||
<DT><A HREF="http://start.mozilla.org/firefox" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="ISO-8859-1" ID="rdf:#$.vPhC3">Firefox Start Page</A>
|
||||
</DL><p>
|
||||
<DT><H3>Firefox and Mozilla Links</H3>
|
||||
<DL><p>
|
||||
<DT><A HREF="http://start.mozilla.org/firefox" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="ISO-8859-1">Firefox Start Page</A>
|
||||
<DT><A HREF="http://www.mozilla.org/products/firefox/central.html" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="ISO-8859-1">Firefox Central</A>
|
||||
<DT><A HREF="http://addons.mozilla.org/?application=firefox" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="UTF-8" ID="rdf:#$0wPhC3">Themes and Extensions</A>
|
||||
<DT><A HREF="http://getfirefox.com/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="ISO-8859-1" ID="rdf:#$+vPhC3">Firefox Product Page</A>
|
||||
<DT><A HREF="http://www.mozilla.org/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="ISO-8859-1" ID="rdf:#$1wPhC3">The Mozilla web site</A>
|
||||
<DT><A HREF="http://www.mozillazine.org/" ICON="data:image/x-icon;base64,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" LAST_CHARSET="ISO-8859-1" ID="rdf:#$2wPhC3">MozillaZine</A>
|
||||
<DT><A HREF="http://store.mozilla.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A1NTU/9TU1P/U1NT/1NTU/9TU1P/U1NT/1NTU/9TU1P/U1NT/////AP///wD///8A////AP///wD///8Ag4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/1NTU/9TU1P////8A////AP///wD///8Ag4OD/83Nzf/09PT/8/Pz//Pz8//w8PD/7e3t/+np6f/n5+f/wcHB/4ODg//U1NT/////AP///wD///8A////AIODg//19fX/9fX1//T09P/09PT/8vLy/+7u7v/q6ur/6Ojo/+Tk5P+Dg4P/1NTU/////wD///8A////AP///wCDg4P/9vb2//b29v/19fX/9fX1//T09P/w8PD/7Ozs/+np6f/l5eX/g4OD/9TU1P////8A////AP///wD///8Ag4OD//f39//39/f/9vb2//b29v/19fX/8vLy/+3t7f/p6en/5ubm/4ODg//U1NT/////AP///wD///8A////AIODg//4+Pj/+Pj4/2t2x//39/f/T1y+//Pz8/92f8n/3d7m/+fn5/+Dg4P/1NTU/////wD///8A////ANTU1P+Dg4P/+vr6//r6+v8YKav/srjh/xgpq/+wtd7/GCmr/+3t7f/o6Oj/g4OD/9TU1P/U1NT/1NTU/4ODg/+Dg4P/g4OD//v7+//6+vr/QlC6/2x3yP+JkdL/a3XH/0JQuv/u7u7/6urq/4ODg/+Dg4P/g4OD/9TU1P+Dg4P//Pz8/6urq//8/Pz/+/v7/1Bdv/80Q7X/7e72/zRDtf9QXb//7+/v/+vr6/+kpKT/5+fn/4ODg//U1NT/g4OD//z8/P/S0tL//Pz8//z8/P9QXb//X2rE//z8/P9fasT/UF2///Hx8f/t7e3/xcXF/+jo6P+Dg4P/1NTU/4ODg//9/f3//f39//39/f/9/f3//f39//39/f/9/f3/+vr6//f39//z8/P/7u7u/+vr6//p6en/g4OD/9TU1P+Dg4P//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//z8/P/4+Pj/9PT0//Dw8P/t7e3/6+vr/4ODg/////8A////AIODg/////////////////+Dg4P/g4OD/4ODg/+Dg4P/g4OD//b29v/y8vL/7+/v/4ODg/////8A////AP///wD///8Ag4OD/4ODg/+Dg4P/////AP///wD///8A////AP///wCDg4P/g4OD/4ODg/////8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A8AcAAOADAADAAwAAwAMAAMADAADAAwAAwAMAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAIADAADHxwAA//8AAA==" LAST_CHARSET="ISO-8859-1" ID="rdf:#$3wPhC3">Mozilla Store</A>
|
||||
<DT><A HREF="http://www.spreadfirefox.com/" LAST_CHARSET="UTF-8" ID="rdf:#$4wPhC3">Get Involved - Help spread Firefox!</A>
|
||||
<DT><A HREF="http://addons.mozilla.org/?application=firefox" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="UTF-8">Themes and Extensions</A>
|
||||
<DT><A HREF="http://getfirefox.com/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="ISO-8859-1">Firefox Product Page</A>
|
||||
<DT><A HREF="http://www.mozilla.org/" LAST_VISIT="1133213523" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" LAST_CHARSET="UTF-8">The Mozilla web site</A>
|
||||
<DT><A HREF="http://www.mozillazine.org/" ICON="data:image/x-icon;base64,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" LAST_CHARSET="ISO-8859-1">MozillaZine</A>
|
||||
<DT><A HREF="http://store.mozilla.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A1NTU/9TU1P/U1NT/1NTU/9TU1P/U1NT/1NTU/9TU1P/U1NT/////AP///wD///8A////AP///wD///8Ag4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/g4OD/4ODg/+Dg4P/1NTU/9TU1P////8A////AP///wD///8Ag4OD/83Nzf/09PT/8/Pz//Pz8//w8PD/7e3t/+np6f/n5+f/wcHB/4ODg//U1NT/////AP///wD///8A////AIODg//19fX/9fX1//T09P/09PT/8vLy/+7u7v/q6ur/6Ojo/+Tk5P+Dg4P/1NTU/////wD///8A////AP///wCDg4P/9vb2//b29v/19fX/9fX1//T09P/w8PD/7Ozs/+np6f/l5eX/g4OD/9TU1P////8A////AP///wD///8Ag4OD//f39//39/f/9vb2//b29v/19fX/8vLy/+3t7f/p6en/5ubm/4ODg//U1NT/////AP///wD///8A////AIODg//4+Pj/+Pj4/2t2x//39/f/T1y+//Pz8/92f8n/3d7m/+fn5/+Dg4P/1NTU/////wD///8A////ANTU1P+Dg4P/+vr6//r6+v8YKav/srjh/xgpq/+wtd7/GCmr/+3t7f/o6Oj/g4OD/9TU1P/U1NT/1NTU/4ODg/+Dg4P/g4OD//v7+//6+vr/QlC6/2x3yP+JkdL/a3XH/0JQuv/u7u7/6urq/4ODg/+Dg4P/g4OD/9TU1P+Dg4P//Pz8/6urq//8/Pz/+/v7/1Bdv/80Q7X/7e72/zRDtf9QXb//7+/v/+vr6/+kpKT/5+fn/4ODg//U1NT/g4OD//z8/P/S0tL//Pz8//z8/P9QXb//X2rE//z8/P9fasT/UF2///Hx8f/t7e3/xcXF/+jo6P+Dg4P/1NTU/4ODg//9/f3//f39//39/f/9/f3//f39//39/f/9/f3/+vr6//f39//z8/P/7u7u/+vr6//p6en/g4OD/9TU1P+Dg4P//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//z8/P/4+Pj/9PT0//Dw8P/t7e3/6+vr/4ODg/////8A////AIODg/////////////////+Dg4P/g4OD/4ODg/+Dg4P/g4OD//b29v/y8vL/7+/v/4ODg/////8A////AP///wD///8Ag4OD/4ODg/+Dg4P/////AP///wD///8A////AP///wCDg4P/g4OD/4ODg/////8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A8AcAAOADAADAAwAAwAMAAMADAADAAwAAwAMAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAIADAADHxwAA//8AAA==" LAST_CHARSET="ISO-8859-1">Mozilla Store</A>
|
||||
<DT><A HREF="http://www.spreadfirefox.com/" LAST_CHARSET="UTF-8">Get Involved - Help spread Firefox!</A>
|
||||
</DL><p>
|
||||
</DL><p>
|
||||
|
|
|
@ -22,10 +22,15 @@
|
|||
* locale/browser/searchDialog.dtd (%chrome/browser/searchDialog.dtd)
|
||||
locale/browser/setDesktopBackground.dtd (%chrome/browser/setDesktopBackground.dtd)
|
||||
locale/browser/shellservice.properties (%chrome/browser/shellservice.properties)
|
||||
#ifdef MOZ_PLACES
|
||||
locale/browser/places/places.dtd (%chrome/browser/places/places.dtd)
|
||||
locale/browser/places/places.properties (%chrome/browser/places/places.properties)
|
||||
#else
|
||||
* locale/browser/bookmarks/bookmarks.dtd (%chrome/browser/bookmarks/bookmarks.dtd)
|
||||
* locale/browser/bookmarks/addBookmark.dtd (%chrome/browser/bookmarks/addBookmark.dtd)
|
||||
* locale/browser/bookmarks/bookmarks.properties (%chrome/browser/bookmarks/bookmarks.properties)
|
||||
* locale/browser/bookmarks/bookmarksProperties.dtd (%chrome/browser/bookmarks/bookmarksProperties.dtd)
|
||||
#endif
|
||||
locale/browser/history/history.dtd (%chrome/browser/history/history.dtd)
|
||||
locale/browser/migration/migration.dtd (%chrome/browser/migration/migration.dtd)
|
||||
locale/browser/migration/migration.properties (%chrome/browser/migration/migration.properties)
|
||||
|
|
|
@ -29,6 +29,18 @@ classic.jar:
|
|||
skin/classic/browser/Secure-background.gif
|
||||
skin/classic/browser/Toolbar-small.png
|
||||
skin/classic/browser/Toolbar.png
|
||||
#ifdef MOZ_PLACES
|
||||
skin/classic/browser/places/places.css (places/places.css)
|
||||
skin/classic/browser/places/defaultFavicon.png (places/defaultFavicon.png)
|
||||
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/livemarkItem.png (places/livemarkItem.png)
|
||||
skin/classic/browser/places/placesIcon.png (places/placesIcon.png)
|
||||
skin/classic/browser/places/toolbarDropMarker.png (places/toolbarDropMarker.png)
|
||||
skin/classic/browser/places/folderDragOver.png (places/folderDragOver.png)
|
||||
skin/classic/browser/places/bookmarkProperties.css (places/bookmarkProperties.css)
|
||||
#else
|
||||
skin/classic/browser/bookmarks/addBookmark.css (bookmarks/addBookmark.css)
|
||||
skin/classic/browser/bookmarks/bookmark-folder.png (bookmarks/bookmark-folder.png)
|
||||
skin/classic/browser/bookmarks/bookmark-item.png (bookmarks/bookmark-item.png)
|
||||
|
@ -45,6 +57,7 @@ classic.jar:
|
|||
skin/classic/browser/bookmarks/folderarrow.png (bookmarks/folderarrow.png)
|
||||
skin/classic/browser/preferences/Options.png (preferences/Options.png)
|
||||
skin/classic/browser/preferences/preferences.css (preferences/preferences.css)
|
||||
#endif
|
||||
icon.png
|
||||
preview.png
|
||||
|
||||
|
|
|
@ -0,0 +1,67 @@
|
|||
#bookmarkproperties {
|
||||
background-color: yellow;
|
||||
}
|
||||
|
||||
.tag{
|
||||
padding: 2px;
|
||||
margin: 0px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#places-info-options {
|
||||
font-size: 9pt;
|
||||
}
|
||||
|
||||
#places-info-grid {
|
||||
}
|
||||
|
||||
#tagbox {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.tag{
|
||||
padding: 2px;
|
||||
margin: 0px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.tag[selected="true"] {
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
.tag[isparent="true"] {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.tag:hover {
|
||||
background-color: orange;
|
||||
}
|
||||
|
||||
.l0 {
|
||||
margin-left: 0px;
|
||||
}
|
||||
|
||||
.l1 {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.l2 {
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
.l3 {
|
||||
margin-left: 30px;
|
||||
}
|
||||
|
||||
.l4 {
|
||||
margin-left: 40px;
|
||||
}
|
||||
|
||||
.l5 {
|
||||
margin-left: 50px;
|
||||
}
|
||||
|
||||
.l6 {
|
||||
margin-left: 60px;
|
||||
}
|
||||
|
После Ширина: | Высота: | Размер: 200 B |
После Ширина: | Высота: | Размер: 224 B |
|
@ -0,0 +1,234 @@
|
|||
/* Root View */
|
||||
#placesView {
|
||||
-moz-appearance: tabpanels;
|
||||
margin: -10px;
|
||||
padding: 8px 6px 6px 8px;
|
||||
-moz-user-focus: ignore;
|
||||
}
|
||||
|
||||
#splitter {
|
||||
border: 0px;
|
||||
width: 10px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
/* Place List, Place Content */
|
||||
.placesTree {
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
#placesList {
|
||||
-moz-appearance: none;
|
||||
width: 160px;
|
||||
margin: 0px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
#placesListContainer {
|
||||
-moz-appearance: listbox;
|
||||
margin: 7px 0px 7px 6px;
|
||||
}
|
||||
|
||||
#placeContent {
|
||||
-moz-appearance: none;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
#content {
|
||||
margin: 7px 6px 7px 0px;
|
||||
-moz-appearance: listbox;
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-image(title, container) {
|
||||
padding-right: 2px;
|
||||
margin: 0px 2px;
|
||||
list-style-image: url("chrome://global/skin/icons/folder-item.png") !important;
|
||||
-moz-image-region: rect(0px, 16px, 16px, 0px);
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-image(title, container) {
|
||||
-moz-image-region: rect(0px, 32px, 16px, 16px);
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-image(title, open) {
|
||||
-moz-image-region: rect(16px, 32px, 32px, 16px);
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-row(session-start) {
|
||||
border-top:1px dotted ThreeDShadow;
|
||||
}
|
||||
|
||||
/* FIXME this should make the date field invisible, but only does it for
|
||||
unselected items and maybe won't work for different color schemes. */
|
||||
treechildren::-moz-tree-cell-text(date, session-continue) {
|
||||
color:white;
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-image(title, separator) {
|
||||
list-style-image: none;
|
||||
width: 0px !important;
|
||||
height: 0px !important;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-cell-text(title, separator) {
|
||||
color: ThreeDShadow;
|
||||
margin: 0px 5px;
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-cell-text(title, separator, selected, focus) {
|
||||
color: HighlightText;
|
||||
}
|
||||
|
||||
/* Command Bar */
|
||||
.commands {
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
|
||||
.commandGroupButton {
|
||||
margin-left: 0px;
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
|
||||
.commandGroupButton.first {
|
||||
margin-right: -10px;
|
||||
}
|
||||
|
||||
.commandGroupButton.last {
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
/* Title Bar */
|
||||
#titlebar {
|
||||
background-color: -moz-Dialog;
|
||||
border-bottom: 2px solid;
|
||||
-moz-border-bottom-colors: ThreeDHighlight ThreeDShadow;
|
||||
}
|
||||
|
||||
#showingPrefix {
|
||||
margin: 5px 0.33em 5px 8px;
|
||||
}
|
||||
|
||||
#contentTitle {
|
||||
margin: 5px 8px 5px 0px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* Search Bar */
|
||||
#searchbar {
|
||||
margin: 6px -4px 0px 2px;
|
||||
}
|
||||
|
||||
.small {
|
||||
font-size: x-small;
|
||||
min-width: 0px;
|
||||
padding: 0px 4px 0px 4px;
|
||||
margin: 0px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
.small .button-text,
|
||||
.small .button-box {
|
||||
padding: 0px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
#searchFilter {
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
#searchFilter[empty="true"] {
|
||||
color: GrayText;
|
||||
}
|
||||
|
||||
#searchFilter .textbox-input-box {
|
||||
padding: 2px 2px 3px 4px;
|
||||
}
|
||||
|
||||
.filterList {
|
||||
-moz-appearance: none;
|
||||
background-color: transparent;
|
||||
border: 0px;
|
||||
margin: 2px;
|
||||
padding: 0px;
|
||||
min-width: 0px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
list-style-image: url("chrome://browser/skin/Search-bar.png");
|
||||
-moz-user-focus: ignore;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.filterList .button-box {
|
||||
border: 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
.filterList .button-menu-dropmarker {
|
||||
margin: 9px -3px -4px 8px;
|
||||
}
|
||||
|
||||
/* Calendar */
|
||||
.history-calendar {
|
||||
margin: 0px 0px 7px 6px;
|
||||
}
|
||||
|
||||
.calendar-box {
|
||||
-moz-appearance: listbox;
|
||||
border:1px solid black;
|
||||
background-color:white;
|
||||
}
|
||||
.calendar-header {
|
||||
background-color:#EEE;
|
||||
}
|
||||
.calendar-month-jump {
|
||||
cursor:pointer;
|
||||
padding-left:6px;
|
||||
padding-right:6px;
|
||||
}
|
||||
.calendar-month-jump:hover {
|
||||
background-color:#DDD;
|
||||
}
|
||||
.calendar-grid {
|
||||
padding-left:8px;
|
||||
padding-right:8px;
|
||||
padding-bottom:4px;
|
||||
}
|
||||
.calendar-grid label { /* everything in the calendar grid */
|
||||
padding:4px;
|
||||
margin:0px;
|
||||
text-align:center;
|
||||
font-size:80%;
|
||||
}
|
||||
.calendar-month-title {
|
||||
text-align:center;
|
||||
}
|
||||
.calendar-day-header {
|
||||
border-bottom:1px solid #888;
|
||||
}
|
||||
.calendar-day { /* just days (excluding the day headers) */
|
||||
cursor:w-resize;
|
||||
color:white;
|
||||
background-color:white;
|
||||
}
|
||||
.calendar-day:hover {
|
||||
background-color:#DDD;
|
||||
}
|
||||
.calendar-day[selected="true"] {
|
||||
cursor:w-resize;
|
||||
background-color:#8C8;
|
||||
}
|
||||
.calendar-day[selected="true"]:hover {
|
||||
background-color:#6A6;
|
||||
}
|
||||
.calendar-day[month="this"] {
|
||||
color:black;
|
||||
}
|
||||
.calendar-day[month="other"] {
|
||||
color:#888;
|
||||
}
|
||||
|
||||
.no-margin-button {
|
||||
min-width:0em;
|
||||
}
|
После Ширина: | Высота: | Размер: 266 B |
После Ширина: | Высота: | Размер: 174 B |
|
@ -20,11 +20,24 @@ classic.jar:
|
|||
skin/classic/browser/Throbber-small.png
|
||||
skin/classic/browser/Toolbar.png
|
||||
skin/classic/browser/Toolbar-small.png
|
||||
#ifdef MOZ_PLACES
|
||||
skin/classic/browser/places/places.css (places/places.css)
|
||||
skin/classic/browser/places/defaultFavicon.png (places/defaultFavicon.png)
|
||||
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/livemarkItem.png (places/livemarkItem.png)
|
||||
skin/classic/browser/places/placesIcon.png (places/placesIcon.png)
|
||||
skin/classic/browser/places/toolbarDropMarker.png (places/toolbarDropMarker.png)
|
||||
skin/classic/browser/places/folderDragOver.png (places/folderDragOver.png)
|
||||
skin/classic/browser/places/bookmarkProperties.css (places/bookmarkProperties.css)
|
||||
#else
|
||||
skin/classic/browser/Bookmarks-folder.png
|
||||
skin/classic/browser/bookmarks/addBookmark.css (bookmarks/addBookmark.css)
|
||||
skin/classic/browser/bookmarks/bookmarksManager.css (bookmarks/bookmarksManager.css)
|
||||
skin/classic/browser/bookmarks/Bookmarks-toolbar.png (bookmarks/Bookmarks-toolbar.png)
|
||||
skin/classic/browser/preferences/Options.png (preferences/Options.png)
|
||||
skin/classic/browser/preferences/preferences.css (preferences/preferences.css)
|
||||
#endif
|
||||
icon.png
|
||||
preview.png
|
||||
|
|
|
@ -0,0 +1,67 @@
|
|||
#bookmarkproperties {
|
||||
background-color: yellow;
|
||||
}
|
||||
|
||||
.tag{
|
||||
padding: 2px;
|
||||
margin: 0px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#places-info-options {
|
||||
font-size: 9pt;
|
||||
}
|
||||
|
||||
#places-info-grid {
|
||||
}
|
||||
|
||||
#tagbox {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.tag{
|
||||
padding: 2px;
|
||||
margin: 0px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.tag[selected="true"] {
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
.tag[isparent="true"] {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.tag:hover {
|
||||
background-color: orange;
|
||||
}
|
||||
|
||||
.l0 {
|
||||
margin-left: 0px;
|
||||
}
|
||||
|
||||
.l1 {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.l2 {
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
.l3 {
|
||||
margin-left: 30px;
|
||||
}
|
||||
|
||||
.l4 {
|
||||
margin-left: 40px;
|
||||
}
|
||||
|
||||
.l5 {
|
||||
margin-left: 50px;
|
||||
}
|
||||
|
||||
.l6 {
|
||||
margin-left: 60px;
|
||||
}
|
||||
|
После Ширина: | Высота: | Размер: 200 B |
После Ширина: | Высота: | Размер: 224 B |
0
browser/components/places/locale/default_places.html → browser/themes/winstripe/browser/places/folderDragOver.png
Normal file → Executable file
|
@ -0,0 +1,235 @@
|
|||
/* Root View */
|
||||
#placesView {
|
||||
-moz-appearance: tabpanels;
|
||||
margin: -10px;
|
||||
padding: 8px 6px 6px 8px;
|
||||
-moz-user-focus: ignore;
|
||||
}
|
||||
|
||||
#splitter {
|
||||
border: 0px;
|
||||
width: 10px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
/* Place List, Place Content */
|
||||
.placesTree {
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
#placesList {
|
||||
-moz-appearance: none;
|
||||
width: 160px;
|
||||
margin: 0px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
#placesListContainer {
|
||||
-moz-appearance: listbox;
|
||||
margin: 7px 0px 7px 6px;
|
||||
}
|
||||
|
||||
#placeContent {
|
||||
-moz-appearance: none;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
#content {
|
||||
margin: 7px 6px 7px 0px;
|
||||
-moz-appearance: listbox;
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-image(title, container) {
|
||||
padding-right: 2px;
|
||||
margin: 0px 2px;
|
||||
list-style-image: url("chrome://global/skin/icons/folder-item.png") !important;
|
||||
-moz-image-region: rect(0px, 16px, 16px, 0px);
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-image(title, container) {
|
||||
-moz-image-region: rect(0px, 32px, 16px, 16px);
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-image(title, open) {
|
||||
-moz-image-region: rect(16px, 32px, 32px, 16px);
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-row(session-start) {
|
||||
border-top:1px dotted ThreeDShadow;
|
||||
}
|
||||
|
||||
/* FIXME this should make the date field invisible, but only does it for
|
||||
unselected items and maybe won't work for different color schemes. */
|
||||
treechildren::-moz-tree-cell-text(date, session-continue) {
|
||||
color:white;
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-image(title, separator) {
|
||||
list-style-image: none;
|
||||
width: 0px !important;
|
||||
height: 0px !important;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-cell-text(title, separator) {
|
||||
color: ThreeDShadow;
|
||||
margin: 0px 5px;
|
||||
}
|
||||
|
||||
treechildren::-moz-tree-cell-text(title, separator, selected, focus) {
|
||||
color: HighlightText;
|
||||
}
|
||||
|
||||
/* Command Bar */
|
||||
.commands {
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
|
||||
.commandGroupButton {
|
||||
margin-left: 0px;
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
|
||||
.commandGroupButton.first {
|
||||
margin-right: -10px;
|
||||
}
|
||||
|
||||
.commandGroupButton.last {
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
/* Title Bar */
|
||||
#titlebar {
|
||||
background-color: -moz-Dialog;
|
||||
border-bottom: 2px solid;
|
||||
-moz-border-bottom-colors: ThreeDHighlight ThreeDShadow;
|
||||
}
|
||||
|
||||
#showingPrefix {
|
||||
margin: 5px 0.33em 5px 8px;
|
||||
}
|
||||
|
||||
#contentTitle {
|
||||
margin: 5px 8px 5px 0px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* Search Bar */
|
||||
#searchbar {
|
||||
margin: 6px -4px 0px 2px;
|
||||
}
|
||||
|
||||
.small {
|
||||
font-size: x-small;
|
||||
min-width: 0px;
|
||||
padding: 0px 4px 0px 4px;
|
||||
margin: 0px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
.small .button-text,
|
||||
.small .button-box {
|
||||
padding: 0px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
#searchFilter {
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
#searchFilter[empty="true"] {
|
||||
color: GrayText;
|
||||
}
|
||||
|
||||
#searchFilter .textbox-input-box {
|
||||
padding: 2px 2px 3px 4px;
|
||||
}
|
||||
|
||||
.filterList {
|
||||
-moz-appearance: none;
|
||||
background-color: transparent;
|
||||
border: 0px;
|
||||
margin: 2px;
|
||||
padding: 0px;
|
||||
min-width: 0px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
list-style-image: url("chrome://browser/skin/Search-bar.png");
|
||||
-moz-user-focus: ignore;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.filterList .button-box {
|
||||
border: 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
.filterList .button-menu-dropmarker {
|
||||
margin: 9px -3px -4px 8px;
|
||||
}
|
||||
|
||||
/* Calendar */
|
||||
.history-calendar {
|
||||
margin: 0px 0px 7px 6px;
|
||||
}
|
||||
|
||||
.calendar-box {
|
||||
-moz-appearance: listbox;
|
||||
border:1px solid black;
|
||||
background-color:white;
|
||||
}
|
||||
.calendar-header {
|
||||
background-color:#EEE;
|
||||
}
|
||||
.calendar-month-jump {
|
||||
cursor:pointer;
|
||||
padding-left:6px;
|
||||
padding-right:6px;
|
||||
}
|
||||
.calendar-month-jump:hover {
|
||||
background-color:#DDD;
|
||||
}
|
||||
.calendar-grid {
|
||||
padding-left:8px;
|
||||
padding-right:8px;
|
||||
padding-bottom:4px;
|
||||
}
|
||||
.calendar-grid label { /* everything in the calendar grid */
|
||||
padding:4px;
|
||||
margin:0px;
|
||||
text-align:center;
|
||||
font-size:80%;
|
||||
}
|
||||
.calendar-month-title {
|
||||
text-align:center;
|
||||
}
|
||||
.calendar-day-header {
|
||||
border-bottom:1px solid #888;
|
||||
}
|
||||
.calendar-day { /* just days (excluding the day headers) */
|
||||
cursor:w-resize;
|
||||
color:white;
|
||||
background-color:white;
|
||||
}
|
||||
.calendar-day:hover {
|
||||
background-color:#DDD;
|
||||
}
|
||||
.calendar-day[selected="true"] {
|
||||
cursor:w-resize;
|
||||
background-color:#8C8;
|
||||
}
|
||||
.calendar-day[selected="true"]:hover {
|
||||
background-color:#6A6;
|
||||
}
|
||||
.calendar-day[month="this"] {
|
||||
color:black;
|
||||
}
|
||||
.calendar-day[month="other"] {
|
||||
color:#888;
|
||||
}
|
||||
|
||||
.no-margin-button {
|
||||
min-width:0em;
|
||||
}
|
||||
|
После Ширина: | Высота: | Размер: 271 B |
После Ширина: | Высота: | Размер: 266 B |
После Ширина: | Высота: | Размер: 174 B |