Skip to content

AnnotationManager drag event also firing a long-click on the map #1162

@samcrawford

Description

@samcrawford

I'm using the latest 9.6.0 Mapbox SDK and the latest annotation plugin too. I'm creating some circles on my map (using CircleManager) and have setup a drag listener for them. This all works fine, but when dragging a circle it also seems to fire a long-click event on the map as well.

I note that dragging a circle does not fire a regular click event on the map. It only fires a long-click event.

This minimal code example reproduces the issue:

@Override
public void onMapReady(@NonNull final MapboxMap mapboxMap) {
    MainActivity.this.mapboxMap = mapboxMap;

    mapboxMap.setStyle(
            createStyleBuilder(STYLE_DEFAULT),
            style -> {
                initCircleManager(style);
                initMapClicks();
            });
}

private void initCircleManager(Style style) {
    circleManager = new CircleManager(mapView, mapboxMap, style);

    // snip - add a circle here, mark it as draggable

    circleManager.addDragListener(new OnCircleDragListener() {
        @Override
        public void onAnnotationDragStarted(Circle annotation) {
        }

        @Override
        public void onAnnotationDrag(Circle annotation) {
        }

        @Override
        public void onAnnotationDragFinished(Circle annotation) {
            System.out.println("Circle dragged to "+annotation.getLatLng());
        }
    });
}

private void initMapClicks() {
    mapboxMap.addOnMapLongClickListener(point -> {
        System.out.println("Map long-clicked at "+point);
    });
}

This results in the following output:

I/System.out: Circle dragged to LatLng [latitude=51.48172356366564, longitude=0.013026118189969793, altitude=0.0]
I/System.out: Map long-clicked at LatLng [latitude=51.48312269584446, longitude=0.01208949814909488, altitude=0.0]

My expectation is that dragging the circle should not result in any events being fired at the map level.

Am I doing something wrong or is this a bug? I can't find any issue that matches this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions