[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: PCB: window focus bug in GL branch?
On Wed, 2009-11-11 at 08:04 -0500, Ethan Swint wrote:
>
> On 11/10/2009 09:47 PM, Peter Clifton wrote:
> > On Tue, 2009-11-10 at 13:15 -0500, Ethan Swint wrote:
> >
> >> I just did a git fetch& build today from Peter's GL branch - many kudos
> >> again! - but I'm getting a few "features" in my zooming activity. The
> >> first is reproducible by
> >> 1) open PCB layout
> >> 2) Swap application focus
> >> 3) Use Alt+TAB to return focus to PCB.
> >> 4) Use scroll wheel to zoom
> >>
> >> The menu bars around the drawing area gray out and don't return,
> >> although you can zoom in and out all day long. Gone also is the command
> >> interface or any other action. I have seen this behavior on the GTK
> >> interface, as well.
> >>
> > I think that is a bug in the GTK HID as well, as I've not touched any of
> > that code. It would be a good one to get fixed though!
> >
> >
> Any idea where that might be located? I'm willing to work out a patch
> for it!
Not sure, but probably related to the seemingly unreasonably complex
code in src/hid/gui-output-events.c functions:
ghid_port_window_leave_cb (...)
and
ghid_port_window_enter_cb (...)
Perhaps the window-manager / X server is issuing Window enter / leave
events which are (ev->mode != GDK_CROSSING_NORMAL) for alt-tab into the
window without your mouse cursor crossing its sedge.
See:
http://library.gnome.org/devel/gdk/unstable/gdk-Event-Structures.html#GdkEventCrossing
I wonder if our special cases to avoid processing focus grabs are not
"special" enough.
Note that some new status flags were added in GTK 2.14 (which you might
be using)..
"
GDK_CROSSING_GTK_GRAB, GDK_CROSSING_GTK_UNGRAB,
and GDK_CROSSING_STATE_CHANGED were added in 2.14 and are always
synthesized, never native.
"
I'm curious to know whether we ought to be responding to some
GDK_CROSSING_STATE_CHANGED events.
> Any further suggestions for debugging this? It makes DRC completely
> unusable for me - once I see the errors, I can't correct them and have
> to restart PCB.
I'm not sure, sorry. Perhaps it is related to the first bug though?
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user