File tree Expand file tree Collapse file tree 2 files changed +26
-0
lines changed Expand file tree Collapse file tree 2 files changed +26
-0
lines changed Original file line number Diff line number Diff line change @@ -52,6 +52,27 @@ class OverlayLayer extends Layer {
52
52
}
53
53
}
54
54
55
+ isGeometryListening ( types ) {
56
+ if ( ! this . _geoList ) {
57
+ return false ;
58
+ }
59
+ if ( ! Array . isArray ( types ) ) {
60
+ types = [ types ] ;
61
+ }
62
+ for ( let i = 0 , l = this . _geoList . length ; i < l ; i ++ ) {
63
+ const geometry = this . _geoList [ i ] ;
64
+ if ( ! geometry ) {
65
+ continue ;
66
+ }
67
+ for ( let j = 0 ; j < types . length ; j ++ ) {
68
+ if ( geometry . listens ( types [ j ] ) ) {
69
+ return true ;
70
+ }
71
+ }
72
+ }
73
+ return false ;
74
+ }
75
+
55
76
/**
56
77
* Get a geometry by its id
57
78
* @param {String|Number } id - id of the geometry
Original file line number Diff line number Diff line change @@ -106,6 +106,11 @@ Map.include(/** @lends Map.prototype */ {
106
106
opts . tolerance = opts . tolerance || 0 ;
107
107
opts . tolerance += layer . options . geometryEventTolerance ;
108
108
}
109
+ if ( layer . isGeometryListening && isMapGeometryEvent && opts . eventTypes . indexOf ( 'mousemove' ) >= 0 ) {
110
+ if ( ! layer . isGeometryListening ( opts . eventTypes ) ) {
111
+ return [ ] ;
112
+ }
113
+ }
109
114
if ( layer . identifyAtPoint ) {
110
115
result = layer . identifyAtPoint ( containerPoint , opts ) ;
111
116
} else if ( coordinate && layer . identify ) {
You can’t perform that action at this time.
0 commit comments