announce: ob3_theme, ob3_q3stat and my openbox patch

Mike logan at dct.com
Thu Sep 25 02:06:18 EDT 2003


Heyas,

Here's a few things I've been working on for a little while and thought I'd announce to the list, in case anyone had interest.


I know there's already a few theme menu generation scripts floating about, but I decided to make my own.

http://www.gozer.org/my_stuff/c/c/ob3_theme.c

One of the minor advantages of ob3_theme is that it gets the _OPENBOX_PID property from the running instance of openbox, no hunting for killall/pkill, etc. Should work on anything with glib and gdk.

Usage is pretty simple:
    ~/.config/openbox/rc.xml:
      <theme>
        <name>~/.config/openbox/theme</name>
      </theme>

    ~/.config/openbox/menu.xml:
      <menu id="ob3_theme" label="Themes" execute="ob3_theme" />

ob3_theme differs from the other scripts in that rc.xml is not modified when you change themes. Instead you setup the rc to use ~/.config/openbox/theme for the theme. ob3_theme then updates this symlink as themes are changed.


This might be of interest to any quake3 players.

http://www.gozer.org/my_stuff/c/c/ob3_q3stat.c

XQF favorites can be used:
  <menu id="q3a-fav" label="Q3A: Favorites" execute="ob3_q3stat -f -i xqf" />

Or a list specified on the command line:
  <menu id="q3a-q3ut" label="Q3A: Urban Terror"
    execute="ob3_q3stat -i q3ut 207.44.182.28:27960 207.44.132.85:27960" />

For large lists I'd suggest enabling the caching option (-c). If caching is enabled, it lasts for 60 seconds, but can be adjusted with -T [timeout].


And finally my patch, which has a few things xor doesn't want to include, hasn't yet or dislikes the behavior of...

http://www.gozer.org/my_stuff/c/
http://www.gozer.org/my_stuff/c/c/openbox/3.0/beta/openbox-3.0-beta4-logan.diff
http://www.gozer.org/my_stuff/c/c/openbox/3.0/beta/openbox-3.0-beta5-logan.diff

The under mouse placement configuration was taken from Andrew Hesford's post to bugzilla (https://bugzilla.icculus.org/show_bug.cgi?id=801). Looks ok to me, so I see no reason to change it. :)

Note that I use sloppy focus (followMouse), so a majority of the behavioral changes are geared toward that.

These patches for beta4 and 5 add the following:
    makes --disable-debug work regardless of alpha, beta, or cvs releases.
    makes popups for window/workspace cycling configurable.
    makes under mouse window placement configurable.
    makes followMouse work as it should when closing windows, focus under pointer or focusLast (if enabled).
    makes new transient windows focused if the parent is (blackbox/openbox2 behavior). Mozilla's 'Find In Page' dialog is once instance I appreciate this.

And adds the following for rc.xml:
  <popup>
    <cycleFocus>no</cycleFocus>
    <cycleWorkspace>no</cycleWorkspace>
  </popup>

  <placement>
    <scheme>undermouse</scheme>
  </placement>

If <scheme> is anything other than 'undermouse', smart placement (default) is used.


Feedback on any of these is welcome. :)

Mike



More information about the openbox mailing list