On Wed, Aug 04, 2004 at 03:21:53PM -0700, Tommy C. Li wrote:
> Hello,
>
> It's my perception that the mouse-triggered actions behave
> inconsistently with what the manual says.
>
> Specifically, actions don't seem to be triggered until a click is
> completed - not on mouse-down - which is what is suggested by the manual.
>
> Take for example this quote from the fvwm man page:
>
> "The name must not contain embedded whitespace. No guarantees are made
> whether function names with embedded whitespace work or not. This
> behavior may also change in the future without further notice. The
> letter before the action tells what kind of action triggers the command
> which follows it. 'I' stands for "Immediate", and is executed as soon as
> the function is invoked. 'M' stands for "Motion", i.e. if the user
> starts moving the mouse. 'C' stands for "Click", i.e., if the user
> presses and releases the mouse. 'H' stands for "Hold", i.e. if the user
> presses a mouse button and holds it down for more than ClickTime
> milliseconds. 'D' stands for "Double-click". The action 'I' causes an
> action to be performed on the button-press, if the function is invoked
> with prior knowledge of which window to act on."
> This suggests that "Immediate" commands are executed on mouse-down,
> while "Click" type is for press-and-release.
And it is exactly what fvwm does. With
AddToFunc immediate I echo immediate
mouse 3 r n function immediate
the "echo immediate" is executed as soon the button is pressed,
and with
AddToFunc click C echo click
mouse 3 r n function click
There are a couple of exception, though:
- If an application is started that tries to grab control of the
pointer, it will succeed only after the function is completed.
- Commands that change the window focus do change the foucs
immediately, but the window decorations are redrawn only after
the function completes. Fvwm tracks the focused window by the
corresponding X event, and events are not handled during
function execution. Hence the delay.
- To suppress excessive redrawing, changes in window styles are
activated only after the function completes and fvwm is idle
(i.e. not receiving events or module input).
- If a command needs a window to operate on, and no window has
been selected yet, you have to release the button first and
then click on a window.
Note that the function itself only completes when the last mouse
button is released.
> I've noticed that Immediate commands are only exceuted after release or
> I press and move the pointer a bit. This is certainly not "Immediate" -
> and there is a definite need for commands to be executed on mousedown.
>
> In fact, for all mouse-bindings, actions are excuted on
> click-and-release instead of mousedown. Key binding actions are executed
> on mouse-down.
> And also - there is this entry in the FvwmButtons manpage:
>
> "ActionOnPress
> ~~ Usually the action is executed on the button release except for the
> Popup action. This option changes this behavior, the action is executed
> on the button press. This may be good, for example, with Menu or
> SendToModule that generates popups, or when Frame is 0 and the button
> would look unresponsive otherwise."
Works as advertised for me.
> This suggests that popup actions are executed on mousedown. This is not
> the case with buttons. They behave like "Immediate" commands - executing
> only on mousedown+movement or mousedown+release.
>
> If I add ActionOnPress, actions behave like "Immediate" commands again -
> that is - not immediately!
>
> Incidentally, popup menus only behave correctly in keybindings and
> mousebindings on the Root Desktop.
>
> Can anyone shed some light on this issue? It's a major annoyance.
Is there any chance your mouse or your X server is broken? When
fvwm receives a ButtonPress event it acts immediately.
Ciao
Dominik ^_^ ^_^
--
Dominik Vogt, dominik.vogt_at_gmx.de
Reply-To: dominik.vogt_at_gmx.de
--
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 majordomo_at_fvwm.org.
To report problems, send mail to fvwm-owner_at_fvwm.org.
- application/pgp-signature attachment: stored
Received on Thu Aug 05 2004 - 03:36:44 BST