Closed Bug 488650 Opened 16 years ago Closed 16 years ago

Personas doesn't apply to the top part of the window on OpenSolaris with Firefox 3.1b3

Categories

(Mozilla Labs Graveyard :: Personas Plus, defect)

x86
Solaris
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: alfred.peng, Assigned: myk)

Details

Attachments

(1 file)

Joanie reported the issue that "Personas doesn't apply to the top part of the window on OpenSolaris with Firefox" in OpenSolaris community. I also tried Personas 1.0 with Firefox 3.1b3 and the problem can be reproduced. Firefox 3.0.8 is broken the same way. However, Firefox 2.0.0.20 + Personas 0.9.9 works for me. Is there a way we can track where the problem lies, personas? gtk? or the OpenSolaris themes? I changed several GNOME themes, all broken the same. BTW, we also tried to register the membership on Mozilla labs forum and post the question there. Guess the membership evaluation is still under progress. This addon is pretty cool. We'd really hope that it can work on OpenSolaris. Thanks.
Personas needs to be tuned to each individual operating system, because Firefox's use of -moz-appearance applies the OS native theme to the Firefox window, and Personas needs to override that theme in order to style the window itself. Personas currently ships with "skins" for Linux, Mac, Windows XP, and Windows Vista. Since OpenSolaris uses GTK, this might be as simple as applying the Linux skin to OpenSolaris via a chrome.manifest flag. If that doesn't work, then someone with OpenSolaris would need to figure out which elements of the OS theme are interfering with Personas and write rules to override them.
Same problem on FreeBSD 7.1 with Firefox 3.0.8 The footer updates fine, the header does not change at all.
Possible data point: It seems that, at least in part, changing the theme being used has an impact. In particular, installing this theme: https://addons.mozilla.org/en-US/firefox/addon/4908 caused my menu bar to use my selected persona. The toolbar immediately beneath the menu bar also now exhibits characteristics from the persona, though it's not quite right. Before I was using the default "Tango" theme which comes with Firefox in OpenSolaris.
Very interesting, this seems to have fixed the problem for me as well (not quite, but I can see the theme now)... so what is the solution to make this work without the nasa theme?
(In reply to comment #4) > Very interesting, this seems to have fixed the problem for me as well (not > quite, but I can see the theme now)... so what is the solution to make this > work without the nasa theme? Someone would need to go through the default theme on the currently unsupported target platform to find the entity names that need to be overriden and then create a platform-specific skin/ directory (and apply it in chrome.manifest) much like we've already done for windows, mac & linux. This generally involves using DOM inspector to find the entity names that need to be overriden and making the necessary tweaks to the .css files. I suspect that the changes required will be very minor. If you look in these directories now you'll notice the subtle differences between platforms that we had to account for to support their default themes. Unfortunately we don't have access to an OpenSolaris or FreeBSD install, but would happily accept patches to add support.
we'd need to add platform detection in the chrome.manifest to load the appropriate set of .css files from the platform sub-directory http://hg.mozilla.org/labs/personas/file/ff2642e3d7b7/client/chrome.manifest and we'd need to add a platform sub-directory here. http://hg.mozilla.org/labs/personas/file/ff2642e3d7b7/client/chrome/skin/ compare a couple of these directories to get a sense for the level of changes required. again, i suspect it will be quite minor. most issues had to due with differing entity names for things like the toolbox and tabstrip, which we need to override and make transparent. essentially a persona is a background image that's applied to the main window. most of firefox's UI is in layers in front of it, and so we go through and systematically set transparency so that the image shines through while also ensuring that the interface is usable.
myk, Chris, thanks for the information. The attached file applies the skin of Linux to OpenSolaris directly. I've tried it on my OpenSolaris box and it works like a charm :) Guess we don't need to maintain a separate one for OpenSolaris in this case. Also notice that the Personas add-on for Thunderbird is under development. Is there a beta release available so that we can verify whether it works on OpenSolaris box with some tweak to chrome.manifest as below? skin personas classic/1.0 chrome/skin/linux/thunderbird/ application={3550f703-e582-4d05-9a08-453d09bdfdc6} os=SunOS Joanie, please just update $HOME/.mozilla/firefox/*default/extensions/personas@christopher.beard/chrome.manifest to include the line in the attachment and it should work on OpenSolaris. Jeff, maybe the same thing can be applied on FreeBSD? Otherwise, I think it's necessary to have a separate css file for FreeBSD.
Attachment #373618 - Flags: review?(cbeard)
I had to add the following line to ~/.mozilla/firefox/*.default/extensions/personas@christopher.beard/chrome.manifest # Register separate skins for each primary platform so we can fit personas # into each one's very different skin. +skin personas classic/1.0 jar:chrome/personas.jar!/skin/linux/ appversion>=3.0 os=FreeBSD Working perfect now... thanks guys!!! so how do we get these changes added?
This Mozilla lab project is great! Is there any plan for Personas micro release (personas 1.0.1 for example) that could include the trivial changes for OpenSolaris and FreeBSD?
(In reply to comment #7) > Joanie, please just update > $HOME/.mozilla/firefox/*default/extensions/personas@christopher.beard/chrome.manifest > to include the line in the attachment and it should work on OpenSolaris. Indeed it does. Thank you so much!! (In reply to comment #9) > This Mozilla lab project is great! Is there any plan for Personas micro release > (personas 1.0.1 for example) that could include the trivial changes for > OpenSolaris and FreeBSD? +1 for Personas being great. I love how my browser looks now. +1 for doing a micro release, please. While making this change manually isn't hard, I think it would be so, so much nicer if users didn't have to ask around, research the problem, etc. Thanks!
i think ideally we should split out the skin directories by OS target so that even thought they don't diverge today, we can allow for it in the future. it will also make the code base easier to understand. e.g. skin personas classic/1.0 jar:chrome/personas.jar!/skin/openbsd/ appversion>=3.0 os=FreeBSD
Chris, I think to split out separate directories for different OSes will increase maintenance efforts in the current case. As OpenSolaris and Linux (maybe FreeBSD too?) both use GTK, it might be safe for them to share the same CSS specification, at least for now. We can do the split if problem happens in the future. Just my 2 cents.
(In reply to comment #12) > As OpenSolaris and Linux > (maybe FreeBSD too?) both use GTK, it might be safe for them to share the same > CSS specification, at least for now. I think that's probably true. We could change the name of the directory from linux to gtk or the like to make it clearer.
Comment on attachment 373618 [details] [diff] [review] patch for solaris I pinged cbeard, and he said this approach is fine for him. I'll check this in along with the fix for FreeBSD. Note, however, that neither of us nor other Personas developers are running either OS, and we'll only be testing the GTK theme on Linux, so we'll rely on y'all to tell us when our changes break these two OSes and provide us with the fixes for them (including creating separate themes for Solaris and FreeBSD if necessary).
Attachment #373618 - Flags: review?(cbeard) → review+
Fixed for both Solaris and FreeBSD by changeset http://hg.mozilla.org/labs/personas/rev/6a8dcf737ba6. This fix has made it into Personas 1.1rc2: http://people.mozilla.com/~cbeard/personas/dist/personas-v1.1rc2.xpi So it'll be in the final version of Personas 1.1, which is the next version to be released.
Assignee: cbeard → myk
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Product: Mozilla Labs → Mozilla Labs Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: