On Thu, Apr 12, 2012 at 06:48:42PM +0200, Michael Großer wrote:
> Thomas Adam wrote:
> > On Thu, Apr 12, 2012 at 05:16:57PM +0200, JUNG, Christian wrote:
> >> Hello,
> >> 
> >> is it possible to limit the movement of a window to the area defined by 
> >> EWMHBaseStrut?
> > 
> > The Move command honours the EWMH Working Area by default when used
> > NON-interactively, but for interactive moves, no.  You're free to move it
> > anywhere.
> > 
> > I toyed with the idea of having wall-boundaries where windows couldn't be
> > moved, but due to the way one can configure their DesktopSize, and flip
> > between pages when resizing/moving windows, etc., soon came to the
> > realisation it becomes impossible to give a realistic configuration.
> > 
> > Therefore, you won't ever get hard-walled areas honouring the EWMH Working
> > Area for interactive window moves.
> > 
> > As for your current problem, just use Layers, perhaps?
> > 
> > -- Thomas Adam
> > 
> > 
> 
> If I would have a requirement to forbid windows to be moved beyond
> a thought border, I would try to write some code, which becomes
> active as soon as the user stops manually moving the window.
> This code would move the window back then.
> 
> Sounds dirty, I know, but why not?

Then you can make use of blocking PipeRead to do things like:

DestroyFunc foo
AddToFunc foo
+ I PipeRead `echo Move`
+ I PipeReaad `[ $[w.x] -lt $SOME_VALUE ] && echo "Move somewhere else"`

-- Thomas Adam

Reply via email to