Window operations functions
jasper at xfce.org
Mon Apr 12 12:33:45 CEST 2010
That's a lot of text you wrote there ;-)
2010/4/9 Zoltán Kócsi <zoltan at bendor.com.au>:
> I'm new to Xfce, having been living on fvwm for some 15+ years. So,
> I picked up a few habits and I wonder if Xfce, or more likely, Xfwm is
> capable of doing these. I would assume so, considering that fvwm is a
> very ancient beast, but I could not figure out how. I have an Xfce 4.4
First of all, this assumption is incorrect. Fvwm has had 15 years to
accumulate those features and if I'm not mistaken this configurability
is one of the main goals of fvwm development. Xfce and xfwm have
different goals, so not all of the things you are accustomed to may be
available in xfwm. Now, let me try to answer some of your questions.
> I hope someone can point me to docs that explain how to do
> what I want.
> First, when I start a new application by clicking on, for example, the
> little terminal icon to fire up an xterm, the new window may or may not
> appear on top of all other windows. When almost all of my screen is
> covered with other windows, the new application appearing underneath
> them is not really intuitive. I have to scan the taskbar to find the
> new item and click on it to get it to front. So, how can I tell Xfwm to
> always place any new window (on the current desktop) on the top?
I believe this has to do with focus stealing prevention. There are two
places to configure focus:
- wm settings > focus
- wm tweaks > focus
I think you should be able to achieve the behavior you want.
> Second, I set up fvwm so that single clicking on a window brings it to
> front and double clicking on the title bar sends it to the back. A very
> handy feature when you have editor windows and terminal windows all
> around the place covering each other. I could not find any options to do
> that. I tried to edit the XML file's double click on window title entry
> and change the value to "lower" but it didn't work.
For me middle click sends the window to the back. I don't know if
this is configurable.
> Third, fvwm allows you to write little functions, composed of basic
> window operations like minimise, raise, lower, resize, move etc. and
> bind these functions to events, such as keyboard shortcuts or click,
> double click, drag, etc on certain parts of the window decorations. Very
> handy and is in sync with unix's "everything is configurable and
> everything is programmable" philosophy. I could not find any reference
> in the documentation with regards to do anything like that.
Well xfce's not unix ;-) In the window manager settings you can set
keyboard shortcuts for window manager operation.
> Fourth, fwvm allowed me to treat the workspaces as a single huge
> desktop. If you have a say, 2x2 workspace arrangement and in the
> top-left workspace you place a window such that the it overhangs on the
> right hand side, then if you switch to the top-right workspace, you can
> see the overhanging part of the window. That is, it operates as one huge
> desktop, with four adjacent viewports onto it. In fact, with the fvwm
> scripting facility (which is on top of the above mentioned little
> functions and is much more capable) I created a little widget that
> allows me to toggle between two modes: one mode switches workspaces
> like Xfce does if you enable switching when the mouse hits the edge of
> the screen and the other simply treats the whole desktop as a very large
> area and the screen is just a view, which automatically scrolls (with
> dynamically adjustable step size) when the mouse hits the edge of the
> screen (the view's current position is shown in the little
> workspaces widget, so you know where you are). Note that this facility
> is different from the virtual and real screen resolution, which is an
> other, unrelated fvwm feature. I wonder how can I tell Xfwm or Xfce to
> do that?
I don't think you can. Xfwm probably does support viewports, but I
don't think there is a way to configure them in Xfce. Someone please
correct me if I'm wrong.
> Fifth, fvwm has the 'swallow' facility, where you can create a button
> that 'swallows' a window. That is, when the button is created, it
> starts a normal X application, like xclock, xeyes, xload (or that
> little fvwm script widget mentioned above) etc. and puts its window
> (setting its size to fit the button) inside the button. That way you
> can add any existing simple X app to your button bars and you do not
> have to write (or hope that someone writes) an fvwm version of an
> otherwise common and/or already existing utility. Again, looking
> through the docs I could not find any reference to do anything similar,
> possibly because the docs seem to be limited to the GUI configurator
> and there's no word on the text config files where I assume all the
> powerful cruft is.
Xfce has no such feature, unless someone wrote a plugin for it. There
are certain 'hidden' configuration option in Xfce, but editing files
is not meant to be the main method of configuration.
> Any pointers to documentation that explains how to do the above things
> with Xfce/Xfwm would be greatly appreciated.
If you like fvwm, why not use fvwm with some Xfce components? Fvwm
seems to do everything you want.
More information about the Xfce