Bug 546857 Part 4: Make feed reader not use XUL elements directly in feed page. r=mano a=blocker

This commit is contained in:
Jonas Sicking 2010-08-19 16:12:46 -07:00
parent 662477756c
commit 771065358a
14 changed files with 340 additions and 147 deletions

View File

@ -0,0 +1,39 @@
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is mozilla.org code.
*
* The Initial Developer of the Original Code is
* Mozilla Foundation.
* Portions created by the Initial Developer are Copyright (C) 2010
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
#feedSubscribeLine {
-moz-binding: url(subscribe.xml#feedreaderUI);
}

View File

@ -16,14 +16,17 @@
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<html id="feedHandler"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>&feedPage.title;</title>
<link rel="stylesheet"
href="chrome://browser/skin/feeds/subscribe.css"
type="text/css"
media="all"/>
<link rel="stylesheet"
href="chrome://browser/content/feeds/subscribe.css"
type="text/css"
media="all"/>
<script type="application/javascript"
src="chrome://browser/content/feeds/subscribe.js"/>
</head>
@ -34,30 +37,8 @@
<p id="feedSubscriptionInfo1" />
<p id="feedSubscriptionInfo2" />
</div>
<!-- XXXmano this can't have any whitespace in it. Otherwise you would see
how much XUL-in-XHTML sucks, see bug 348830 -->
<div id="feedSubscribeLine"
><xul:vbox
><xul:hbox align="center"
><xul:description id="subscribeUsingDescription"
/><xul:menulist id="handlersMenuList" aria-labelledby="subscribeUsingDescription"
><xul:menupopup menugenerated="true" id="handlersMenuPopup"
><xul:menuitem id="liveBookmarksMenuItem" label="&feedLiveBookmarks;" class="menuitem-iconic" image="chrome://browser/skin/page-livemarks.png" selected="true"
/><xul:menuseparator
/></xul:menupopup
></xul:menulist
></xul:hbox
><xul:hbox
><xul:checkbox id="alwaysUse" checked="false"
/></xul:hbox
><xul:hbox align="center"
><xul:spacer flex="1"
/><xul:button label="&feedSubscribeNow;" id="subscribeButton"
/></xul:hbox
></xul:vbox
></div
></div>
<div id="feedSubscribeLine"></div>
</div>
</div>
<script type="application/javascript">

View File

