3
3
var axisIds = require ( '../../plots/cartesian/axis_ids' ) ;
4
4
var scatterSubTypes = require ( '../../traces/scatter/subtypes' ) ;
5
5
var Registry = require ( '../../registry' ) ;
6
- var isUnifiedHover = require ( '../fx/helpers' ) . isUnifiedHover ;
7
6
8
7
var createModeBar = require ( './modebar' ) ;
9
8
var modeBarButtons = require ( './buttons' ) ;
@@ -86,7 +85,6 @@ function getButtonGroups(gd) {
86
85
var hasPolar = fullLayout . _has ( 'polar' ) ;
87
86
var hasSankey = fullLayout . _has ( 'sankey' ) ;
88
87
var allAxesFixed = areAllAxesFixed ( fullLayout ) ;
89
- var hasUnifiedHoverLabel = isUnifiedHover ( fullLayout . hovermode ) ;
90
88
91
89
var groups = [ ] ;
92
90
@@ -111,45 +109,23 @@ function getButtonGroups(gd) {
111
109
addGroup ( commonGroup ) ;
112
110
113
111
var zoomGroup = [ ] ;
114
- var hoverGroup = [ ] ;
115
112
var resetGroup = [ ] ;
116
113
var dragModeGroup = [ ] ;
117
114
118
115
if ( ( hasCartesian || hasGL2D || hasPie || hasFunnelarea || hasTernary ) + hasGeo + hasGL3D + hasMapbox + hasPolar > 1 ) {
119
116
// graphs with more than one plot types get 'union buttons'
120
- // which reset the view or toggle hover labels across all subplots.
121
- hoverGroup = [ 'toggleHover' ] ;
117
+ // which reset the view across all subplots.
122
118
resetGroup = [ 'resetViews' ] ;
123
119
} else if ( hasGeo ) {
124
120
zoomGroup = [ 'zoomInGeo' , 'zoomOutGeo' ] ;
125
- hoverGroup = [ 'hoverClosestGeo' ] ;
126
121
resetGroup = [ 'resetGeo' ] ;
127
122
} else if ( hasGL3D ) {
128
- hoverGroup = [ 'hoverClosest3d' ] ;
129
123
resetGroup = [ 'resetCameraDefault3d' , 'resetCameraLastSave3d' ] ;
130
124
} else if ( hasMapbox ) {
131
125
zoomGroup = [ 'zoomInMapbox' , 'zoomOutMapbox' ] ;
132
- hoverGroup = [ 'toggleHover' ] ;
133
126
resetGroup = [ 'resetViewMapbox' ] ;
134
- } else if ( hasGL2D ) {
135
- hoverGroup = [ 'hoverClosestGl2d' ] ;
136
- } else if ( hasPie ) {
137
- hoverGroup = [ 'hoverClosestPie' ] ;
138
127
} else if ( hasSankey ) {
139
- hoverGroup = [ 'hoverClosestCartesian' , 'hoverCompareCartesian' ] ;
140
128
resetGroup = [ 'resetViewSankey' ] ;
141
- } else { // hasPolar, hasTernary
142
- // always show at least one hover icon.
143
- hoverGroup = [ 'toggleHover' ] ;
144
- }
145
- // if we have cartesian, allow switching between closest and compare
146
- // regardless of what other types are on the plot, since they'll all
147
- // just treat any truthy hovermode as 'closest'
148
- if ( hasCartesian ) {
149
- hoverGroup = [ 'toggleSpikelines' , 'hoverClosestCartesian' , 'hoverCompareCartesian' ] ;
150
- }
151
- if ( hasNoHover ( fullData ) || hasUnifiedHoverLabel ) {
152
- hoverGroup = [ ] ;
153
129
}
154
130
155
131
if ( ( hasCartesian || hasGL2D ) && ! allAxesFixed ) {
@@ -191,7 +167,6 @@ function getButtonGroups(gd) {
191
167
192
168
addGroup ( dragModeGroup ) ;
193
169
addGroup ( zoomGroup . concat ( resetGroup ) ) ;
194
- addGroup ( hoverGroup ) ;
195
170
196
171
return appendButtonsToGroups ( groups , buttonsToAdd ) ;
197
172
}
@@ -240,14 +215,6 @@ function isSelectable(fullData) {
240
215
return selectable ;
241
216
}
242
217
243
- // check whether all trace are 'noHover'
244
- function hasNoHover ( fullData ) {
245
- for ( var i = 0 ; i < fullData . length ; i ++ ) {
246
- if ( ! Registry . traceIs ( fullData [ i ] , 'noHover' ) ) return false ;
247
- }
248
- return true ;
249
- }
250
-
251
218
function appendButtonsToGroups ( groups , buttons ) {
252
219
if ( buttons . length ) {
253
220
if ( Array . isArray ( buttons [ 0 ] ) ) {
0 commit comments