Stalonetray + Openbox = border?

hey all im using Openbox + stalonetray and i have stalonetray set to be transparent and started with the stalonetray -w command to be able to control it with obconf but it shows up with a 2px border around it that i cannot get rid of and if i do the osd border size to 0 in my themerc it still hve a very small border. So can someone help me get rid of this annoying border issue? oh yea and in obconf settings dont draw a border around undecorated windows doesnt do anything

I'm bumping this thread as I have this issue too. Anyone found a solution?
My stalonetrayrc:
# vim:filetype=config:tw=80:et
# This is sample ~/.stalonetrayrc, resembling default configuration.
# Remember: command line parameters take precedence.
# Directives introduced in 0.7.6 are marked with "NEW in 0.7.6"
# stalonetray understands following directives
# background <color> # color can be specified as an HTML hex triplet or
# as a name from rgb.txt, note that '#' must be quoted
background "#777777"
# decorations <decspec> # set trays window decorations; possible values for
# decspec are: all, title, border, none
decorations none
# display <display name> # as usual
# dbg_level <int> # controls the amount of debug info (for this setting to
# have effect, stalonetray sources must have been
# configured and compiled with --enable-debug)
# dbg_level 0
# fuzzy_edges [<level>] # enable fuzzy edges and set fuzziness level. level
# can be from 0 (disabled) to 3; this setting works
# with tinting and/or transparent and/or pixmap
# backgrounds (NEW in 0.7)
fuzzy_edges 0
# geometry <geometry> # tray's geometry in standard X notation
geometry 120x24-0-0
# grow_gravity <gravity> # one of N, S, E, W, NW, NE, SW, SE; tray will grow
# in the direction opposite to one specified by
# grow_gravity; if horizontal or vertical
# direction is not specified, tray will not grow in
# that direction
grow_gravity NW
# icon_gravity <gravity> # icon placement gravity, one of NW, NE, SW, SE
icon_gravity NW
# icon_size <int> # specifies dimensions of typical icon slot
icon_size 24
# ignore_icon_resize [<bool>] # ignore icon attempts to resize their windows
# (NEW in 0.7)
ignore_icon_resize false
# max_width <int> # specifies maximal tray's width (0 = no limit)
max_width 0
# max_height <int> # specifies maximal tray's height (0 = no limit)
max_height 0
# no_shrink [<bool>] # disables shrink-back mode (NEW in 0.7)
no_shrink false
# parent_bg [<bool>] # whether to use pseudo-transparency
# (looks better when reparented into smth like FvwmButtons)
parent_bg false
# pixmap_bg <path_to_xpm> # use pixmap from specified xpm file for (tiled) background
# pixmap_bg /home/user/.stalonetraybg.xpm
# respect_icon_hints [<bool>] # try to respect icon hints (NEW in 0.7)
respect_icon_hints false
# skip_taskbar [<bool>] # hide tray`s window from the taskbar
skip_taskbar true
# sticky [<bool>] # make a tray`s window sticky across the
# desktops/pages
sticky true
# tint_color <color> # set tinting color (NEW in 0.7)
tint_color white
# tint_level <level> # set tinting level; level ranges from 0 (disabled)
# to 255 (NEW in 0.7)
tint_level 0
# transparent [<bool>] # whether to use root-transparency (background
# image must be set with Esetroot or compatible utility)
transparent true
# vertical [<bool>] # whether to use vertical layout (horisontal layout
# is used by default)
vertical false
# window_layer <layer> # set the EWMH-compatible window layer; one of:
# bootom, normal, top
window_layer normal
# window_type <type> # set the EWMH-compatible window type; one of:
# dock, normal, toolbar, utility
window_type dock
# withdrawn [<bool>] # start withdrawn (NEW in 0.7, prior to that
# withdrawn mode was default!)
withdrawn false
# xsync [<bool>] # whether to operate on X server synchronously (SLOOOOW)
xsync false

