From: ethereal-dev-bounces@xxxxxxxxxxxx
> The GUI is sometimes extremely responsive on my system, and I
> think some
> computers are that fast that they record TWO mouse click
> events instead of
> one, or that the event is not properly "terminated" or
> synchronized within
> the GTK2 code.
>
> What sometimes appears to happen, is that the
> RightMouseDown->RightMouseUp->ContextMenuShow sequence is
> seen by GTK+ as
> RightMouseDown->ContextMenuShow->RightMouseUp which is
> interpreted as in
> Mac'World with single-button mice where releasing the mouse
> means the same
> as clicking on the highlighted item of the context menu. GTK+
> 2.0 provides
> this implementation too (I just tested this).
Ah, I think this may be the heart of the problem. I discovered just
now that I can reproducible the "problem" on any right click, if I
hold the right mouse button down for a length of time. So
- any right click and hold on a packet in the packet list
- conext menu appears while button is held
- release activates the first menu item
In fact, you can scroll around the menu with the right button held and
releasing it activates the currently selected item
This is not standard windows operating procedure. In all the other
apps I tested quickly (Outlook and Explorer frex) the context menu
does not appear until after the right mouse button is released.
I think the very first time after Ethereal is started this problem is
simply more sensitive; ie there's some init code that makes the right
click *seem* like it's been held for a time, and that causes the MAC
behaviour to fire.
So I'm guessing the solution is to turn off the MAC behaviour in GTK2.
I know have Winspector and a screen-video capture util installed if
that will help with this bug.
> I don't know GTK+ coding but I only see the following options:
>
> 1. Use a slower computer. This of course is not an option :)
> 2. Require the *left* mouse button to confirm the context menu option.
> 3. Wait some number of milliseconds before popping up the
> context menu. I
> think this is the preferred way.
Or, do not pop up context menu until *after* RightMouseUp, as per
Windows SOP.
..Stu