VWM only showing current desktop Thread last updated on 2005-07-18 09:48:42

Posted by member 5745 on 2005-07-17 10:49:45

I'm currently working on a small footprint theme. I want to show the VWM and have several desktops, but I want to make it as small as possible. What I want to do is have the VWM window only show the current desktop rather than all the desktops. I also want to have a button to expand the VWM to show all desktops to make moving programs between them easier. Is this possible? How would off-screen windows react if I actually shrunk the VWM to only one desktop and would there be any way to move to the other desktops if I did that?

Posted by member 12025 on 2005-07-17 12:49:58 link

Shrinking will work, but can be tricky.

The easiest way, if you don't use per-layer transparency for the VWM (RabidVWM let's you have the mini-windows, FI, be more opaque than the desk space), is hooking into xLabel.

You'd then have a script that manages what is shown by the current desktop (it could be done w/o scripting if there was no option to show the whole VWM, but it still shouldn't be a big deal).

Posted by member 212670 on 2005-07-17 14:43:09 link

I'd just hook the vwm in to a label and move it around. Say the vwm had a width of 90, with 3 desktops...Have it hooked in to a label with a width of 30. You could then just move the vwm left/right to show what you want, and the rest would be hidden since it's "off screen" in the label. No messy shrinking etc. Then making a button to expand/shrink the label to reveal the whole vwm would be easy enough.

Posted by member 12025 on 2005-07-17 16:15:37 link

http://www.doddstech.com/theme.rc
A hacked together example, using a single row (which can also be adapted to columns). Setting to 0 and then using ?r is used, because ?c and negative coords appear to be based on screen res, not parent label size.

While barely a protoype, the second bang takes care of changing desks by a means other than the unshaded VWM.

Pretty cool, too; as previously, this was a mess of 0.9x code that I never got beyond having a bunch of !alert and !commandsettexts used in :). Some of my vars weren't right, but pretty close.

Oh, edit: it would be easier to use a label holding the VWM in a label holding that label (since it can take - and ~ coords just fine), but RabidVWM doesn't like that, and after a recycle or two, will give some crazy errors.

Posted by member 212670 on 2005-07-17 18:29:47 link

Wow that's pretty slick.

Posted by member 12025 on 2005-07-17 19:26:32 link

Well, you're the one who called me a code monkey... :)

Posted by member 248213 on 2005-07-18 02:21:01 link

that is neat.

Horrid popup though ugh! :D

Posted by member 5745 on 2005-07-18 07:57:01 link

I have a dual monitor system, so the window will have to be relativly wide to have any detail in it. I plan on having a horizontal bar on the top, and having the desktops stacked in a column.

I'm at work right now, but I'll look at that config file when I get the chance. Thanks.

Posted by member 12025 on 2005-07-18 09:48:42 link

As said, it will take some actual work to do multiple rows/columns, but you should be able to swap the x,y,width,height values for going from a row to a column.