Closed tusj closed 6 years ago
What kind of transparency are you looking for? To see the bar through a widget? Or do you want to see the desktop through the bar? I believe CSS themes were introduced in gtk3, while taffybar is still using gtk2.
It might be time for a gtk3 transition, now that gtk3 is more common.
I actually just "ported" taffybar and gtk-traymanager to gtk3 but am still working out the various bugs that arose, but it's running under gtk3 now (you can go look at the changes I made if you want, I'm sure it could use a lot more work). It was for the same reason as tusj. I wanted to make it semi-transparent but that is only supported under gtk3 with css rgba ;)
@nisstyre56 interesting - how many changes are required? I wouldn't be opposed to switching over, or possibly supporting both.
I've also had some issues pop up with using gtkrc files to color the bar, and I imagine the css approach can't be worse.
@travitch not that many, the changes to the C code are quite straightforward and mostly involve changing stuff that uses the -> syntax to accessors, some headers that are no longer required, and a compatibility fix for constants. See: https://developer.gnome.org/gtk3/stable/gtk-migrating-2-to-3.html
The Haskell code is also mostly straightforward, but a lot of functions were removed involving drawing, and I'm not sure if I got it right, and also not quite sure how to handle switching to the css format yet. Also it's crashing seemingly at random while trying to use openDisplay (at some point it will just start failing by returning a NULL pointer), but I think that may be because of multiple monitors, still investigating.
@travitch Initiallly, I was thinking about setting the background color of the panel transparent, rendering the desktop background visible.
@nisstyre56 Cool! I am looking at your code now.
@tusj That would require both the ARGB support from gtk3 and running a separate composite manager, I believe. I am interested in supporting or switching to gtk3, so this might become possible.
@travitch I have been using some terminals with a transparent background, without running a composite manager, but then the transparency happens between the terminal and the desktop paper, and not on any windows in a layer between the terminal and the desktop. So I believe it would work without a composite manager, but I don't know the internals.
Those terminals are implementing fake transparency manually - they capture the root window pixmap and use it as their background (with suitable filtering). That is why they can't show windows between the terminal and the desktop.
+1
What is the status of this now?
@nisstyre56 How close is your port to gtk3.
Have you done anything other than https://github.com/nisstyre56/taffybar/commit/b621cc20805c3d724a934373394565e03f6b029c?
@nisstyre56 Do you want someone to take over ?
@PierreR @IvanMalison hey, as I recall, I ended up running into a lot of issues porting to gtk3. Considering that the Gtk project is undergoing a lot of changes, maybe it's worth taking a look at rewriting parts of this to support newer versions of Gtk?
Specifically I'm referring to https://blog.gtk.org/2016/09/01/versioning-and-long-term-stability-promise-in-gtk/
@nisstyre56 Yeah that sounds like a good idea, I have some time to take a shot at it right now
I wanted to set some transparent colors for taffybar through its taffybar.rc. But I don't find any documentation on the correct format for specifying transparencent colors, nor can I find any examples for gtkrc's in /usr/share/themes which uses transparency. I do however see gtk css files with transparency set.
Is it not possible? Could you use a css file to configure taffybar?