@ -0,0 +1,72 @@
<!-- ***** BEGIN LICENSE BLOCK *****
- Version: MPL 1.1/GPL 2.0/LGPL 2.1
-
- The contents of this file are subject to the Mozilla Public License Version
- 1.1 (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
- http://www.mozilla.org/MPL/
-
- Software distributed under the License is distributed on an "AS IS" basis,
- WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- for the specific language governing rights and limitations under the
- License.
-
- The Original Code is mozilla.org code.
-
- The Initial Developer of the Original Code is
- Mozilla Foundation.
- Portions created by the Initial Developer are Copyright (C) 2010
- the Initial Developer. All Rights Reserved.
-
- Contributor(s):
-
- Alternatively, the contents of this file may be used under the terms of
- either the GNU General Public License Version 2 or later (the "GPL"), or
- the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
- in which case the provisions of the GPL or the LGPL are applicable instead
- of those above. If you wish to allow use of your version of this file only
- under the terms of either the GPL or the LGPL, and not to allow others to
- use your version of this file under the terms of the MPL, indicate your
- decision by deleting the provisions above and replace them with the notice
- and other provisions required by the LGPL or the GPL. If you do not delete
- the provisions above, a recipient may use your version of this file under
- the terms of any one of the MPL, the GPL or the LGPL.
-
- ***** END LICENSE BLOCK ***** -->
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE bindings [
<!ENTITY % feedDTD
SYSTEM "chrome://browser/locale/feeds/subscribe.dtd">
%feedDTD;
]>
<bindings id="feedBindings"
xmlns="http://www.mozilla.org/xbl"
xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<binding id="feedreaderUI">
<content>
<xul:vbox>
<xul:hbox align="center">
<xul:description anonid="subscribeUsingDescription" class="subscribeUsingDescription"/>
<xul:menulist anonid="handlersMenuList" class="handlersMenuList" aria-labelledby="subscribeUsingDescription">
<xul:menupopup menugenerated="true" anonid="handlersMenuPopup" class="handlersMenuPopup">
<xul:menuitem anonid="liveBookmarksMenuItem" label="&feedLiveBookmarks;" class="menuitem-iconic liveBookmarksMenuItem" image="chrome://browser/skin/page-livemarks.png" selected="true"/>
<xul:menuseparator/>
</xul:menupopup>
</xul:menulist>
</xul:hbox>
<xul:hbox>
<xul:checkbox anonid="alwaysUse" class="alwaysUse" checked="false"/>
</xul:hbox>
<xul:hbox align="center">
<xul:spacer flex="1"/>
<xul:button label="&feedSubscribeNow;" anonid="subscribeButton" class="subscribeButton"/>
</xul:hbox>
</xul:vbox>
</content>
<resources>
<stylesheet src="chrome://browser/skin/feeds/subscribe-ui.css"/>
</resources>
</binding>
</bindings>

View File

@ -1,3 +1,5 @@
browser.jar:
* content/browser/feeds/subscribe.xhtml (content/subscribe.xhtml)
* content/browser/feeds/subscribe.js (content/subscribe.js)
* content/browser/feeds/subscribe.xml (content/subscribe.xml)
content/browser/feeds/subscribe.css (content/subscribe.css)

View File

@ -730,6 +730,15 @@ FeedWriter.prototype = {
Cu.evalInSandbox(codeStr, this._contentSandbox);
},
/**
* Helper method to get an element in the XBL binding where the handler
* selection UI lives
*/
_getUIElement: function FW__getUIElement(id) {
return this._document.getAnonymousElementByAttribute(
this._document.getElementById("feedSubscribeLine"), "anonid", id);
},
/**
* Displays a prompt from which the user may choose a (client) feed reader.
* @return - true if a feed reader was selected, false otherwise.
@ -775,7 +784,7 @@ FeedWriter.prototype = {
},
_setAlwaysUseCheckedState: function FW__setAlwaysUseCheckedState(feedType) {
var checkbox = this._document.getElementById("alwaysUse");
var checkbox = this._getUIElement("alwaysUse");
if (checkbox) {
var alwaysUse = false;
try {
@ -802,18 +811,17 @@ FeedWriter.prototype = {
}
this._contentSandbox.subscribeUsing =
this._document.getElementById("subscribeUsingDescription");
this._getUIElement("subscribeUsingDescription");
this._contentSandbox.label = this._getString(stringLabel);
var codeStr = "subscribeUsing.setAttribute('value', label);"
Cu.evalInSandbox(codeStr, this._contentSandbox);
},
_setAlwaysUseLabel: function FW__setAlwaysUseLabel() {
var checkbox = this._document.getElementById("alwaysUse");
var checkbox = this._getUIElement("alwaysUse");
if (checkbox) {
var handlersMenuList = this._document.getElementById("handlersMenuList");
if (handlersMenuList) {
var handlerName = this._getSelectedItemFromMenulist(handlersMenuList)
if (this._handlersMenuList) {
var handlerName = this._getSelectedItemFromMenulist(this._handlersMenuList)
.getAttribute("label");
var stringLabel = "alwaysUseForFeeds";
switch (this._getFeedType()) {
@ -843,7 +851,7 @@ FeedWriter.prototype = {
}
if (event.type == "command") {
switch (event.target.id) {
switch (event.target.getAttribute("anonid")) {
case "subscribeButton":
this.subscribe();
break;
@ -856,8 +864,7 @@ FeedWriter.prototype = {
* selected). If we don't show the filepicker here, it will be shown
* when clicking "Subscribe Now".
*/
var popupbox = this._document.getElementById("handlersMenuList")
.firstChild.boxObject;
var popupbox = this._handlersMenuList.firstChild.boxObject;
popupbox.QueryInterface(Components.interfaces.nsIPopupBoxObject);
if (popupbox.popupState == "hiding" && !this._chooseClientApp()) {
// Select the (per-prefs) selected handler if no application was
@ -884,11 +891,10 @@ FeedWriter.prototype = {
switch (handler) {
case "web": {
var handlersMenuList = this._document.getElementById("handlersMenuList");
if (handlersMenuList) {
if (this._handlersMenuList) {
var url = prefs.getComplexValue(getPrefWebForType(feedType), Ci.nsISupportsString).data;
var handlers =
handlersMenuList.getElementsByAttribute("webhandlerurl", url);
this._handlersMenuList.getElementsByAttribute("webhandlerurl", url);
if (handlers.length == 0) {
LOG("FeedWriter._setSelectedHandler: selected web handler isn't in the menulist")
return;
@ -926,7 +932,7 @@ FeedWriter.prototype = {
}
case "bookmarks":
default: {
var liveBookmarksMenuItem = this._document.getElementById("liveBookmarksMenuItem");
var liveBookmarksMenuItem = this._getUIElement("liveBookmarksMenuItem");
if (liveBookmarksMenuItem)
this._safeDoCommand(liveBookmarksMenuItem);
}
@ -934,7 +940,7 @@ FeedWriter.prototype = {
},
_initSubscriptionUI: function FW__initSubscriptionUI() {
var handlersMenuPopup = this._document.getElementById("handlersMenuPopup");
var handlersMenuPopup = this._getUIElement("handlersMenuPopup");
if (!handlersMenuPopup)
return;
@ -957,11 +963,13 @@ FeedWriter.prototype = {
codeStr = "header.className = 'feedBackground'; ";
}
var liveBookmarksMenuItem = this._getUIElement("liveBookmarksMenuItem");
// Last-selected application
var menuItem = this._document.createElementNS(XUL_NS, "menuitem");
menuItem.id = "selectedAppMenuItem";
menuItem.className = "menuitem-iconic";
var menuItem = liveBookmarksMenuItem.cloneNode(false);
menuItem.removeAttribute("selected");
menuItem.setAttribute("anonid", "selectedAppMenuItem");
menuItem.className = "menuitem-iconic selectedAppMenuItem";
menuItem.setAttribute("handlerType", "client");
try {
var prefs = Cc["@mozilla.org/preferences-service;1"].
@ -990,9 +998,10 @@ FeedWriter.prototype = {
this._defaultSystemReader = Cc["@mozilla.org/browser/shell-service;1"].
getService(Ci.nsIShellService).
defaultFeedReader;
menuItem = this._document.createElementNS(XUL_NS, "menuitem");
menuItem.id = "defaultHandlerMenuItem";
menuItem.className = "menuitem-iconic";
menuItem = liveBookmarksMenuItem.cloneNode(false);
menuItem.removeAttribute("selected");
menuItem.setAttribute("anonid", "defaultHandlerMenuItem");
menuItem.className = "menuitem-iconic defaultHandlerMenuItem";
menuItem.setAttribute("handlerType", "client");
this._initMenuItemWithFile(menuItem, this._defaultSystemReader);
@ -1011,9 +1020,10 @@ FeedWriter.prototype = {
}
// "Choose Application..." menuitem
menuItem = this._document.createElementNS(XUL_NS, "menuitem");
menuItem.id = "chooseApplicationMenuItem";
menuItem.className = "menuitem-iconic";
menuItem = liveBookmarksMenuItem.cloneNode(false);
menuItem.removeAttribute("selected");
menuItem.setAttribute("anonid", "chooseApplicationMenuItem");
menuItem.className = "menuitem-iconic chooseApplicationMenuItem";
menuItem.setAttribute("label", this._getString("chooseApplicationMenuItem"));
this._contentSandbox.chooseAppMenuItem = menuItem;
@ -1021,7 +1031,7 @@ FeedWriter.prototype = {
// separator
this._contentSandbox.chooseAppSep =
this._document.createElementNS(XUL_NS, "menuseparator")
menuItem = liveBookmarksMenuItem.nextSibling.cloneNode(false);
codeStr += "handlersMenuPopup.appendChild(chooseAppSep); ";
Cu.evalInSandbox(codeStr, this._contentSandbox);
@ -1036,7 +1046,8 @@ FeedWriter.prototype = {
var handlers = wccr.getContentHandlers(this._getMimeTypeForFeedType(feedType));
if (handlers.length != 0) {
for (var i = 0; i < handlers.length; ++i) {
menuItem = this._document.createElementNS(XUL_NS, "menuitem");
menuItem = liveBookmarksMenuItem.cloneNode(false);
menuItem.removeAttribute("selected");
menuItem.className = "menuitem-iconic";
menuItem.setAttribute("label", handlers[i].name);
menuItem.setAttribute("handlerType", "web");
@ -1072,8 +1083,7 @@ FeedWriter.prototype = {
handlersMenuPopup.addEventListener("command", this, false);
// Set up the "Subscribe Now" button
this._document
.getElementById("subscribeButton")
this._getUIElement("subscribeButton")
.addEventListener("command", this, false);
// first-run ui
@ -1139,6 +1149,7 @@ FeedWriter.prototype = {
_document: null,
_feedURI: null,
_feedPrincipal: null,
_handlersMenuList: null,
// nsIFeedWriter
init: function FW_init(aWindow) {
@ -1149,6 +1160,8 @@ FeedWriter.prototype = {
this._window = window;
this._document = window.document;
this._document.getElementById("feedSubscribeLine").offsetTop;
this._handlersMenuList = this._getUIElement("handlersMenuList");
var secman = Cc["@mozilla.org/scriptsecuritymanager;1"].
getService(Ci.nsIScriptSecurityManager);
@ -1195,11 +1208,9 @@ FeedWriter.prototype = {
},
close: function FW_close() {
this._document
.getElementById("handlersMenuPopup")
this._getUIElement("handlersMenuPopup")
.removeEventListener("command", this, false);
this._document
.getElementById("subscribeButton")
this._getUIElement("subscribeButton")
.removeEventListener("command", this, false);
this._document = null;
this._window = null;
@ -1246,19 +1257,17 @@ FeedWriter.prototype = {
var prefs = Cc["@mozilla.org/preferences-service;1"].
getService(Ci.nsIPrefBranch);
var defaultHandler = "reader";
var useAsDefault = this._document.getElementById("alwaysUse")
.getAttribute("checked");
var useAsDefault = this._getUIElement("alwaysUse").getAttribute("checked");
var handlersMenuList = this._document.getElementById("handlersMenuList");
var selectedItem = this._getSelectedItemFromMenulist(handlersMenuList);
var selectedItem = this._getSelectedItemFromMenulist(this._handlersMenuList);
// Show the file picker before subscribing if the
// choose application menuitem was chosen using the keyboard
if (selectedItem.id == "chooseApplicationMenuItem") {
if (selectedItem.getAttribute("anonid") == "chooseApplicationMenuItem") {
if (!this._chooseClientApp())
return;
selectedItem = this._getSelectedItemFromMenulist(handlersMenuList);
selectedItem = this._getSelectedItemFromMenulist(this._handlersMenuList);
}
if (selectedItem.hasAttribute("webhandlerurl")) {
@ -1282,7 +1291,7 @@ FeedWriter.prototype = {
}
}
else {
switch (selectedItem.id) {
switch (selectedItem.getAttribute("anonid")) {
case "selectedAppMenuItem":
prefs.setComplexValue(getPrefAppForType(feedType), Ci.nsILocalFile,
this._selectedApp);
@ -1389,8 +1398,7 @@ FeedWriter.prototype = {
// Go through the readers menu and look for the corresponding
// reader menu-item for the page if any.
var spec = aURI.spec;
var handlersMenulist = this._document.getElementById("handlersMenuList");
var possibleHandlers = handlersMenulist.firstChild.childNodes;
var possibleHandlers = this._handlersMenuList.firstChild.childNodes;
for (var i=0; i < possibleHandlers.length ; i++) {
if (possibleHandlers[i].getAttribute("webhandlerurl") == spec) {
this._setFaviconForWebReader(aURI, possibleHandlers[i]);

View File

@ -0,0 +1,61 @@
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is mozilla.org code.
*
* The Initial Developer of the Original Code is
* Mozilla Foundation.
* Portions created by the Initial Developer are Copyright (C) 2010
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
.alwaysUse {
padding: 5px;
}
.handlersMenuPopup > menuitem {
-moz-padding-start: 23px;
}
.handlersMenuPopup > menuitem.menuitem-iconic {
-moz-padding-start: 2px;
}
.handlersMenuPopup > .menuitem-iconic > .menu-iconic-left {
display: -moz-box;
min-width: 16px;
-moz-padding-end: 2px;
}
.chooseApplicationMenuItem {
list-style-image: url("moz-icon://dummy.exe?size=16");
}
#feedHeader[dir="rtl"] .handlersMenuList > menupopup {
direction: rtl;
}

View File

@ -1,8 +1,3 @@
*[hidden] {
display: none;
}
html {
background: -moz-Dialog;
font: 3mm tahoma,arial,helvetica,sans-serif;
@ -67,33 +62,6 @@ html {
padding-top: 0.2em;
}
#alwaysUse {
padding: 5px;
}
#handlersMenuList > menupopup > menuitem {
-moz-padding-start: 23px;
}
#handlersMenuList > menupopup > menuitem.menuitem-iconic {
-moz-padding-start: 2px;
}
#handlersMenuList > menupopup > .menuitem-iconic > .menu-iconic-left {
display: -moz-box;
min-width: 16px;
-moz-padding-end: 2px;
}
#chooseApplicationMenuItem {
list-style-image: url("moz-icon://dummy.exe?size=16");
}
#feedHeader[dir="rtl"] #handlersMenuList > menupopup {
direction: rtl;
}
/* Don't print subscription UI */
@media print {
#feedHeaderContainer {

View File

@ -42,6 +42,7 @@ browser.jar:
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/feeds/subscribe-ui.css (feeds/subscribe-ui.css)
skin/classic/browser/places/bookmarksMenu.png (places/bookmarksMenu.png)
skin/classic/browser/places/bookmarksToolbar.png (places/bookmarksToolbar.png)
skin/classic/browser/places/calendar.png (places/calendar.png)

View File

@ -0,0 +1,43 @@
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is mozilla.org code.
*
* The Initial Developer of the Original Code is
* Mozilla Foundation.
* Portions created by the Initial Developer are Copyright (C) 2010
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
.alwaysUse {
padding: 3px;
}
.chooseApplicationMenuItem {
list-style-image: url("chrome://browser/skin/preferences/application.png");
}

View File

@ -1,8 +1,3 @@
*[hidden] {
display: none;
}
html {
background: -moz-Dialog;
font: 3mm tahoma,arial,helvetica,sans-serif;
@ -54,18 +49,10 @@ html {
padding: 0 1em 1em 2em;
}
#alwaysUse {
padding: 3px;
}
#feedHeader[firstrun="true"] #feedSubscribeLine {
padding-left: 3.7em;
}
#chooseApplicationMenuItem {
list-style-image: url("chrome://browser/skin/preferences/application.png");
}
/* Don't print subscription UI */
@media print {
#feedHeaderContainer {

View File

@ -55,6 +55,7 @@ browser.jar:
skin/classic/browser/toolbarbutton-dropmarker.png
skin/classic/browser/urlbar-favicon-glow.png
skin/classic/browser/feeds/subscribe.css (feeds/subscribe.css)
skin/classic/browser/feeds/subscribe-ui.css (feeds/subscribe-ui.css)
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)

View File

@ -0,0 +1,61 @@
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is mozilla.org code.
*
* The Initial Developer of the Original Code is
* Mozilla Foundation.
* Portions created by the Initial Developer are Copyright (C) 2010
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
.alwaysUse {
padding: 5px;
}
.handlersMenuPopup > menuitem {
-moz-padding-start: 23px;
}
.handlersMenuPopup > menuitem.menuitem-iconic {
-moz-padding-start: 2px;
}
.handlersMenuPopup > .menuitem-iconic > .menu-iconic-left {
display: -moz-box;
min-width: 16px;
-moz-padding-end: 2px;
}
.chooseApplicationMenuItem {
list-style-image: url("chrome://browser/skin/preferences/application.png");
}
#feedHeader[dir="rtl"] .handlersMenuList > menupopup {
direction: rtl;
}

View File

@ -1,8 +1,3 @@
*[hidden] {
display: none;
}
html {
background: -moz-Dialog;
font: 3mm tahoma,arial,helvetica,sans-serif;
@ -33,6 +28,10 @@ html {
color: InfoText;
}
#feedIntroText {
display: none;
}
.feedBackground {
background: url("chrome://browser/skin/feeds/feedIcon.png") 0% 10% no-repeat InfoBackground;
}
@ -49,10 +48,6 @@ html {
background-position: 100% 10%;
}
#feedIntroText {
display: none;
}
#feedHeader[firstrun="true"] #feedIntroText {
padding-top: 0.1em;
-moz-padding-start: 0.6em;
@ -67,33 +62,6 @@ html {
padding-top: 0.2em;
}
#alwaysUse {
padding: 5px;
}
#handlersMenuList > menupopup > menuitem {
-moz-padding-start: 23px;
}
#handlersMenuList > menupopup > menuitem.menuitem-iconic {
-moz-padding-start: 2px;
}
#handlersMenuList > menupopup > .menuitem-iconic > .menu-iconic-left {
display: -moz-box;
min-width: 16px;
-moz-padding-end: 2px;
}
#chooseApplicationMenuItem {
list-style-image: url("chrome://browser/skin/preferences/application.png");
}
#feedHeader[dir="rtl"] #handlersMenuList > menupopup {
direction: rtl;
}
/* Don't print subscription UI */
@media print {
#feedHeaderContainer {

View File

@ -54,6 +54,7 @@ browser.jar:
skin/classic/browser/feeds/videoFeedIcon.png (feeds/videoFeedIcon.png)
skin/classic/browser/feeds/videoFeedIcon16.png (feeds/videoFeedIcon16.png)
skin/classic/browser/feeds/subscribe.css (feeds/subscribe.css)
skin/classic/browser/feeds/subscribe-ui.css (feeds/subscribe-ui.css)
skin/classic/browser/places/places.css (places/places.css)
* skin/classic/browser/places/organizer.css (places/organizer.css)
skin/classic/browser/places/bookmark.png (places/bookmark.png)