Subject: FVWM: pointer and transient pager

From: Greg BOGNAR <[email-masked]>
Date: Thu, 21 Oct 2004 00:41:25 +0200 (CEST)

Hello list,

I have 

EdgeCommand Right Module FvwmPager -transient

in my .fvwm2rc.  But I would like the pager to disappear (be deleted)  
not only on any key release and mouse click, but also simply when the
pointer leaves the pager window.  So I started playing around with the
example in FAQ 7.17.  What I found is that it does not work at all
with the -transient option; and if I don't have that option, the pager
does not get placed under the pointer at all, but as any other window, 
typically on the other side of the screen.

Is there a way I can teach Fvwm to close a transient pager as soon as 
the pointer leaves its window?  Perhaps the best would be if the pager 
would come up if the pointer hits the screen edge, the pointer is 
warped to the middle of the pager, but it is closed on any keyrelease 
or if the pointer is moved out of the window.

Cheers,
Greg

--
Visit the official FVWM web page at <URL: http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to [email-masked].
To report problems, send mail to [email-masked].

---

From: Rafal Bisingier <[email-masked]>
Date: Thu, 21 Oct 2004 11:14:07 +0200

> or if the pointer is moved out of the window.
<cut>

I've had similar config. My pager is raised when mouse hit the edge, and
lowered back when mouse leave it's window.
Here is a sample:

EdgeCommand Top FocusPager

Module FvwmAuto 100 \
	"Silent PagerUpFunction" \
	"Silent PagerDownFunction"

DestroyFunc PagerUpFunction
AddToFunc PagerUpFunction
+ I All (Layer 6, !Focused, FvwmPager) Lower
+ I All (Layer 6, !Focused, FvwmPager) Layer 0 0
+ I Current (Layer 0, FvwmPager) Layer 0 6
+ I Current (FvwmPager) Raise

DestroyFunc PagerDownFunction
AddToFunc PagerDownFunction
+ I All (Layer 6, !Focused, FvwmPager) Lower
+ I All (Layer 6, !Focused, FvwmPager) Layer 0 0

DestroyFunc FocusPager
AddToFunc FocusPager
+ I All (FvwmPager) Focus
+ I Current (FvwmPager) Layer 0 6
+ I Current (FvwmPager) Raise

Style FvwmPager Sticky, Layer 0, FixedPosition, FPLenient, \
        !FPEnterToFocus, FPLeaveToUnfocus, FPClickToFocus, \
	FPFocusByFunction, !FPGrabFocus, FPReleaseFocus, \
	FPReleaseFocusTransient, NoTitle, NoIcon, FixedSize

You'll have to adapt it to your config, but it should be easy. ;-)
BTW: This solution was posted on this group about month ago by Dominik
Vogt

-- 
Greetings
Rafal Bisingier

---

From: Greg BOGNAR <[email-masked]>
Date: Tue, 26 Oct 2004 02:00:26 +0200 (CEST)

<cut>

Yes, but the problem is that neither this nor FAQ 7.17 work with a 
transient pager.  I guess I am trying to do something FvwmPager was 
not designed for: use it a bit like a windowlist or FvwmProxy to popup 
when you want to switch pages and then get out of the way.

Cheers,
Greg

---

From: Dominik Vogt <[email-masked]>
Date: Tue, 26 Oct 2004 10:16:07 +0200

> or if the pointer is moved out of the window.

I tried to hack something into the pager code, but it does not
work reliably.  I could make it work if balloons are disabled and
the pager does not use the WindowListSkip style (i.e. the Pager
displays its own window), but I don't think that's worth the
effort.

Ciao

Dominik ^_^  ^_^

 --
Dominik Vogt, [email-masked]