Hello People,
long time i thinking about new points for haiku, i talk with user, coders from other os, we talk about themes vs no themes in haiku.
So my result is no themes in haiku, but haiku need a handfull stuff for make he desktop personality.
My idear is a effect from a “Chamaeleonidae”.
What can this do?
the haiku desktop and here apps have a base color eg:
SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR))
So when we add a background photo, then make all B_PANEL_BACKGROUND_COLOR
littel bit transparent (60%? or setting able)
Any designer here, he make a mock-up?
Any developer here to help code this?
As far as I remember, BeOS didn’t respect the “alpha” channel of the ViewColor. If Haiku is constistent with BeOS in this aspect, it will consider every color as fully opaque.
I’ve bypassed this limitation by requesting the piece of desktop wallpaper image under the application’s window and setting this (partial) image as application’s background. But this workaround is good only for replicants, since, to preserve the illusion of transparency, nothing should be able to pass between the application’s window and the desktop’s wallpaper.
The problem with something like this is that while it might be pretty (though who knows for sure), it probably would not be very usable or good for the eyes.
We have some examples of this in Windows Vista’s Aero Glass interface, as well as Mac OS X Leopard’s tranparent menubar. Neither one is particularly usable, though it depends on the background image. Also in both cases the alpha blended areas are also blurred to make it slightly more usable.
Another case is the various Linux terminals as well as the Mac OS X terminal that can be partially transparent. While it has a few limited uses in general it is hard to use.
One area where full or partial transparency would be very useful is desktop replicants, as Alex mentioned. I was under the impression that they could indeed be partially transparent, though I would need to check for sure. If they cannot, this useful feature could be added. I’ve seen some pretty neat desktops on LifeHacker.com that use Rainmeter and other such utilities to embed useful things on the desktop in Windows. These almost always use extensive transparency, so having that in our replicants would be useful.
Ugggh…I’ve had my fill of pretty, glassy, photorealism.
What I always loved about Be and now Haiku was how clean and uncluttered the UI was. The current iteration is breathtaking in its simplicity and beauty.
Also, the UI design really POPs when you see it next to OS X, Vista and the Linux distros.
FWIW
PS: Ryan, keep up the good work it’s quite quite nice…
I love the existing Haiku UI. I love everything about it - the tabs, the colors, the simplicity, the opaque windows, the speed - I think it’s pretty good and doesn’t need changing much - if at all. It has personality. We can probably retain things like speed and simplicity by not chasing the OSX feel too much.
As I said above I would like to at least have the option to have parts of replicants transparent, at least when embedded on the Haiku desktop. If that doesn’t work now (I still haven’t checked), then I may investigate it after the alpha 1 release. In other words it may be available for alpha 2. It shouldn’t be too hard to implement.
As for other parts of the UI (windows, window decorators), I don’t know if there are any serious plans to implement transparency. At least not anytime soon.
There may at least be some effort to implement non-rectangular windows like on Dano (and hopefully we can make it as fast as it was there), which certainly has valid uses (but also plenty of pointless eye-candy uses too.) That may not be until R2 or later though.
Of course I’m just one developer, and not even the one who knows the app_server or other graphical parts of Haiku all that well. I also don’t have complete control over what will go into each release. But I try to implement things I want if no one else does, and both of these could be pretty interesting and fun to do. Though the non-rectangular windows could be hard to do right (and efficiently.)