Similar Messages

  • Devilspie, stalonetray and Openbox aren't playing nicely.

    .devilspie/stalonetray.ds:
    (if
    (matches (application_name) "stalonetray")
    (begin
    (wintype "dock")
    When I run devilspie, I get this error:
    (devilspie:7430): Wnck-WARNING **: Unhandled action type _OB_WM_ACTION_UNDECORATE
    Help?
    Also, please don't tell me to set stalonetray as withdrawn, or to play around in obconf. I need openbox to ignore the fact that stalonetray exists so that it wont draw a border. I need devilspie to tell stalonetray to be a dock so that xcompmgr will ignore it with the -cC switch.

    So, does that mean that there is no way for me to simultaneously have xcompmgr ignore stalonetray and have openbox not draw a border around it?

  • [solved] White border around urxvt (Openbox / Dyne)

    Hi, dear community.
    I'm using Openbox and urxvt as console terminal. Everything is fine but white border around urxvt window is really annoying.
    Screenshot:
    Notice, there are no white border around another application window.
    .Xdefaults:
    ! c o l o r - s e t t i n g s
    *background: #222222
    *foreground: #EEEEEE
    ! Default
    ! 0: black
    *color0: #222222
    *color8: #222222
    ! 1: red
    *color1: #9f6767
    *color9: #9f6767
    ! 2: green
    *color2: #92ac68
    *color10: #92ac68
    ! 3: yellow
    *color3: #d0d293
    *color11: #d0d293
    ! 4: blue
    *color4: #9aacc3
    *color12: #9aacc3
    ! 5: magenta
    *color5: #bb77a4
    *color13: #bb77a4
    ! 6: cyan
    *color6: #77bbb5
    *color14: #77bbb5
    ! 7: white
    *color7: #777777
    *color15: #777777
    ! u r x v t
    urxvt*geometry: 130x45
    !URxvt*font: xft:terminus:size=8
    urxvt*saveLines:32767
    urxvt*internalBorder: 0
    urxvt*externalBorder: 0
    urxvt*scrollBar: false
    urxvt*scrollColor: #EEEEEE
    urxvt*scrollBar_right: true
    urxvt*scrollColor: #000000
    urxvt*externalBorder: 0
    urxvt*internalBorder: 0
    urxvt*borderless: 1
    urxvt*perl-lib: /usr/lib/urxvt/perl
    urxvt.perl-ext-common: default,tabbed,matcher
    urxvt*urlLauncher: firefox
    urxvt*matcher.button: 1
    As you can see - no white color usage, and options that probably turning border off are on.
    Can someone help with it, or suggest where to search for solution?
    Last edited by kvictor (2009-10-22 07:39:15)

    skottish, thank you so much! At least I found where to search thing to fix.
    There was one problem with you solution - if you change window.client.padding lines to the zero, you will lost ability to resize terminal window. The best fix is to change this lines:
    window.active.client.color: #XXXXXX
    window.active.client.color: #XXXXXX
    and set #000000 or what would you like.
    Anyway, thanks again, you gave me a key to solution!

  • Get rid of tiny border in openbox

    Hey there all,
    if i undecorate a window openbox, there is still a tiny line around it.
    in fluxbox, the toggle decor will remove it.  undecorate gets close in openbox, but not all the way gone.
    any ideas?
    thanks

    For future reference, you can disable this 1 pixel border by doing either of the following:
    1. Run obconf, then go to the Appearance tab and untick the Windows retain a border when undecorated option.
    2. Edit ~/.config/openbox/rc.xml and change <keepBorder>yes</keepBorder> to <keepBorder>no</keepBorder>

  • Need help changing the window border in OPENBOX

    Can somebody help me change the window border in openbox, I have already used obconf but I don't like the way there borders look, does any one now of any other programs that can change the window border?

    To remove the pink, right click on your desktop, select properties, settings, and change your color bit from 16 to 32.

  • [SOLVED]how to autohide stalonetray in openbox?

    or let stalonetray stay below all other windows?
    thanks in advance
    Last edited by omnipotent (2014-06-27 11:10:36)

    omnipotent wrote:or let stalonetray stay below all other windows?
    Try
    window_strut none
    window_layer bottom
    This makes the tray stay below other windows on my machine.
    man stalonetray wrote:
    --window-layer layer, window_layer layer
               Sets the EWMH-compliant layer of tray`s window. Possible values for
               layer: bottom, normal, top. Default value: normal.
    --window-strut mode, window_strut mode
               Enable window struts for tray window (to avoid covering of tray
               window by maximized windows). Mode defines to which screen border
               tray window will be attached. It can be either top, bottom, left,
               right, none, or auto (default).
    Last edited by 2ManyDogs (2013-06-26 07:11:16)

  • Stalonetray / Panel openbox questions

    I'm using openbox, and with use of keybindings, a panel isn't necessary, I'd rather just have the extra screen space at this point (unless someone has a great reason for using a panel).
    I added stalonetray for pidgin and wireless network configuration notifications. Is there any way to add a clock to display here?
    Also, I was looking for an "expose" like function. In gnome I used compiz for it, I installed skippy but there is a delay. I.e. when I hit F11 it opens up right away but it will show, say, the home page of firefox rather than the page I'm currently on. Anyone know why?

    Inxsible wrote:
    What I normally do is leave a margin of say 16 px and have a 1 line conky that displays the time/date uptime, cpu usage mem, swap eth0 link updates and Weather
    For a clock, if you don't want to use Conky, you can also install lal. Its a very basic app that just shows you the clock and it aligns to where ever you have your systray running.
    Here's a screenshot of my musca setup --- I use the same conky and systray config in openbox as well. I was just to lazy too go in openbox and get the screenshot
    In openbox, you just won't have the windows tiled as I do in the shot.
    http://omploader.org/tMWw0bg
    I prefer to have conky or a panel on the top side, it's more visible that way for me...
    BTW that's a nice screenshot, I may need to try out this musca thingy

  • GNOME / Openbox - Can I "force" window border on new GTK3+ programs?

    How do I get the window borders (including close/max/minimize buttons) of openbox in new gnome 3.10 applications, who actualy use "Client Side Decorations" like nautilus???

    You should be able to enable decorations by putting this in your rc.xml
    <applications>
    <application class="Nautilus">
    <decor>yes</decor>
    </application>
    </applications>
    This has the same effect as (un)decorate action from window client menu that comes up by default when you right click titlebar, which doesn't have any effect either.

  • Script for Window tiling in openbox

    I wanted to use a tiling window manager but didn't want to leave openbox. So I started using PyTyle and PyTyle2 but they both took up more RAM than I could afford to let them use in my lowly desktop. So I wrote a script to do my tiling for me using wmctrl and xwininfo. And here are the results:
    GRID mode:
    BOTTOM MASTER mode:
    TOP MASTER mode:
    LEFT MASTER mode (also the default) :
    RIGHT MASTER mode:
    MAX mode:
    HORIZONTAL SPLIT mode:
    VERTICAL SPLIT  mode :
    The entire thing is just one bash script that I named wmtiler.sh
    The script itself is rather poorly written as I don't have much experience in bash.
    #!/bin/bash
    # use wmctrl and xwininfo to tile windows
    #currently supports the "LEFT_MASTER" mode (default),
    # "RIGHT_MASTER" mode (-r) ,
    # "TOP_MASTER" mode (-t),
    #"BOTTOM_MASTER" mode (-b) ,
    #"GRID" mode (-g),
    #"MAX" mode (-m) ,
    # "VERTICAL_SPLIT" mode (-v) and
    #"HORIZONTAL_SPLIT" mode (-h)
    #NOTE: wmctrl sets the properties of the window itself i.e. the window manager's borders
    #and title bars are not taken into account while setting the coordinates. So for best results
    #set the window manager to display all windows undecorated
    #or manually set the title bar height here
    #List of things to do:
    # 1. Get the values of the TOP_MARGIN, BOTTOM_MARGIN, LEFT_MARGIN and RIGHT_MARGIN from the window manager
    # 2. Get the MASTER_WIDTH for the default LEFT_MASTER, RIGHT_MASTER layouts as a parameter , set a default if not provided
    # 3. Get the MASTER_HEIGHT for the default TOP_MASTER, BOTTOM_MASTER layouts as a parameter , set a default if not provided
    # 4. Get the NUMBER_OF_ROWS for the grid mode as a parameter, set a default if not provided
    # 5. Get the TITLE_BAR_HEIGHT from the window manager
    # 6. Restructure the code to use functions
    # 7. Provide mechanisms to increase/decrease the MASTER area
    # 8. Provide mechanisms to increase/decrease the number of windows in the MASTER area
    #List of bugs
    # 1. If called from a key combination, there may not be a :ACTIVE: window and in which case the results are not as desired.
    # 2. The title bar plays havoc with the height of windows
    #need to find a way to get these from the window manager
    TOP_MARGIN=18
    BOTTOM_MARGIN=18
    LEFT_MARGIN=0
    RIGHT_MARGIN=0
    TITLE_BAR_HEIGHT=17 #works best if all the windows are border less and this is set to zero
    #we are now using xwininfo to get these
    #HEIGHT=1080
    #WIDTH=1920
    #either set these in a file or calculate them from the screen properties
    MASTER_WIDTH=1344
    MASTER_HEIGHT=600
    #set the number of rows we want for the grid mode
    NUMBER_OF_ROWS=2
    #looks nice :)
    USELESS_GAPS=1
    #see what the user wants to do
    case $1 in
    "-g")
    MODE="GRID"
    "-m")
    MODE="MAX"
    "-v")
    MODE="VERTICAL_SPLIT"
    "-h")
    MODE="HORIZONTAL_SPLIT"
    "-t")
    MODE="TOP_MASTER"
    "-b")
    MODE="BOTTOM_MASTER"
    "-r")
    MODE="RIGHT_MASTER"
    MODE="LEFT_MASTER"
    esac
    #get the desktop parameters
    HEIGHT=`xwininfo -root | grep 'Height:' | awk '{print $2}'`
    WIDTH=`xwininfo -root | grep 'Width:' | awk '{print $2}'`
    #get the window parameters
    #get the current desktop
    CURR_DESK=` wmctrl -d | grep '* DG:'| awk '{print $1}'`
    #get the total number of windows.
    #NOTE: we are not directly using grep to get the windows from the current desktop as it may serve up some false positives
    TOTAL_WINDOWS=`wmctrl -lx | wc -l`
    #counter
    i=1
    #Assume that there are no windows in the current desktop
    WINDOWS_IN_DESK=0
    while [ $i -le $TOTAL_WINDOWS ] ; do
    CURR_LINE=`wmctrl -lx | head -n $i | tail -n 1`
    WIN_DESK=`echo $CURR_LINE | awk '{print $2}'`
    if [ $WIN_DESK -eq $CURR_DESK ] ; then
    #save the various window properties as supplied by wmctrl . Un comment rest if necessary. Include more if necessary
    WIN_XID[$WINDOWS_IN_DESK]=`echo $CURR_LINE | awk '{print $1}'`
    # WIN_XOFF[$WINDOWS_IN_DESK]=`echo $CURR_LINE | awk '{print $2}'`
    # WIN_YOFF[$WINDOWS_IN_DESK]=`echo $CURR_LINE | awk '{print $3}'`
    # WIN_WIDTH[$WINDOWS_IN_DESK]=`echo $CURR_LINE | awk '{print $4}'`
    # WIN_HEIGHT[$WINDOWS_IN_DESK]=`echo $CURR_LINE | awk '{print $5}'`
    #see if the window is "IsViewable" or "IsUnMapped" i.e minimized
    MAP_STATE=`xwininfo -id ${WIN_XID[$WINDOWS_IN_DESK]} | grep "Map State:" | awk '{print $3}'`
    #we don't want the minimized windows to be considered while allocating the space
    if [ "$MAP_STATE" == "IsViewable" ]; then
    WINDOWS_IN_DESK=$((WINDOWS_IN_DESK+1))
    fi
    fi
    i=$((i+1))
    done
    #get the xid of the active window.
    ACTIVE_WIN=`xprop -root | awk '/_NET_ACTIVE_WINDOW\(WINDOW\)/{print $NF}'`
    #set the selected layout
    #NOTE: these would look better if they were individual functions :)
    case $MODE in
    "LEFT_MASTER")
    #define the properties of the master area
    X=$LEFT_MARGIN
    Y=$TOP_MARGIN
    #set the width to the default MASTER_WIDTH
    W=$MASTER_WIDTH
    H=$(( HEIGHT -TOP_MARGIN - BOTTOM_MARGIN -TITLE_BAR_HEIGHT -USELESS_GAPS))
    #set the active window to the "master "area
    wmctrl -r :ACTIVE: -e "0,$X,$Y,$W,$H"
    #now that the master window has been set all further windows would have to start from here
    X=$((MASTER_WIDTH+USELESS_GAPS))
    #get whatever width is left
    W=$((WIDTH - MASTER_WIDTH -USELESS_GAPS))
    #the height would be equally shared by the rest of the windows
    H=$((H/(WINDOWS_IN_DESK - 1) - TITLE_BAR_HEIGHT -USELESS_GAPS ))
    i=0
    while [ "$i" -le "$WINDOWS_IN_DESK" ] ; do
    #avoid setting the attributes of the active window again
    if [[ "${WIN_XID[$i]}" -ne "$ACTIVE_WIN" ]] ; then
    #set the attributes
    wmctrl -i -r ${WIN_XID[$i]} -e "0,$X,$Y,$W,$H"
    #set the Y co-ordinate for the next window.
    Y=$((Y+H+TITLE_BAR_HEIGHT+USELESS_GAPS))
    fi
    #preselect the next window
    i=$((i+1))
    done
    "RIGHT_MASTER")
    #define the properties of the master area
    X=$LEFT_MARGIN
    Y=$TOP_MARGIN
    #get whatever width is left
    W=$((WIDTH - MASTER_WIDTH -USELESS_GAPS))
    #the height would be equally shared by the non master windows
    H=$(((HEIGHT -TOP_MARGIN -BOTTOM_MARGIN )/(WINDOWS_IN_DESK-1) -TITLE_BAR_HEIGHT -USELESS_GAPS))
    i=0
    while [ "$i" -le "$WINDOWS_IN_DESK" ] ; do
    #avoid setting the attributes of the active window
    if [[ "${WIN_XID[$i]}" -ne "$ACTIVE_WIN" ]] ; then
    #set the attributes
    wmctrl -i -r ${WIN_XID[$i]} -e "0,$X,$Y,$W,$H"
    #set the Y co-ordinate for the next window.
    Y=$((Y+H+TITLE_BAR_HEIGHT+USELESS_GAPS))
    fi
    #preselect the next window
    i=$((i+1))
    done
    #set the co-ordinates for the MASTER_WINDOW
    X=$((W+USELESS_GAPS))
    Y=$TOP_MARGIN
    W=$MASTER_WIDTH
    H=$(( HEIGHT -TOP_MARGIN - BOTTOM_MARGIN -TITLE_BAR_HEIGHT -USELESS_GAPS))
    #set the active window to the "master "area
    wmctrl -r :ACTIVE: -e "0,$X,$Y,$W,$H"
    "TOP_MASTER")
    #define the properties of the master area
    X=$LEFT_MARGIN
    Y=$TOP_MARGIN
    #set the width taking into acount the margins
    W=$((WIDTH-LEFT_MARGIN-RIGHT_MARGIN))
    H=$MASTER_HEIGHT
    #set the active window to the "master "area
    wmctrl -r :ACTIVE: -e "0,$X,$Y,$W,$H"
    #set the y co-ordinate
    Y=$((Y+H+USELESS_GAPS+TITLE_BAR_HEIGHT))
    #Distribute the width amon the remaining windows
    W=$((W/(WINDOWS_IN_DESK-1)))
    #set the new height
    H=$((HEIGHT-MASTER_HEIGHT-TOP_MARGIN-BOTTOM_MARGIN-TITLE_BAR_HEIGHT-USELESS_GAPS))
    i=0
    while [ "$i" -le "$WINDOWS_IN_DESK" ] ; do
    #avoid setting the attributes of the active window again
    if [[ "${WIN_XID[$i]}" -ne "$ACTIVE_WIN" ]] ; then
    #set the attributes
    wmctrl -i -r ${WIN_XID[$i]} -e "0,$X,$Y,$W,$H"
    #set the X co-ordinate for the next window.
    X=$((X+W+USELESS_GAPS))
    fi
    #preselect the next window
    i=$((i+1))
    done
    "BOTTOM_MASTER")
    #define the properties of the master area
    X=$LEFT_MARGIN
    Y=$TOP_MARGIN
    #Distribute the width among the non master windows
    W=$(((WIDTH-LEFT_MARGIN-RIGHT_MARGIN)/(WINDOWS_IN_DESK-1)))
    #set the new height
    H=$((HEIGHT-MASTER_HEIGHT-TOP_MARGIN-BOTTOM_MARGIN-TITLE_BAR_HEIGHT-USELESS_GAPS))
    i=0
    while [ "$i" -le "$WINDOWS_IN_DESK" ] ; do
    #avoid setting the attributes of the active window again
    if [[ "${WIN_XID[$i]}" -ne "$ACTIVE_WIN" ]] ; then
    #set the attributes
    wmctrl -i -r ${WIN_XID[$i]} -e "0,$X,$Y,$W,$H"
    #set the X co-ordinate for the next window.
    X=$((X+W+USELESS_GAPS))
    fi
    #preselect the next window
    i=$((i+1))
    done
    #set the co-ordinates
    X=$LEFT_MARGIN
    Y=$((Y+H+USELESS_GAPS+TITLE_BAR_HEIGHT))
    W=$((WIDTH-LEFT_MARGIN-RIGHT_MARGIN))
    H=$MASTER_HEIGHT
    #set the active window to the "master "area
    wmctrl -r :ACTIVE: -e "0,$X,$Y,$W,$H"
    "GRID")
    #find the number of windows in the top row and in each subsequent row except for the bottom row.
    NORMAL_ROW_WINDOWS=$((WINDOWS_IN_DESK/NUMBER_OF_ROWS))
    #the bottom row ould have as many windows as the top row and any left over
    BOTTOM_ROW_WINDOWS=$((NORMAL_ROW_WINDOWS + WINDOWS_IN_DESK%NUMBER_OF_ROWS))
    WINDOWS_NOT_IN_BOTTOM_ROW=$((WINDOWS_IN_DESK-BOTTOM_ROW_WINDOWS))
    #set the co-ordinates for the top row
    X=$LEFT_MARGIN
    Y=$TOP_MARGIN
    #the height of each window would remain the same regardless of which row it is in
    H=$(((HEIGHT-TOP_MARGIN-BOTTOM_MARGIN)/NUMBER_OF_ROWS - TITLE_BAR_HEIGHT))
    #Find the width of each window in the top row, this would be the same for each row except for the bottom row which may contain more windows
    NORMAL_ROW_WIDTH=$((((WIDTH-LEFT_MARGIN-RIGHT_MARGIN)/NORMAL_ROW_WINDOWS)-USELESS_GAPS*NORMAL_ROW_WINDOWS))
    BOTTOM_ROW_WIDTH=$((((WIDTH-LEFT_MARGIN-RIGHT_MARGIN)/BOTTOM_ROW_WINDOWS)-USELESS_GAPS*NORMAL_ROW_WINDOWS))
    #start counting from zero
    i=0
    #we havent processed any windows yet
    CURRENT_ROW_WINDOWS=0
    #we will be processing the 1st row
    CURRENT_ROW=1
    while [ "$i" -le "$WINDOWS_IN_DESK" ] ; do
    if [[ "$CURRENT_ROW" -lt "$NUMBER_OF_ROWS" ]]; then
    if [[ "$CURRENT_ROW_WINDOWS" -eq "NORMAL_ROW_WINDOWS " ]]; then
    CURRENT_ROW=$((CURRENT_ROW+1))
    if [[ "$CURRENT_ROW" -eq "$NUMBER_OF_ROWS" ]] ; then
    X=$LEFT_MARGIN
    Y=$((Y+H+TITLE_BAR_HEIGHT+USELESS_GAPS))
    W=$BOTTOM_ROW_WIDTH
    else
    CURRENT_ROW_WINDOWS=0
    fi
    fi
    if [[ "$CURRENT_ROW_WINDOWS" -eq "0" ]] ; then
    X=$LEFT_MARGIN
    W=$NORMAL_ROW_WIDTH
    if [[ "$CURRENT_ROW" -ne "1" ]]; then
    Y=$((Y+H+TITLE_BAR_HEIGHT+USELESS_GAPS))
    fi
    fi
    fi
    wmctrl -i -r ${WIN_XID[$i]} -e "0,$X,$Y,$W,$H"
    X=$((X+W+USELESS_GAPS))
    CURRENT_ROW_WINDOWS=$((CURRENT_ROW_WINDOWS+1))
    i=$((i+1))
    done
    "MAX")
    X=$LEFT_MARGIN
    Y=$TOP_MARGIN
    H=$((HEIGHT-TOP_MARGIN-BOTTOM_MARGIN))
    W=$((WIDTH-LEFT_MARGIN-RIGHT_MARGIN))
    i=0
    while [ "$i" -le "$WINDOWS_IN_DESK" ] ; do
    #avoid setting the attributes of the active window
    if [[ "${WIN_XID[$i]}" -ne "$ACTIVE_WIN" ]] ; then
    #set the attributes
    wmctrl -i -r ${WIN_XID[$i]} -e "0,$X,$Y,$W,$H"
    fi
    #preselect the next window
    i=$((i+1))
    done
    #now that all the windows have been set set the master on top
    wmctrl -r :ACTIVE: -e "0,$X,$Y,$W,$H"
    "VERTICAL_SPLIT")
    X=$LEFT_MARGIN
    Y=$TOP_MARGIN
    H=$((HEIGHT-TOP_MARGIN-BOTTOM_MARGIN))
    W=$(((WIDTH-LEFT_MARGIN-RIGHT_MARGIN)/WINDOWS_IN_DESK - USELESS_GAPS))
    i=0
    while [ "$i" -le "$WINDOWS_IN_DESK" ] ; do
    wmctrl -i -r ${WIN_XID[$i]} -e "0,$X,$Y,$W,$H"
    #preselect the next window
    X=$((X+W+USELESS_GAPS))
    i=$((i+1))
    done
    "HORIZONTAL_SPLIT")
    X=$LEFT_MARGIN
    Y=$TOP_MARGIN
    H=$(((HEIGHT-TOP_MARGIN-BOTTOM_MARGIN)/WINDOWS_IN_DESK -TITLE_BAR_HEIGHT -USELESS_GAPS))
    W=$((WIDTH-LEFT_MARGIN-RIGHT_MARGIN))
    i=0
    while [ "$i" -le "$WINDOWS_IN_DESK" ] ; do
    wmctrl -i -r ${WIN_XID[$i]} -e "0,$X,$Y,$W,$H"
    #preselect the next window
    Y=$((Y+H+TITLE_BAR_HEIGHT+USELESS_GAPS))
    i=$((i+1))
    done
    esac
    #say bye
    exit 0
    I call the script using the openbox key bindings for example:
    <keybind key="W-g">
    <action name="Execute">
    <command>/home/default/bin/wmtiler.sh -g</command>
    </action>
    </keybind>
    The advantage this holds, in my case, is that it provides me with on demand automatic tiling with a momentary spike in CPU usage but no sustained RAM usage.
    This should work on all window managers in which wmctrl works.
    Of course  there are plenty of things still to do and many bugs to fix, some of which are documented in the script itself
    Nothing would make me happier if somebody else found this useful.

    Hmmm.... iconified windows should be totally ignored. Could you post the output of xwininfo for the iconified window? for example;
    Get tet a list of windows open by issuing the wmctrl -lxG command
    [default@arch_desktop ~]$ wmctrl -lxG
    0x01400001 -1 4 0 1911 26 Conky.Conky arch_desktop conky
    0x01a00024 0 1346 52 576 254 surf.surf arch_desktop 24Online Client
    0x0200066a 1 1345 54 569 483 terminal.Terminal arch_desktop Terminal - default@arch_desktop:~
    0x02001231 1 1345 538 569 483 terminal.Terminal arch_desktop Terminal - default@arch_desktop:~
    0x02200004 -1 0 971 1920 109 avant-window-navigator.Avant-window-navigator arch_desktop avant-window-navigator
    0x01200039 1 0 18 1344 1026 chromium.Chromium arch_desktop Post a reply / Arch Linux Forums - Chromium
    0x0200279f 0 2 52 933 431 terminal.Terminal arch_desktop Terminal - default@arch_desktop:~
    and taking the window x id of the minimized surf window and issuing the xwininfo command:
    [default@arch_desktop ~]$ xwininfo -id 0x01a00024
    xwininfo: Window id: 0x1a00024 "24Online Client"
    Absolute upper-left X: 1345
    Absolute upper-left Y: 34
    Relative upper-left X: 1
    Relative upper-left Y: 18
    Width: 576
    Height: 254
    Depth: 24
    Visual: 0x21
    Visual Class: TrueColor
    Border width: 0
    Class: InputOutput
    Colormap: 0x20 (installed)
    Bit Gravity State: NorthWestGravity
    Window Gravity State: NorthWestGravity
    Backing Store State: NotUseful
    Save Under State: no
    Map State: IsUnMapped
    Override Redirect State: no
    Corners: +1345+34 --1+34 --1-792 +1345-792
    -geometry 576x254--2+16
    As you can see, for me , the "Map State:" is  "IsUnMapped" for the iconified windows and this set of commands is exactly what I am doing to ignore iconified windows. What I need to know is that is there some other type of map state that I need to ignore.
    As for the feature requests I already had it in my mind to do the first three points that you mentioned. Since the script is intentionally designed not to run as a background process, there has to be some sort of a backing store like maybe a simple text file in which to save the state and read it from there on the next command invocation. The advantage would be it would take a momentary spike in CPU utilization and no sustained RAM utilization like I mentioned before. Disadvantage being the user would have to issue a command to actually get the tiling done.
    Regarding your fourth point, did you mean setting the window to 50% width automatically on moving it to the screen edge like it is done in KWIn and Win7? If you want it to be done automatically then that would involve tracking the movement of the mouse and windows on the screen continuously. This is something I'd rather do in some other, tinier faster, script and call this script from that on specific events.
    However, if you are willing to press a key while focused on a window and have it resized to max height and 50% of screen width either on the right side or on the left side, depending on the key combination, while leaving the other windows unaffected, then that can be arranged very simply. 

  • Conky displays on top in openbox. [Solved]

    Probably a dum question, but I have been trying out openbox lately.  But conky when it starts displays on top of everything.  I am coming from fluxbox where it diplays properly on the bottom layer. 
    here is my autostart.sh and conkyrc
    # Set wallpaper
    eval `cat ~/.fehbg`&
    cp ~/.gtkrc-2.0_conf ~/.gtkrc-2.0&
    ## Apps after openbox starts
    conky&
    (sleep 2 && pypanel)&
    # set to yes if you want Conky to be forked in the background
    background no
    cpu_avg_samples 2
    net_avg_samples 2
    #out_to_console no
    # Use Xft?
    use_xft yes
    # Xft font when Xft is enabled
    xftfont snap
    own_window_colour 222222
    # Text alpha when using Xft
    xftalpha 0.8
    # Update interval in seconds
    update_interval 1
    # Create own window instead of using desktop (required in nautilus)
    own_window yes
    own_window_transparent yes
    own_window_hints undecorated,below,skip_taskbar
    own_window_type override
    # Use double buffering (reduces flicker, may not work for everyone)
    double_buffer yes
    # Minimum size of text area
    minimum_size 120 1
    # Draw shades?
    draw_shades no
    # Draw outlines?
    draw_outline no
    # Draw borders around text
    draw_borders no
    # Stippled borders?
    stippled_borders no
    # border margins
    border_margin 1
    # border width
    border_width 1
    # Default colors and also border colors
    default_color white
    default_shade_color white
    default_outline_color white
    # Text alignment, other possible values are commented
    #alignment top_left
    alignment bottom_left
    #alignment bottom_right
    #alignment top_right
    # Gap between borders of screen and text
    gap_x 2
    gap_y 2
    # Add spaces to keep things from moving about? This only affects certain objects.
    use_spacer no
    # Subtract file system buffers from used memory?
    no_buffers yes
    # set to yes if you want all text to be in uppercase
    uppercase no
    TEXT
    ${font Arial-size=8}┌─${font}[ ${sysname} ${kernel}
    ${font Arial-size=8}├────${font}[ CPU: ${cpu} %
    ${font Arial-size=8}├────${font}[ Memory: ${memperc} %
    ${font Arial-size=8}├────${font}[ Uptime: ${uptime}
    ${font Arial-size=8}└────${font}[ Battery: ${battery}
    ${font Arial-size=8}┌─${font}[ Filesystems
    ${font Arial-size=8}├────${font}[ / : ${fs_used /}/${fs_size /}
    ${font Arial-size=8}└────${font}[ /home: ${fs_used /home}/${fs_size /home}
    ${font Arial-size=8}┌─${font}[ Packages
    ${font Arial-size=8}└────${font}[ ${execi 120 python /home/semperfiguy/bin/pacnotify.py}
    Last edited by semperfiguy (2008-01-05 14:52:55)

    Your problem is the Own_window_type option being 'override', I believe. Set that to 'desktop' and hopefully you'll be good to go. (if not, I can post my .conkyrc here, which works fine in openbox and you can copy the relevant parts of it out)

  • Keeping stalonetray on top when you toggle show desktop

    I'm sure it's easy, but I can't seem to get my stalonetray to stay visible (it toggles off with the rest of the windows) when I hit W-d to toggle show desktop (LXDE/openbox).
    Here's my .staylonetrayrc:
    transparent true
    sticky true
    skip_taskbar true
    geometry 124x24+1190-0
    window_layer top
    window_type toolbar
    .config/openbox/lxde-rc.xml (just the part with the show desktop keybinding)
    <keybind key="W-d">
    <action name="ToggleShowDesktop"/>
    </keybind>
    Any ideas? I've tried the other values for window_type (dock,utility, normal) but it doesn't change anything.
    Thanks!
    Scott
    Last edited by firecat53 (2008-09-23 20:00:47)

    Hopefully this addresses the same problem that you're having:
    http://bbs.archlinux.org/viewtopic.php?id=39842
    --EDIT--
    By the way, Scott, what an awesome name. I think that it may, in fact, be the best... EVER.
    Last edited by skottish (2008-09-23 20:41:15)

  • Ratpoison border color

    Well, I dabbled in openbox and fluxbox for a while, but have switched back to ratpoison 'cos despite its flaws, its mouseless charm is lovable
    Anyway, although I haven't changed my ratpoisonrc from before, my border around urxvt is now white instead of black, and I don't know why... the border is black around firefox, as desired, but  the border is either white or transparent around urxvt.
    The Xdefaults options I have affecting urxvt are:
    *foreground: #B0B0B0
    ! Green
    !*background: #202f37
    !*background: #20372f
    ! Brown
    !*background: #372f20
    ! Blue
    !*background: #101520
    !*background: #151825
    *background: #232b42
    ! Black + DarkGrey
    *color0: #000000
    *color8: #666666
    ! DarkRed + Red
    *color1: #b45151
    *color9: #fe8686
    ! DarkGreen + Green
    *color2: #aece92
    *color10: #97fa97
    ! DarkYellow + Yellow
    *color3: Khaki3
    *color11: #efe58b
    ! DarkBlue + Blue
    *color4: #2797d8
    *color12: #86cdea
    ! DarkMangenta + Mangenta
    *color5: #aa6eaf
    *color13: #cb96ce
    !DarkCyan + Cyan
    *color6: #418179
    *color14: #71bebe
    ! LightGrey + White
    *color7: #bebebe
    *color15: #ffffff
    *saveLines: 32767
    *scrollTtyKeypress:true
    *scrollTtyOutput: false
    *scrollBar: false
    *internalBorder: 20
    urxvt*loginShell: true
    urxvt*termName: rxvt-unicode
    urxvt*inheritPixmap: true
    urxvt*shading: 40
    urxvt*font: xft:Bitstream Vera Sans Mono:pixelsize=11
    urxvt*tintColor: #405070
    Even when I get rid of the most likely culprits - *inheritPixmap, *shading, *tintColor and *internalBorder, the border still remains invisible.
    So my main problem is getting the border back around urxvt 
    Also though, is it possible to change the border color in ratpoison? I spent hours customising my .rc for it, and never found an option to alter the border color...
    I wouldn't even be bothered about having a border tbh, but urxvt won't sit right up against the screen edges, despite ratpoison's padding being 0. It won't even work when  urxvt's *externalBorder: 0 is set in Xdefaults.

    Komodo wrote:at least you can usually track down the cause of every problem you find, since you're sufficiently knowledgeable.
    Very OT:
    When it comes to schooling, I have a degree in Computer Engineering.  That is, basically an Electrical Engineering degree, with low level programming (I can recall using 7 different assembly flavors, along with C and C++, not to mention design languages such as Verilog and VHDL, plus matlab).  Most people in the field that I actually work in are Computer Scientists.  Now, the difference when it comes to knowledge usually isn't that great.  People know how to code fairly well.  However, when it comes to methodology, I feel that the engineering disciplines are superior.
    Most engineering training, from a general standpoint, is all about diagnosis of an issue.  A lot of time is spent dealing with design from a *generic* point of view.  It may be "design a bridge for this ravine" or "design a 128bit ALU" or "design an algorithm that computes the number of LEDs lit up".  In most engineering disciplines, this methodology is the same.  You go about it the same way.
    When it comes to Computer Science, it seems the methodology is left out, and people tend to come into the "real world" with this understanding that there is no general way to do something.  You design using UML and Use Cases and that's it.
    It's the same when it comes to 'fixing' something.  Fixing a problem is really just re-designing the original solution (the original solution was a 'fix' for something anyway, wasn't it?).  I find myself to have very good skills when it comes to diagnosing issues, and am usually pretty quick about it.  That said, there is knowledge of the task at hand involved - I know, from a generic overview, how window managers work (hell, I've written a few mini ones just to get a feel for it), and thus can 're-design' the color handling fairly easilly.
    I wish Computer Science would grasp the methodologies used in the engineering disciplines... it pays alot.

  • Moving to Openbox

    Being something of a minimalist myself (or at least someone who tries to be), I've always been attracted to the idea of running just a WM, but I've never been able to stick to it.  I've also long felt that the best looking desktops I've ever seen have been *box desktops, which actually includes alternate shells for windows like bb4win and the like.  I even used blackbox for a little while in the first year or so that I used Linux, but it just didn't stick.
    With all of the Openbox desktops I've seen, and of all the things I've read, I think it's time for me to make a serious stab at switching for good.  If everything goes well and I can land on a setup I'm happy with, I'll lose Gnome for good.  As-is, my Gnome setup is isn't necessarily "standard"; I've been without a taskbar/window list for almost as long as I've been using Linux (late 2005), so all I've had is an autohiding panel at the top of my screen with the menubar on it, my tray, my clock, and a few other things.  I think I could easily lose the tray altogether, and I like the idea of a root menu better, anyways.  I can probably lose the clock, too, since Conky covers that quite well for me.  I don't really need any of it anymore.
    Themes shouldn't be much of a problem.  Configuration shouldn't be much of a problem, either.  I'll have to adjust to using a few different programs, but for the ones I use the majority of the vast majority of the time (Firefox, etc.), there will be absolutely no difference.  I've been using xcompmgr for compositing/transparency for a long time and don't want any fancier effects, so I already have that down.
    So, when it comes down to it, this is where I'm at...
    Things I'm pretty sure I have replacements for:
    - Nautilus (as a file browser) will probably be replaced my pcmanfm.  I've used it a little bit before and I liked it, so I think that's what I'm going with.
    - Keybinds are all going to be handled by xbindkeys.  Only a few things have to be switched from the Gnome keyboard shortcuts to xbindkeys.
    - For the last few weeks I've been using tilda instead of gnome-terminal.  With a few minor annoyances with it, I prefer it.
    - Xcompmgr and transset/transset-df stay.
    More importantly, though, are the things I'm not sure about.  Not a huge list, but it's there.  These are:
    - "Run" box
    - To keep the functionality of what I do use my panel for, I'll probably need a tray program and perhaps a workspace switcher, though this isn't entirely necessary.  I want a tray with a completely transparent background, so it looks like my icons are just sitting on the desktop. Something I can throw volwheel on will be good.  Like I said, I probably won't go for a panel.
    - A text editor that is very similar to Gedit.  If I can't find one, I'll probably just keep it.  I don't think it has too many Gnome dependencies.
    - A calculator would be nice, but probably not 100% necessary.
    - Games.  I don't use them terribly often, but solitaire and freecell and a few others have a bit of a hold on me.
    - A data CD burner.  Not really necessary since my other programs handle this, too, but having it built in to Nautilus has been nice.
    - File manager actions/scripts.  I'm not sure about how pcman is with this.  I've heard it's not a big problem with Thunar, but again, I'm not sure.
    - An image viewer.
    And finally, things I might want to keep, but I can probably do fine without:
    - A graphic system monitor.
    - A small calendar program that just shows me the dates; it doesn't need to do scheduling or anything, I just want to see what I see when I click on the clock applet in gnome-panel.
    - An archive manager.  Not totally important, and CLI is often more powerful and not that hard.
    OK, so, basically I'm looking for suggestions on some things.  I don't want anyone to do anything for me, but pushing me in the right direction would be nice.  I think one of the most important things is figuring out how to get my tray transparent.  With the little toying around I've done (stalonetray, docker, trayer) under Gnome, programs like Quod Libet and Deluge keep the background color of gnome-panel.  I'm hoping this isn't a chronic problem.
    Crude representation of what I'm hoping to acheive:
    I think that's it.

    I use Openbox too, and love it. Here you go... no idea if this is suitable, this is just what comes to mind when I think of the categories you list.
    - "Run" box
    No idea. I have Openbox configured to start urxvtc when I hit F4, and while F4 sounds like it'd be a fairly depended-on key, it isn't actually that bad - the only app it clashes with is htop. Oh, and I exit terminals with 'x'.
    - To keep the functionality of what I do use my panel for, I'll probably need a tray program and perhaps a workspace switcher, though this isn't entirely necessary.  I want a tray with a completely transparent background, so it looks like my icons are just sitting on the desktop. Something I can throw volwheel on will be good.  Like I said, I probably won't go for a panel.
    Both 'tint2' and 'bmpanel' can go transparent, although the 2nd requires you have composite support for this functionality (but functions perfectly as a 100%-opaque panel if you don't have composite enabled). The former, while coming along nicely (it's quite a new project, designed specifically for openbox), lacks any sort of tray support. bmpanel does have tray support. Since I can't manage composite, I use tint, and since I use no tray-using applications (I use hotkeys for everything ) it all works out perfectly.
    - A text editor that is very similar to Gedit.  If I can't find one, I'll probably just keep it.  I don't think it has too many Gnome dependencies.
    GEANY!!!!!!
    - A calculator would be nice, but probably not 100% necessary.
    I use the 'calc' util from the terminal. And /exec -o calc <...> from irssi.
    - Games.  I don't use them terribly often, but solitaire and freecell and a few others have a bit of a hold on me.
    I don't game
    - A data CD burner.  Not really necessary since my other programs handle this, too, but having it built in to Nautilus has been nice.
    cdparanoia, from the terminal?
    - File manager actions/scripts.  I'm not sure about how pcman is with this.  I've heard it's not a big problem with Thunar, but again, I'm not sure.
    Yes, Thunar works with configurable actions, (that can be bound to all files, or tied to specific files based on filetype).
    - An image viewer.
    feh or mirage works for me. Mirage is written in Python though, so is a little slowish. Mirage is better for bigger images though, since feh takes milliseconds to load small images, and multiple orders of seconds to load large-ish images (here anyway), like 1280x1024+.
    And finally, things I might want to keep, but I can probably do fine without:
    - A graphic system monitor.
    htop in terminal?
    - A small calendar program that just shows me the dates; it doesn't need to do scheduling or anything, I just want to see what I see when I click on the clock applet in gnome-panel.
    terminal -> 'cal'
    - An archive manager.  Not totally important, and CLI is often more powerful and not that hard.
    Squeeze?
    As you might have guessed, I live out of a terminal, use bash for everything, script my life, and hate GUIs.
    -dav7
    Last edited by dav7 (2008-09-18 06:39:18)

  • [SOLVED] lxde+openbox+urxvt = can't get a transparent terminal

    I've been trying to get urxvt fully transparent and maximized every spare time i have after work. But now i'm just wasting time, since it won't work no matter what. My first attempt was to read the wiki: http://wiki.archlinux.org/index.php/Openbox (urxvt) that didn't work at all for me, then I resorted to a quick search on the forum, found various links: http://bbs.archlinux.org/viewtopic.php?id=64898 & http://bbs.archlinux.org/viewtopic.php?id=64459 with peeps having the same issues like I did, or almost. But alas that didn't work either.
    I can move around the terminal urxvt window/border, but it's not transparent, and it's NOT covering my entire screen like it's suppose to.
    Any ideas?
    Last edited by greenfish (2009-05-04 10:34:43)

    brisbin33 wrote:
    for transparency:
    are you running xcompmgr?  do you have composite enabled in xorg.conf?
    for maximized:
    please post the relevant snippets you're trying in .config/openbox/rc.xml and any info you've placed in .Xdefaults.
    Hello brisbin33, cheers for the prompt reply!
    are you running xcompmgr?
    yes, I use it for shades around my borders
    do you have composite enabled in xorg.conf?
    I don't use xorg.conf at all, I rely completly on input hotplugging through xorg-server and HAL, btw I was under the impression xorg-server (input hotplugging) completly ignores your xorg.conf if it's set to use HAL as autodection?
    please post the relevant snippets you're trying in .config/openbox/rc.xml and any info you've placed in .Xdefaults
    My .config/openbox/lxde-rc.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <!-- Do not edit this file, it will be overwritten on install.
    Copy the file to $HOME/.config/openbox/ instead. -->
    <openbox_config xmlns="http://openbox.org/3.4/rc">
    <resistance>
    <strength>10</strength>
    <screen_edge_strength>20</screen_edge_strength>
    </resistance>
    <focus>
    <focusNew>yes</focusNew>
    <!-- always try to focus new windows when they appear. other rules do
    apply -->
    <followMouse>no</followMouse>
    <!-- move focus to a window when you move the mouse into it -->
    <focusLast>yes</focusLast>
    <!-- focus the last used window when changing desktops, instead of the one
    under the mouse pointer. when followMouse is enabled -->
    <underMouse>no</underMouse>
    <!-- move focus under the mouse, even when the mouse is not moving -->
    <focusDelay>200</focusDelay>
    <!-- when followMouse is enabled, the mouse must be inside the window for
    this many milliseconds (1000 = 1 sec) before moving focus to it -->
    <raiseOnFocus>no</raiseOnFocus>
    <!-- when followMouse is enabled, and a window is given focus by moving the
    mouse into it, also raise the window -->
    </focus>
    <placement>
    <policy>Smart</policy>
    <!-- 'Smart' or 'UnderMouse' -->
    <center>yes</center>
    <!-- whether to place windows in the center of the free area found or
    the top left corner -->
    <monitor>Any</monitor>
    <!-- with Smart placement on a multi-monitor system, try to place new windows
    on: 'Any' - any monitor, 'Mouse' - where the mouse is, 'Active' - where
    the active window is -->
    </placement>
    <theme>
    <name>Bear2</name>
    <titleLayout>NLIMC</titleLayout>
    <!--
    available characters are NDSLIMC, each can occur at most once.
    N: window icon
    L: window label (AKA title).
    I: iconify
    M: maximize
    C: close
    S: shade (roll up/down)
    D: omnipresent (on all desktops).
    -->
    <keepBorder>yes</keepBorder>
    <animateIconify>yes</animateIconify>
    <font place="ActiveWindow">
    <name>sans</name>
    <size>10</size>
    <!-- font size in points -->
    <weight>bold</weight>
    <!-- 'bold' or 'normal' -->
    <slant>normal</slant>
    <!-- 'italic' or 'normal' -->
    </font>
    <font place="InactiveWindow">
    <name>sans</name>
    <size>10</size>
    <!-- font size in points -->
    <weight>bold</weight>
    <!-- 'bold' or 'normal' -->
    <slant>normal</slant>
    <!-- 'italic' or 'normal' -->
    </font>
    <font place="MenuHeader">
    <name>sans</name>
    <size>10</size>
    <!-- font size in points -->
    <weight>normal</weight>
    <!-- 'bold' or 'normal' -->
    <slant>normal</slant>
    <!-- 'italic' or 'normal' -->
    </font>
    <font place="MenuItem">
    <name>sans</name>
    <size>10</size>
    <!-- font size in points -->
    <weight>normal</weight>
    <!-- 'bold' or 'normal' -->
    <slant>normal</slant>
    <!-- 'italic' or 'normal' -->
    </font>
    <font place="OnScreenDisplay">
    <name>sans</name>
    <size>10</size>
    <!-- font size in points -->
    <weight>bold</weight>
    <!-- 'bold' or 'normal' -->
    <slant>normal</slant>
    <!-- 'italic' or 'normal' -->
    </font>
    </theme>
    <desktops>
    <!-- this stuff is only used at startup, pagers allow you to change them
    during a session
    these are default values to use when other ones are not already set
    by other applications, or saved in your session
    use obconf if you want to change these without having to log out
    and back in -->
    <number>2</number>
    <firstdesk>1</firstdesk>
    <names>
    <!-- set names up here if you want to, like this:
    <name>desktop 1</name>
    <name>desktop 2</name>
    -->
    </names>
    <popupTime>875</popupTime>
    <!-- The number of milliseconds to show the popup for when switching
    desktops. Set this to 0 to disable the popup. -->
    </desktops>
    <resize>
    <drawContents>yes</drawContents>
    <popupShow>Nonpixel</popupShow>
    <!-- 'Always', 'Never', or 'Nonpixel' (xterms and such) -->
    <popupPosition>Center</popupPosition>
    <!-- 'Center', 'Top', or 'Fixed' -->
    <popupFixedPosition>
    <!-- these are used if popupPosition is set to 'Fixed' -->
    <x>10</x>
    <!-- positive number for distance from left edge, negative number for
    distance from right edge, or 'Center' -->
    <y>10</y>
    <!-- positive number for distance from top edge, negative number for
    distance from bottom edge, or 'Center' -->
    </popupFixedPosition>
    </resize>
    <!-- You can reserve a portion of your screen where windows will not cover when
    they are maximized, or when they are initially placed.
    Many programs reserve space automatically, but you can use this in other
    cases. -->
    <margins>
    <top>0</top>
    <bottom>0</bottom>
    <left>0</left>
    <right>0</right>
    </margins>
    <dock>
    <position>TopLeft</position>
    <!-- (Top|Bottom)(Left|Right|)|Top|Bottom|Left|Right|Floating -->
    <floatingX>0</floatingX>
    <floatingY>0</floatingY>
    <noStrut>no</noStrut>
    <stacking>Above</stacking>
    <!-- 'Above', 'Normal', or 'Below' -->
    <direction>Vertical</direction>
    <!-- 'Vertical' or 'Horizontal' -->
    <autoHide>no</autoHide>
    <hideDelay>300</hideDelay>
    <!-- in milliseconds (1000 = 1 second) -->
    <showDelay>300</showDelay>
    <!-- in milliseconds (1000 = 1 second) -->
    <moveButton>Middle</moveButton>
    <!-- 'Left', 'Middle', 'Right' -->
    </dock>
    <keyboard>
    <chainQuitKey>C-g</chainQuitKey>
    <!-- Keybindings for desktop switching -->
    <keybind key="C-A-Left">
    <action name="DesktopLeft">
    <dialog>no</dialog>
    <wrap>no</wrap>
    </action>
    </keybind>
    <keybind key="C-A-Right">
    <action name="DesktopRight">
    <dialog>no</dialog>
    <wrap>no</wrap>
    </action>
    </keybind>
    <keybind key="C-A-Up">
    <action name="DesktopUp">
    <dialog>no</dialog>
    <wrap>no</wrap>
    </action>
    </keybind>
    <keybind key="C-A-Down">
    <action name="DesktopDown">
    <dialog>no</dialog>
    <wrap>no</wrap>
    </action>
    </keybind>
    <keybind key="S-A-Left">
    <action name="SendToDesktopLeft">
    <dialog>no</dialog>
    <wrap>no</wrap>
    </action>
    </keybind>
    <keybind key="S-A-Right">
    <action name="SendToDesktopRight">
    <dialog>no</dialog>
    <wrap>no</wrap>
    </action>
    </keybind>
    <keybind key="S-A-Up">
    <action name="SendToDesktopUp">
    <dialog>no</dialog>
    <wrap>no</wrap>
    </action>
    </keybind>
    <keybind key="S-A-Down">
    <action name="SendToDesktopDown">
    <dialog>no</dialog>
    <wrap>no</wrap>
    </action>
    </keybind>
    <keybind key="W-F1">
    <action name="Desktop">
    <desktop>1</desktop>
    </action>
    </keybind>
    <keybind key="W-F2">
    <action name="Desktop">
    <desktop>2</desktop>
    </action>
    </keybind>
    <keybind key="W-F3">
    <action name="Desktop">
    <desktop>3</desktop>
    </action>
    </keybind>
    <keybind key="W-F4">
    <action name="Desktop">
    <desktop>4</desktop>
    </action>
    </keybind>
    <keybind key="W-d">
    <action name="ToggleShowDesktop"/>
    </keybind>
    <keybind key="C-A-d">
    <action name="ToggleShowDesktop"/>
    </keybind>
    <!-- Keybindings for windows -->
    <keybind key="A-F4">
    <action name="Close"/>
    </keybind>
    <keybind key="A-Escape">
    <action name="Lower"/>
    <action name="FocusToBottom"/>
    <action name="Unfocus"/>
    </keybind>
    <keybind key="A-space">
    <action name="ShowMenu">
    <menu>client-menu</menu>
    </action>
    </keybind>
    <!-- Keybindings for window switching -->
    <keybind key="A-Tab">
    <action name="NextWindow"/>
    </keybind>
    <keybind key="A-S-Tab">
    <action name="PreviousWindow"/>
    </keybind>
    <keybind key="C-A-Tab">
    <action name="NextWindow">
    <panels>yes</panels>
    <desktop>yes</desktop>
    </action>
    </keybind>
    <!-- Keybindings for running applications -->
    <keybind key="W-e">
    <action name="Execute">
    <startupnotify>
    <enabled>true</enabled>
    <name>PCManFM</name>
    </startupnotify>
    <command>pcmanfm</command>
    </action>
    </keybind>
    <!--keybindings for LXPanel -->
    <keybind key="W-r">
    <action name="Execute">
    <command>lxpanelctl run</command>
    </action>
    </keybind>
    <keybind key="A-F2">
    <action name="Execute">
    <command>lxpanelctl run</command>
    </action>
    </keybind>
    <keybind key="C-Escape">
    <action name="Execute">
    <command>lxpanelctl menu</command>
    </action>
    </keybind>
    </keyboard>
    <mouse>
    <dragThreshold>8</dragThreshold>
    <!-- number of pixels the mouse must move before a drag begins -->
    <doubleClickTime>200</doubleClickTime>
    <!-- in milliseconds (1000 = 1 second) -->
    <screenEdgeWarpTime>400</screenEdgeWarpTime>
    <!-- Time before changing desktops when the pointer touches the edge of the
    screen while moving a window, in milliseconds (1000 = 1 second).
    Set this to 0 to disable warping -->
    <context name="Frame">
    <mousebind button="A-Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="A-Left" action="Click">
    <action name="Unshade"/>
    </mousebind>
    <mousebind button="A-Left" action="Drag">
    <action name="Move"/>
    </mousebind>
    <mousebind button="A-Right" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="Unshade"/>
    </mousebind>
    <mousebind button="A-Right" action="Drag">
    <action name="Resize"/>
    </mousebind>
    <mousebind button="A-Middle" action="Press">
    <action name="Lower"/>
    <action name="FocusToBottom"/>
    <action name="Unfocus"/>
    </mousebind>
    <mousebind button="A-Up" action="Click">
    <action name="DesktopPrevious"/>
    </mousebind>
    <mousebind button="A-Down" action="Click">
    <action name="DesktopNext"/>
    </mousebind>
    <mousebind button="C-A-Up" action="Click">
    <action name="DesktopPrevious"/>
    </mousebind>
    <mousebind button="C-A-Down" action="Click">
    <action name="DesktopNext"/>
    </mousebind>
    <mousebind button="A-S-Up" action="Click">
    <action name="SendToDesktopPrevious"/>
    </mousebind>
    <mousebind button="A-S-Down" action="Click">
    <action name="SendToDesktopNext"/>
    </mousebind>
    </context>
    <context name="Titlebar">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Left" action="Drag">
    <action name="Move"/>
    </mousebind>
    <mousebind button="Left" action="DoubleClick">
    <action name="ToggleMaximizeFull"/>
    </mousebind>
    <mousebind button="Middle" action="Press">
    <action name="Lower"/>
    <action name="FocusToBottom"/>
    <action name="Unfocus"/>
    </mousebind>
    <mousebind button="Up" action="Click">
    <action name="Shade"/>
    <action name="FocusToBottom"/>
    <action name="Unfocus"/>
    <action name="Lower"/>
    </mousebind>
    <mousebind button="Down" action="Click">
    <action name="Unshade"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Right" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="ShowMenu">
    <menu>client-menu</menu>
    </action>
    </mousebind>
    </context>
    <context name="Top">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="Unshade"/>
    </mousebind>
    <mousebind button="Left" action="Drag">
    <action name="Resize">
    <edge>top</edge>
    </action>
    </mousebind>
    </context>
    <context name="Left">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Left" action="Drag">
    <action name="Resize">
    <edge>left</edge>
    </action>
    </mousebind>
    </context>
    <context name="Right">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Left" action="Drag">
    <action name="Resize">
    <edge>right</edge>
    </action>
    </mousebind>
    </context>
    <context name="Bottom">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Left" action="Drag">
    <action name="Resize">
    <edge>bottom</edge>
    </action>
    </mousebind>
    <mousebind button="Middle" action="Press">
    <action name="Lower"/>
    <action name="FocusToBottom"/>
    <action name="Unfocus"/>
    </mousebind>
    <mousebind button="Right" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="ShowMenu">
    <menu>client-menu</menu>
    </action>
    </mousebind>
    </context>
    <context name="BLCorner">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Left" action="Drag">
    <action name="Resize"/>
    </mousebind>
    </context>
    <context name="BRCorner">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Left" action="Drag">
    <action name="Resize"/>
    </mousebind>
    </context>
    <context name="TLCorner">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="Unshade"/>
    </mousebind>
    <mousebind button="Left" action="Drag">
    <action name="Resize"/>
    </mousebind>
    </context>
    <context name="TRCorner">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="Unshade"/>
    </mousebind>
    <mousebind button="Left" action="Drag">
    <action name="Resize"/>
    </mousebind>
    </context>
    <context name="Client">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Middle" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Right" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    </context>
    <context name="Icon">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="Unshade"/>
    <action name="ShowMenu">
    <menu>client-menu</menu>
    </action>
    </mousebind>
    <mousebind button="Right" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="ShowMenu">
    <menu>client-menu</menu>
    </action>
    </mousebind>
    </context>
    <context name="AllDesktops">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="Unshade"/>
    </mousebind>
    <mousebind button="Left" action="Click">
    <action name="ToggleOmnipresent"/>
    </mousebind>
    </context>
    <context name="Shade">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Left" action="Click">
    <action name="ToggleShade"/>
    </mousebind>
    </context>
    <context name="Iconify">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Left" action="Click">
    <action name="Iconify"/>
    </mousebind>
    </context>
    <context name="Maximize">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="Unshade"/>
    </mousebind>
    <mousebind button="Middle" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="Unshade"/>
    </mousebind>
    <mousebind button="Right" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="Unshade"/>
    </mousebind>
    <mousebind button="Left" action="Click">
    <action name="ToggleMaximizeFull"/>
    </mousebind>
    <mousebind button="Middle" action="Click">
    <action name="ToggleMaximizeVert"/>
    </mousebind>
    <mousebind button="Right" action="Click">
    <action name="ToggleMaximizeHorz"/>
    </mousebind>
    </context>
    <context name="Close">
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    <action name="Unshade"/>
    </mousebind>
    <mousebind button="Left" action="Click">
    <action name="Close"/>
    </mousebind>
    </context>
    <context name="Desktop">
    <mousebind button="Up" action="Click">
    <action name="DesktopPrevious"/>
    </mousebind>
    <mousebind button="Down" action="Click">
    <action name="DesktopNext"/>
    </mousebind>
    <mousebind button="A-Up" action="Click">
    <action name="DesktopPrevious"/>
    </mousebind>
    <mousebind button="A-Down" action="Click">
    <action name="DesktopNext"/>
    </mousebind>
    <mousebind button="C-A-Up" action="Click">
    <action name="DesktopPrevious"/>
    </mousebind>
    <mousebind button="C-A-Down" action="Click">
    <action name="DesktopNext"/>
    </mousebind>
    <mousebind button="Left" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    <mousebind button="Right" action="Press">
    <action name="Focus"/>
    <action name="Raise"/>
    </mousebind>
    </context>
    <context name="Root">
    <!-- Menus -->
    <mousebind button="Middle" action="Press">
    <action name="ShowMenu">
    <menu>client-list-combined-menu</menu>
    </action>
    </mousebind>
    <mousebind button="Right" action="Press">
    <action name="ShowMenu">
    <menu>root-menu</menu>
    </action>
    </mousebind>
    </context>
    <context name="MoveResize">
    <mousebind button="Up" action="Click">
    <action name="DesktopPrevious"/>
    </mousebind>
    <mousebind button="Down" action="Click">
    <action name="DesktopNext"/>
    </mousebind>
    <mousebind button="A-Up" action="Click">
    <action name="DesktopPrevious"/>
    </mousebind>
    <mousebind button="A-Down" action="Click">
    <action name="DesktopNext"/>
    </mousebind>
    </context>
    </mouse>
    <menu>
    <!-- You can specify more than one menu file in here and they are all loaded,
    just don't make menu ids clash or, well, it'll be kind of pointless -->
    <!-- default menu file (or custom one in $HOME/.config/openbox/) -->
    <file>/usr/share/lxde/openbox/menu.xml</file>
    <hideDelay>200</hideDelay>
    <!-- if a press-release lasts longer than this setting (in milliseconds), the
    menu is hidden again -->
    <middle>no</middle>
    <!-- center submenus vertically about the parent entry -->
    <submenuShowDelay>100</submenuShowDelay>
    <!-- this one is easy, time to delay before showing a submenu after hovering
    over the parent entry -->
    <applicationIcons>yes</applicationIcons>
    <!-- controls if icons appear in the client-list-(combined-)menu -->
    <manageDesktops>yes</manageDesktops>
    <!-- show the manage desktops section in the client-list-(combined-)menu -->
    </menu>
    <applications>
    <!--
    # this is an example with comments through out. use these to make your
    # own rules, but without the comments of course.
    <application name="urxvt">
    <decor>true</decor>
    # enable or disable window decorations
    <shade>no</shade>
    # make the window shaded when it appears, or not
    <position>
    # the position is only used if both an x and y coordinate are provided
    # (and not set to 'default')
    <x>center</x>
    # a number like 50, or 'center' to center on screen. use a negative number
    # to start from the right (or bottom for <y>), ie -50 is 50 pixels from the
    # right edge (or bottom).
    <y>20</y>
    <monitor>1</monitor>
    # specifies the monitor in a xinerama setup.
    # 1 is the first head, or 'mouse' for wherever the mouse is
    </position>
    <focus>yes</focus>
    # if the window should try be given focus when it appears. if this is set
    # to yes it doesn't guarantee the window will be given focus. some
    # restrictions may apply, but Openbox will try to
    <desktop>1</desktop>
    # 1 is the first desktop, 'all' for all desktops
    <layer>above</layer>
    # 'above', 'normal', or 'below'
    <iconic>no</iconic>
    # make the window iconified when it appears, or not
    <skip_pager>no</skip_pager>
    # asks to not be shown in pagers
    <skip_taskbar>no</skip_taskbar>
    # asks to not be shown in taskbars. window cycling actions will also
    # skip past such windows
    <fullscreen>yes</fullscreen>
    # make the window in fullscreen mode when it appears
    <maximized>true</maximized>
    # 'Horizontal', 'Vertical' or boolean (yes/no)
    </application>
    # end of the example
    -->
    </applications>
    </openbox_config>
    My .Xdefaults:
    URxvt*transparent:true
    URxvt*scrollBar:false
    URxvt*foreground:Green
    !URxvt*borderless:false
    EDIT: I'm using lxde on my asus eeepc900, here's something I just read on the archlinux wiki, so once more having an xorg.conf is useless if you rely on input-hotplugging right? (wiki claims xorg ignores the xorg.conf if it's relying completly on HAL)
    Intel drivers
    The new Intel driver, xf86-video-intel, comes with compositing enabled by default. It's configured to use the newer EXA acceleration method, but the default build options can result in very slugish performance. In these cases, adding these options to the "Device" section of your /etc/X11/xorg.conf can improve the situation dramatically:
    Option "AccelMethod" "exa"
    Option "MigrationHeuristic" "greedy"
    Option "ExaNoComposite" "false"
    Last edited by greenfish (2009-02-26 17:58:34)

  • [SOLVED] Transparent URxvt position in Openbox

    I've followed the "Urxvt in the background" topic in the ArchWiki Openbox entry. I am unable to get the terminal to appear anywhere but the upper right corner. I have tried various changes to the postion settings in the application section of the rc.xml file with no effect. It also doesn't seem to be on the bottom layer, as other windows can be moved below it. It also doesn't have focus.
    My current application section is rc.xml
    <application name="urxvt">
    <decor>no</decor>
    <focus>yes</focus>
    <position>
    <x>-5</x>
    <y>0</y>
    </position>
    <layer>below</layer>
    <desktop>all</desktop>
    </application>
    Last edited by 000krf (2009-01-08 22:39:19)

    That didn't work either. Here is what I have found, after further experimenting...
    Here is my .Xdefaults file
    URxvt*transparent:true
    URxvt*scrollBar: false
    #URxvt*borderLess: true
    URxvt*foreground: White
    And here is my current rc.xml file
    <application name="urxvt">
    <decor>no</decor>
    <focus>yes</focus>
    <position>
    <x>-5</x>
    <y>5</y>
    </position>
    <layer>below</layer>
    <desktop>1</desktop>
    </application>
    As shown above, my terminal appears as transparent, on the desktop, and in the upper right-hand corner, but with a black border. If I uncomment the "URxvt*borderLess: true" line the terminal appears in the upper left-hand corner and borderless. It is as though this line causes the position section in the rc.xml file to be ingnored.:(

Maybe you are looking for