frank0051 / google-maps-utility-library-v3

Automatically exported from code.google.com/p/google-maps-utility-library-v3
Apache License 2.0
1 stars 0 forks source link

Cluster Icon Appearing top left corner when not needed #309

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
On Android 4.3 (Samsung Galaxy S4 and Note3), it appears as though the clusters 
are showing up when they should not be.  This can be reproduced using the 
simple example from the library

Demo link or sample code:
http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerclustererplu
s/2.1.2/examples/simple_example.html

What steps will reproduce the problem?
1. Click on the "7" cluster, then the "4" cluster and finally the "2" cluster
2. The "2" cluster remains in the top left corner.  Clicking it does nothing

Expected result:
The two icons appear without any cluster icons on screen

Actual result:
The cluster icon still shows up on screen.  You can not click on the icon.  
Zooming out does reset the icon, however it sometimes takes a few zooms for the 
icon to actually disappear. 

Version: 2.1.2 (latest)

Browser / Operating System:
Android 4.3 Built in browser

*********************************************************
Tip: Star this issue (next to title) to receive notifications of status
changes against this issue, also used as a gauge for how many people are
interested in seeing it resolved.
*********************************************************

Original issue reported on code.google.com by hakim.sa...@contentthread.com on 23 May 2014 at 4:43

Attachments:

GoogleCodeExporter commented 8 years ago
This is an android bug.  The :

element.parentNode.removeChild(element);

doesnt seem to work correctly and causes the screen not to redraw correctly.  
The workaround would be to do this:

ClusterIcon.prototype.onAdd = function () {
    var cClusterIcon = this;
    var cMouseDownInCluster;
    var cDraggingMapByCluster;

    this.div_ = document.createElement("div");
    this.div_.className = this.className_;
    if (this.visible_) {
        this.show();
    }
    else{
        this.hide();
    }

Original comment by hakim.sa...@contentthread.com on 26 May 2014 at 4:06

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
I have this issue on android 4.2 and 4.3 also.

Original comment by kl3...@gmail.com on 21 Nov 2014 at 10:52