MozillaZine

A very simple theme structure for SeaMonkey

Discuss application theming and theme development.
patrickjdempsey

User avatar
 
Posts: 23734
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC

Post Posted August 20th, 2014, 1:18 am

One of the benefits of switching over to SeaMonkey from Firefox as a theme developer is that SeaMonkey is still broken into several skins for theming. These days Firefox is 95% built in the /browser/ skin which makes it virtually impossible to avoid building a full complete theme. Within SeaMonkey, particularly the /navigator/ skin (roughly analogous to /browser/ in Firefox) is very small which makes it easy to support.

So my basic theme structure for SeaMonkey consists of two skin packages: an overlay skin for /navigator/ and an override skin for /global/ which I am calling /globalish/:

chrome/navigator/
chrome/globalish/

My /globalish/ skin includes CSS support for toolbars, findbars, statusbars, and the textboxes and buttons which appear in those areas. Most of the code in /globalish/ has !important tags on it just like a userChrome hack. Doing this allows us to get a universal toolbar style across your theme with minimal work.

My /navigator/ skin is basically a reproduction of the original /navigator/ but the files are restructured a little and I've migrated some images from other skins so I can support them without including those skin packages. I also have a third skin for Sea Fox support, but that's not necessary. My chrome.manifest looks like this:

Code: Select all
skin    navigator    themename    chrome/navigator/

#create our custom skin package:
skin     globalish      themename    chrome/globalish/

style     chrome://global/content/globalOverlay.xul               chrome://globalish/skin/global.css
style     chrome://communicator/content/bookmarks/bookmarksManager.xul  chrome://globalish/skin/global.css
style     chrome://help/content/help.xul                          chrome://globalish/skin/global.css


bookmarksManager.xul and help.xul have been added because apparently these windows do not normally call the globalOverlay, and therefore would be missing our toolbar modifications.

I've uploaded my sample theme on AMO and it should appear in a few days: https://addons.mozilla.org/en-US/seamon ... i-artemia/
Tip of the day: If it has "toolbar" in the name, it's crap.
What my avatar is about: https://addons.mozilla.org/en-US/seamonkey/addon/sea-fox/

Aris

User avatar
 
Posts: 3069
Joined: February 27th, 2011, 10:14 am

Post Posted August 23rd, 2014, 2:34 am

Good job partrick. Stratini Artemia is now visible on AMO.
Customize Firefox 57+ UI || Classic Theme Restorer (Fx 29-56) || Classic Toolbar Buttons || CustomizeMyBird

How to use legacy add-ons after Firefox 57 release? Switch to Firefox 52 ESR or move to Waterfox browser or Basilisk browser.

patrickjdempsey

User avatar
 
Posts: 23734
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC

Post Posted August 23rd, 2014, 10:51 pm

Thanks... when my summer slows down a bit more I'll post some more details about tricks I used to simplify the coding, as well as some of the (dare I say it?) cutting edge coding I'm using to get effects that I've yet to see anyone do. I actually did most of the work on this months ago and just never got around to publishing. Busiest summer of my life is drawing to a close! Not complaining, but I'm ready for some free time!
Tip of the day: If it has "toolbar" in the name, it's crap.
What my avatar is about: https://addons.mozilla.org/en-US/seamonkey/addon/sea-fox/

Return to Theme Development


Who is online

Users browsing this forum: No registered users and 2 guests