Yay! Songbird 1.0! As with any new release of Songbird, we've got some new changes that went into Gonzo that Featherers (a.k.a. you) will want to be aware of in order to update accordingly. Most of the changes this release were in support of display pane add-ons.
To aid Featherers, we've put together a .zip file of all the new graphics, and a second .zip file containing *just* the changes to the necessary CSS files so that you can just drop in the changes. We do encourage you to read the rest of this guide in order to have some context as to what the changes entail though.
(Gotta start with the easy stuff ;-)) First off, go ahead and bump your maxVersion in your extension's install.rdf to 1.0.*:
<em:targetApplication> <Description> <em:id>songbird@songbirdnest.com</em:id> <em:minVersion>0.7.0</em:minVersion> <em:maxVersion>1.0.*</em:maxVersion> </Description> </em:targetApplication>
At the moment, this is used only by mashTape. We'll be seeing how many people find it useful, and might move the functionality into the main Songbird application later. This is the button in the top-right corner of the Content Pane Bottom display pane that allows the user to maximise the display pane to fill the full Songbird window (thus collapsing the media view). The button is shown here:

There are two buttons, one to maximise and one to restore. Both should go into
chrome/skin/display-pane in your Feather's XPI.
This is a change to enable display pane authors to utilise some empty space (the display pane header) to place tab navigation. Currently this is also only used by mashTape, but can be easily used by any other add-on as well. These tabs can be seen in the screenshot above as well (displaying the Artist Info, News, Photos, and Videos tabs).
While no CSS changes went in to for this feature specifically, you should still be aware when styling the tab elements that they will affect the tabs in the display pane header as well.
T
his is a change to allow display pane headers to become buttons that toggle state. Currently this is only used by the Album Art display pane in order to toggle between "Now Playing" and "Selected Item" states.
While no CSS changes went in to for this feature
specifically, you should still be aware of this change.
Other changes that went in were the CSSs rule for the sb-displaypane-menubutton class, and a new add-on picker button. The exact line removed is viewable in our source browser.
The new add-on picker button can be downloaded here.
New CSS classes were added to allow add-ons to uniformly display informative messages. This is currently used by both Album Art & mashTape for its "Nothing playing" or "No artist information found" messages.
You can see the new "empty-message" class in the source browser.
Following the lead set by Atreiu's Display Pane Buttons add-on, we integrated similar functionality into the app to allow users one-click access to toggle and expose/hide display panes. These buttons are in the bottom right statusbar (for the Content Pane Bottom & Right Sidebar display panes) and in the service pane statusbar (for the Service Pane Bottom display pane), and are seen in this screenshot here:
You can download the new display pane buttons in our source browser:
These should go into the chrome/skin/display-pane directory in your Feather's XPI.
There is now an image in chrome/skin/album-art called drop-target.png that frames the droppable area (for allowing artwork to be drag-and-dropped onto the album art display pane). There is also now a drop-message CSS class that has to be defined in your feathers.css.
.drop-message {
color:rgb(120,120,120);
} For streaming or remote media, we now reflect buffering state in the faceplate. This requires some CSS changes in images.css, as well as the corresponding images in the chrome/skin/media-control-pane directory:
We changed from having two separate buttons to one button with different states. The new service pane toggle button can be found here and the CSS changes can be seen in our source browser.
We now include and define the text-link CSS class for add-ons ported over from Firefox.
We've added generic success & alert/error icons for add-on authors to use. Currently, the only add-on using them is LyricMaster. They can be found in chrome/skin/base-elements as icon-error.png and icon-success.png.
More and more add-ons are constructing their output in HTML iframes (LyricsMaster, mashTape, and Concerts are three examples). Prior to Songbird 1.0, Featherers had no way to style the content of these HTML iframes. Thanks to Keisuke's fixes for bug 4103, we've added a new html.css to the chrome/skin directory for add-on developers to include in their iframes. Featherers can then style this html.css to allow the iframes to follow the Feather style.
If you created Feathers during the 0.8/1.0 development period, it's possible your Feather derived from a Mac OS X overrides.css that is missing a couple of rules that ended up being changed for the Mac titlebar going native.
If you apply the patch for bug 13789 to your own os-specific/mac/overrides.css, you should be all set.
bug 12347 caused <scale/> XUL elements to be missing crucial images and styles. We've updated the CSS & image files at the top of this document with the requisite images/CSS changes now.
The os-specific/mac/overrides.css has changed enough that it's probably easiest to just take the new file and patch in your local changes.
Also, the clear searchbar button class name changed. You'll want to make sure you change the rule in images.css to look like this rule.
| File | Size | Date | Attached by | |||
|---|---|---|---|---|---|---|
| affected-css.patch No description | 8.09 kB | 10:25, 17 Oct 2008 | stevel | Actions | ||
| affected-css (2).zip No description | 17.72 kB | 15:54, 24 Nov 2008 | stevel | Actions | ||
| new-images (1).zip No description | 40.61 kB | 15:54, 24 Nov 2008 | stevel | Actions | ||
© 2005-2009 Pioneers of the Inevitable