Firebird Theme - a "light-weight" Theme

Discuss application theming and theme development.
Post Reply
User avatar
aaron
Posts: 3130
Joined: November 4th, 2002, 8:49 pm
Location: Texas
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by aaron »

Actually, Patrick, there weren't too many additional icons that I didn't already have in the Firefox and Thunderbird themes. I was able to make one contained theme file that has Firefox + Thunderbird + SeaMonkey support, and it only weighs in at 286K! I updated the file on my site (http://www.spuler.us/temp/nemesis_combi ... ler.us.jar).

The only thing I see I'm missing is the Places window of Firefox. Not sure if I want to mess with that since the UI changes a bit based on the user's operating system. I'm content to leave it be, but we'll see.
User avatar
patrickjdempsey
Posts: 23686
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by patrickjdempsey »

Hey guys, I wasn't sure if anyone else had run into this so I thought I would give a head's up! Due to changes in how 3.6 handles RTL locations you need to rethink you RTL codes. For the main Back and Forward buttons, 3.6 uses the -moz-transform command to flip the LTR graphics. That means if you use RTL codes for them they will be flipped backwards. I spend the better part of the last two hours scratching my head as to why my RTL codes were not working! They are not using -moz-transform for the Library Back and Forward history buttons yet, but it might be something to keep an eye on.

So to clarify, you need to have RTL specific codes for Firefox 3.5 and below ([chromedir="rtl"]) for the main Back and Forward buttons. You do NOT need RTL specific codes for the main Back and Forward buttons for Firefox 3.6 and above. You do need to have separate RTL codes for Firefox 3.5- and 3.6+ for the Library Back and Forward buttons ([chromedir="rtl"] and :-moz-locale-dir(rtl) respectively) as of Firefox 3.6b4.
Last edited by patrickjdempsey on December 19th, 2009, 5:11 pm, edited 1 time in total.
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/
User avatar
patrickjdempsey
Posts: 23686
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by patrickjdempsey »

P.S. aaron, your latest file looks great both in Firefox and Seamonkey! Talk about an all-in-one theme! And I did have to disable my extensions and restart to get the theme to appear in Seamonkey. Fortunately this is a one-time problem but unfortunately that makes it very difficult to track down. I would like to know if there is maybe one specific really common extension that is causing it. On Seamonkey I have Adblock Plus, ChatZilla, DOMi and JavaScript Debugger running. So I wonder if ABP or DOMi are the culprits?
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/
User avatar
patrickjdempsey
Posts: 23686
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by patrickjdempsey »

Also aaron, I completely forgot about your jaggies problem with the Smoke theme, do you still need my help with that?
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/
User avatar
patrickjdempsey
Posts: 23686
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by patrickjdempsey »

Hey guys, we might need to file a bug with AMO. It is showing a security issue with this method of chrome.manifest. This is the bug I'm getting:

! Theme-specific security result
chrome.manifest Check [help]

! chrome.manifest (5) : Matched Pattern: "/^(?!(#|skin\s|style\s))/"
style chrome://browser/content/places/places.xul chrome://customskin/skin/organizer.css

! chrome.manifest (9) : Matched Pattern: "/^(?!(#|skin\s|style\s))/"
skin customskin classic/1.0 chrome/customskin/classic/

! chrome.manifest (12) : Matched Pattern: "/^(?!(#|skin\s|style\s))/"
skin customskin mosaicmodernlite chrome/customskin/


And here is my chrome.manifest:

Code: Select all

#these lines will register skin overlays for the windows we want to skin
style      chrome://browser/content/browser.xul              chrome://customskin/skin/browser.css
style    chrome://global/content/customizeToolbar.xul      chrome://customskin/skin/customizeToolbar.css
style    chrome://browser/content/places/places.xul     chrome://customskin/skin/organizer.css

#this line is necessary to avoid our customskin file messes other themes
#it must be registered before we register our skin provider
skin   customskin   classic/1.0      chrome/customskin/classic/

#this line registers our skin
skin   customskin   mosaicmodernlite      chrome/customskin/
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/
User avatar
aaron
Posts: 3130
Joined: November 4th, 2002, 8:49 pm
Location: Texas
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by aaron »

I don't think it's an extension conflict as I've tried the light-weight themes on 'virgin' Firefox/Thunderbird profiles and I get the same behavior.
User avatar
ShareBird
Posts: 2740
Joined: December 8th, 2004, 7:09 am
Location: Berlin | Made in Brasil
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by ShareBird »

I was on IRC to ask about it, asked by the developers channel, labs and addons... No answers...
Silvermel - A Theme for Firefox and Thunderbird
YATT - Yet Another Theme Tutorial
Don't give a man a fish. Teach him how to fish instead.
User avatar
aaron
Posts: 3130
Joined: November 4th, 2002, 8:49 pm
Location: Texas
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by aaron »

Thanks for trying ShareBird.
User avatar
patrickjdempsey
Posts: 23686
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by patrickjdempsey »

aaron wrote:I don't think it's an extension conflict as I've tried the light-weight themes on 'virgin' Firefox/Thunderbird profiles and I get the same behavior.


So with a "virgin" Firefox, did you just have to do multiple restarts?
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/
User avatar
aaron
Posts: 3130
Joined: November 4th, 2002, 8:49 pm
Location: Texas
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by aaron »

I've had mixed results. On one virgin, I didn't have to do anything, it just worked (like any other theme). On another, I had to disable the microsoft .net extension that was installed and then restart. Can't figure out the pattern.
User avatar
patrickjdempsey
Posts: 23686
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by patrickjdempsey »

Hey guys, I have some fairly ambitious proposals to make!

* First off, I'd like us to come up with an official name for these kinds of themes. I would like to avoid the mess currently going on with Themes/Personas of there being dozens of different ways to refer to each, none of which are very accurate, or apparently official. Unfortunately, the most accurate term we could use is the one hijacked by Mozilla as a completely INACCURATE term for Personas, Light-Weight Themes. They've even gone so far as to create a special CSS selector using this completely inaccurate name: -moz-lwtheme.

So far I've been calling them ShareBird Lite themes, but that only works in the context of MozillaZine and only for people who have read this thread. The two ideas I have are: Button Themes and Overlay Themes, and the obvious descriptors: Light Button Themes and Light Overlay Themes. Overlay Themes is by far the most accurate name, but it means absolutely nothing to non-programmers. Button Themes is accurate to the original intent of them, but aaron has proved that these little packages can be powerful enough to skin the entire browser quite effectively, compactly and flexibly. His latest multi-platform incarnations are impressive to say the least.

When many first-time themers come to MozillaZine, all they want to do is change the main toolbar buttons... and many of those themes end up on AMO. Sometimes a package that is only changing the toolbar buttons can be well over 800KB and requires the themer to dig into the longest CSS file in the default theme, browser.css... that's just insanity. As the possible name Button Themes implies, this method is perfect for only changing the toolbar buttons in a very small (under 200KB) package.

* Secondly, if we can agree to a name, I'd love to see a FAQ webpage setup by one of us. This page could handle the dual purpose of promoting the chosen name and evangelizing this method to users, as well as a compressed version of YATT and a simple working sample theme to download for developers. It would also be a nice place to collect a list of links to download themes using this method. This would require the hoster to occasionaly update this list, so keep that in mind before volunteering!

* Third, do we need to file some bugs with AMO to keep these themes from cropping up multiple errors with the automated system? Perhaps we need to recommend specific checks that AMO could do of REAL problems that can arise with these themes? For instance, I've noticed that if you overlay a folder which is not part of the default theme that sometimes this can cause bugs after you switch to other themes. Maybe if AMO knew if this was a reasonable way of building themes and there was even a website promoting it, then they would take it more seriously? ;)
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/
User avatar
WildcatRay
Posts: 7484
Joined: October 18th, 2007, 7:03 pm
Location: Columbus, OH

Re: Firebird Theme - a "light-weight" Theme

Post by WildcatRay »

As to a name, Buttons-Only Themes?

In the interest of keeping things simple, at least offer separate theme files for Firefox, Thunderbird, Seamonkey, Sunbird, etc. along with integrated ones for some/all?
Ray

OS'es: 4 computers with Win10 Pro 64-bit; Current Firefox, Beta, Nightly, Chrome, Vivaldi
User avatar
ShareBird
Posts: 2740
Joined: December 8th, 2004, 7:09 am
Location: Berlin | Made in Brasil
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by ShareBird »

Don't forget there is still a major issue to be solved yet. The installation problem...

I don't see reasons to distinguish the "light-weight" from "heavy-weight" approaches, since for the end user they are still being full themes (since they can also change every window). And for developers, it doesn't really matter the wording of them. Notice also that is very possible a combination between both approaches (it depends if you register a skin provider for a determined chrome package).

I'm also not suggesting the "light-weight" approach as substitution for the "heavy-weight", ShareBird doesn't use ShareBird's "light-weight" approach... :-)

I also believe that the idea as a whole needs to be more mature. before we start to incentive new developers to use this method. I initially thought on only one file named customskin.css for easier share of this file, but maybe the idea to have more than one file (one for each window to be skinned) can be better. But I would suggest to name the files like original_fileOverlay.css, e.g., browserOverlay.css or customizeToolbarOverlay.css

But most important, however, is that developers start to take more interest in understanding how this stuff works, how the chrome package works.

Let me please recall an old discussion, taking in mind the "Personas affair":
viewtopic.php?p=7391165#p7391165
Silvermel - A Theme for Firefox and Thunderbird
YATT - Yet Another Theme Tutorial
Don't give a man a fish. Teach him how to fish instead.
User avatar
patrickjdempsey
Posts: 23686
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC
Contact:

Re: Firebird Theme - a "light-weight" Theme

Post by patrickjdempsey »

Fair enough. The restart problem is somewhat annoying... but it only happens once per profile as far as I can tell. Once you have one of these themes working, you can swap between as many as you like with no problems.

I do understand that overlays can be combined with traditional packages... I've actually discovered that I can remove an entire folder of my Instanbird theme all-together and it simply loads the defaults. The global/subfolders are a good candidate for an overlay for any theme considering the fact they are mostly filled with icons that shouldn't even be part of the theme at all... although most of the css files in the global root made up the meat of most themes.

My point was that there should be some form of advocacy for a method for drive-by themers to throw some icons in, edit the chrome.manifest and install.rdf, rename the .JAR and call it a day. I'm working on a sample tutorial theme based on Mosaic Modern Lite that does only that, with a template file thrown in to make building the toolbar icons a little easier.
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/
User avatar
LoudNoise
New Member
Posts: 39900
Joined: October 18th, 2007, 1:45 pm
Location: Next door to the west

Re: Firebird Theme - a "light-weight" Theme

Post by LoudNoise »

How about Sharelite themes since they are light and share items with the existing theme? And, of couse, 'cause of sharebird's original work on the idea.
Post wrangler
"Choose between the Food Select Feature or other Functions. If no food or function is chosen, Toast is the default."
Post Reply