--- trunk/src/osm-gps-map.c 2009/09/16 13:45:10 113 +++ trunk/src/osm-gps-map.c 2009/09/16 20:04:38 114 @@ -1797,10 +1797,13 @@ #ifdef ENABLE_OSD /* pressed inside OSD control? */ if(priv->osd) { - osd_button_t but = priv->osd->check(priv->osd, event->x, event->y); + osd_button_t but = + priv->osd->check(priv->osd, TRUE, event->x, event->y); + if(but != OSD_NONE) { - int step = GTK_WIDGET(widget)->allocation.width/OSM_GPS_MAP_SCROLL_STEP; + int step = + GTK_WIDGET(widget)->allocation.width/OSM_GPS_MAP_SCROLL_STEP; priv->drag_counter = -1; switch(but) { @@ -1880,6 +1883,12 @@ osm_gps_map_map_redraw_idle(OSM_GPS_MAP(widget)); } +#ifdef ENABLE_OSD + /* pressed inside OSD control? */ + else if(priv->osd) + priv->osd->check(priv->osd, FALSE, event->x, event->y); +#endif + #ifdef DRAG_DEBUG printf("dragging done\n");