Re: getting button_press event for gtk_drawing_area




Hi Carlos,

This has been working fine until being compiled with gtk+-2.18.0 but
does not work after that. Now I found that it worked with the later
gtk if I add GDK_BUTTON_RELEASE_MASK when calling
gtk_widget_set_events(). I don't know why... I even don't have the
callback for the event.

I guess I am simply wrong with my coding. I appreciate if someone can
educate me a bit how this should be done correctly. The sample below
is still valid. (if you add GDK_BUTTON_RELEASE_MASK, it works) 
I know nothing about your problem, but it seems that in my GTK 2.18.3, 
button press events in drawing areas need GDK_BUTTON_RELEASE_MASK to 
properly work. This was not the case in older GTK versions (tested it 
with GTK 2.12.8).

In my case, what I notice is: if I press a button over a drawing area, 
then I need to press twice a Cancel or a Ok button in a (window widget) 
dialog for this to be effective. It seems a problem of focus grab... 
adding GDK_BUTTON_RELEASE_MASK with gtk_widget_set_events the problem 
disappears...

Thanks. Sounds like the similar case. In my case if I press somewhere in
the window but out of the drawing_area(s), I can make the next press
effective. Indeed it looks like a focus problem.

If I am correct GDK_BUTTON_RELEASE_MASK has been set internally until the
specific commit. But it needs to be set by the application after the
change to work properly. I don't know how this works. Maybe there also is
some internal callback for this event and is doing some magic.

But thanks anyway. It was good to hear that someone else has the similar
issue and is workarounding the same way.

Regards,
Eigo



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]