Theme Gallery

Since now it’s possible to switch themes using external program, I quickly wrote very simple script that switches theme and makes a screenshot of it. And boom.. theme gallery is ready within 5 minutes.

>> Theme Gallery <<

Theme change on the fly note

I just have completed few hacks/tweaks that allow widgets to do delayed destroying. This feature allows to keep certain widgets alive (like systray) during theme changing process. Now with the last update the “reconfigure on the fly feature” should work really smooth.

Proof! (swf, 1.8 megs)

A configurator try

I wanted to show you what is actually possible now (after “reload config on the fly” feature update).

Let me see this! (swf, 1.5 megs)

Reload configuration on the fly

Last few days I was working on that feature. And it’s kinda done. You can try it out that way:

  1. Start panel.
  2. Edit ~/.config/bmpanel2/bmpanel2rc
  3. Run: “killall -SIGUSR1 bmpanel2”

And the configuration is reloaded. There are few glitches however. For example when user reloads theme, the icons from the tray are detached and then attached again. Some applications (like xchat) will not come back to the tray after this action. Sorry for that, but systray specifications kills me. It’s like the root of all evil. First, I had to drop composite support because of that, and now this….

Why do I need this feature? Well, first of all it is now possible to make a configurator utility (like obconf, obmenu or obkey for openbox). Second thing is the launch bar. You can make a configurator utility for this widget too and no restart of the panel is needed.

Spam filter

Just noticed that the spam filter filtered out few of the real comment. So if I didn’t approve your comment for some reason, sorry for that. Now I’m aware of this thing and I’ll check spam messages from time to time. 🙂

Last theme ports

These ones are last ports of lassekongo83‘s art. Done by weakhead. Also I marked all theme related posts in the blog with a “BMPanel2 Themes” category. You can use this link if you’re looking for themes here.

Kupo (uses DejaVu Sans condensed font).

KupoKupo Finale (uses DejaVu Sans condensed font).

kupo finale bmpanel2 previewPucko Modern (uses DejaVu Sans condensed font).

pucko modern previewStriped (uses DejaVu Sans condensed font).

striped preview

I hope you like it.

Five new themes for bmpanel2

Again, really big job done by weakhead. Five new themes, all themes are ports of lassekongo83‘s art:

Alduin (requires condensed version of the DejaVu font).

Alduin BMPanel2 previewAuriel.

Auriel previewKnurra.

Knurra previewCurvy (uses DejaVu Sans condensed font).

Curvy previewCocoa (uses Arial font).

Cocoa preview

What it means if you have no font specified in a theme? Well, theme engine will simply fall back to some other font. It’s not critical, but it’s recommended to have specified font installed.

And a reminder: you can use “–list” command line option to see where you can place your themes. The first one is very likely located in your home directory (“~/.local/share/bmpanel2/themes”).

And one more thing worth to notice. You’ll need the latest git version to have the best experience with these themes.

Atom/RSS feeds

I’m a passionate user of the RSS/Atom features of the web. For a long time I thought that the best client for these protocols is the google reader, but now I’ve found a firefox extension that does really good job with feeds handling. I’m using Brief add-on.

And since the bmpanel2 development page is located on the code.google.com hosting, there are various feeds available to you as a user. I think the best way to make a bug report or feature request is to use that page. Also, you can use that feed to track issue changes, or for example this one to follow all kind of project updates. It includes: new files to download (themes + releases), issue changes, and project commits (but I don’t use their source repository).

I hope you’ll find this information useful.

Flora theme review

As I mentioned in the previous post, Flora theme contains few unnecessary elements (like “no_separator” parameter). In this post I want to make a full review of the theme and point out all mistakes I see.

  1. “no_separator” parameters in each widget except the taskbar. It is totally unnecessary. Just remove the “separator” parameter from the “panel” section.
  2. “Empty” widget background. It’s nonsense, this widget has no background. But it wasn’t documented, so it’s not a mistake, just the unlucky guess.
  3. “stretched_overlap” with “center_offsets” equals to button corner widths. It’s nonsense too. Remove “center_offsets” and change “stretched_overlap” to “stretched”. It does the same thing. See this image, “bad” is the “stretched” mode (notice the green/red lines), “good” is the “stretched_overlap” mode. If you don’t need an overlapping behaviour for the corners and the center, don’t use “stretched_overlap”.
  4. Be careful with theme layout, don’t mix spaces and tabs. It’s easy to follow if you’re writing your theme from the beginning, but more attention required when editting other person’s theme.
  5. “empty.png” image and using it as a background for clock and system tray. It works for regulating width of the widget, but it’s much better to use the “empty” widget. What “empty.png” image does, is repeating this kind of a process: “Hey, pixel, I want to copy you to that position, what’s your alpha? Oh.. It’s zero, then I should skip you”. And it’s repeated few thousands times per draw. It’s a waste of the CPU power, even though it’s unnoticable it is the fact.

I hope this little review will point out few things. But, please, don’t get me wrong. I’m not blaming people for making bad decisions. And I’m not trying to find the guilty person. My intension is simple – make things better than they are.

P.S. If something is still unclear, please ask questions via comments.

Flora theme pack

Thanks to weakhead for a new theme pack for bmpanel2 called “Flora”. It’s a port of lassekongo‘s theme and it uses a lot of new features in bmpanel2. Actually it works correctly only with the latest git commit. But what I’m totally understanding now it’s that I need to do better docs for theme engine. I don’t know maybe a FAQ about how to do different things, because often I see bad solutions in themes. For example this theme has no separators at all, but the author instead of removing “separator” entry in the panel places “no_separator” everywhere. And it’s definitely my fault, I had to explain better these things.

Flora BMPanel2 previewYou can download this theme pack here.