I thought I'd run your program and see what happens, but that's difficult without the drawarea.glade file.
What is it that you suspect is a bug? That you get
an extra motion event with set_event_compression(false)? Or that
you don't get it with set_event_compression(true)? It's hardly
surprising that the number of motion events differ with and
without event compression.
I have a simple drawing area, and I have configured set_event_compression(false). I am printing out motion and button events, and I see while I move the mouse the motion events come out, but then when I stop and press the mouse button, I get one more motion event and then the button press event. Now I can do this because I'm using a trackball, so it is easy to press a button without incurring any further actual mouse motion. When I comment out the line to set_event_compression, I do not see this behavior. So instead when I press the mouse button, I just get a button press, and the coordinates of that button press match exactly to the last motion event. I wonder if someone can either confirm it is a bug, or I really hope that it is a problem I'm doing. I am using GTKMM 3.24.6. Here is a simple example which I compiled with: g++ -o drawtest $(pkg-config --cflags --libs gtkmm-3.0) drawtest.cpp