highcharts-rails 5.0.9 → 5.0.10
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.markdown +48 -0
- data/app/assets/javascripts/highcharts.js +547 -270
- data/app/assets/javascripts/highcharts/highcharts-3d.js +13 -11
- data/app/assets/javascripts/highcharts/highcharts-more.js +373 -181
- data/app/assets/javascripts/highcharts/modules/accessibility.js +3 -3
- data/app/assets/javascripts/highcharts/modules/annotations.js +3 -3
- data/app/assets/javascripts/highcharts/modules/boost.js +11 -5
- data/app/assets/javascripts/highcharts/modules/broken-axis.js +3 -3
- data/app/assets/javascripts/highcharts/modules/data.js +3 -3
- data/app/assets/javascripts/highcharts/modules/drilldown.js +1 -1
- data/app/assets/javascripts/highcharts/modules/exporting.js +70 -28
- data/app/assets/javascripts/highcharts/modules/funnel.js +3 -3
- data/app/assets/javascripts/highcharts/modules/grid-axis.js +1 -1
- data/app/assets/javascripts/highcharts/modules/heatmap.js +5 -5
- data/app/assets/javascripts/highcharts/modules/no-data-to-display.js +3 -3
- data/app/assets/javascripts/highcharts/modules/offline-exporting.js +2 -2
- data/app/assets/javascripts/highcharts/modules/overlapping-datalabels.js +43 -20
- data/app/assets/javascripts/highcharts/modules/series-label.js +3 -3
- data/app/assets/javascripts/highcharts/modules/solid-gauge.js +3 -3
- data/app/assets/javascripts/highcharts/modules/stock.js +83 -42
- data/app/assets/javascripts/highcharts/modules/treemap.js +1 -1
- data/app/assets/javascripts/highcharts/modules/xrange-series.js +3 -3
- data/lib/highcharts/version.rb +1 -1
- metadata +1 -1
@@ -1,8 +1,8 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
* Accessibility module
|
4
4
|
*
|
5
|
-
* (c) 2010-
|
5
|
+
* (c) 2010-2017 Highsoft AS
|
6
6
|
* Author: Oystein Moseng
|
7
7
|
*
|
8
8
|
* License: www.highcharts.com/license
|
@@ -19,7 +19,7 @@
|
|
19
19
|
/**
|
20
20
|
* Accessibility module
|
21
21
|
*
|
22
|
-
* (c) 2010-
|
22
|
+
* (c) 2010-2017 Highsoft AS
|
23
23
|
* Author: Oystein Moseng
|
24
24
|
*
|
25
25
|
* License: www.highcharts.com/license
|
@@ -1,7 +1,7 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
*
|
4
|
-
* (c) 2009-
|
4
|
+
* (c) 2009-2017 Torstein Honsi
|
5
5
|
*
|
6
6
|
* License: www.highcharts.com/license
|
7
7
|
*/
|
@@ -15,7 +15,7 @@
|
|
15
15
|
}(function(Highcharts) {
|
16
16
|
(function(H) {
|
17
17
|
/**
|
18
|
-
* (c) 2009-
|
18
|
+
* (c) 2009-2017 Torstein Honsi
|
19
19
|
*
|
20
20
|
* License: www.highcharts.com/license
|
21
21
|
*/
|
@@ -1,8 +1,8 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
* Boost module
|
4
4
|
*
|
5
|
-
* (c) 2010-
|
5
|
+
* (c) 2010-2017 Highsoft AS
|
6
6
|
* Author: Torstein Honsi
|
7
7
|
*
|
8
8
|
* License: www.highcharts.com/license
|
@@ -1933,9 +1933,7 @@
|
|
1933
1933
|
if (target instanceof H.Chart) {
|
1934
1934
|
target.markerGroup = target.renderer.g().add(targetGroup);
|
1935
1935
|
|
1936
|
-
target.markerGroup.
|
1937
|
-
target.markerGroup.translateY = series.yAxis.pos;
|
1938
|
-
target.markerGroup.updateTransform();
|
1936
|
+
target.markerGroup.translate(series.xAxis.pos, series.yAxis.pos);
|
1939
1937
|
}
|
1940
1938
|
}
|
1941
1939
|
|
@@ -2627,6 +2625,14 @@
|
|
2627
2625
|
// Allocate
|
2628
2626
|
chart.ogl.allocateBuffer(chart);
|
2629
2627
|
}
|
2628
|
+
|
2629
|
+
//see #6518
|
2630
|
+
if (chart.markerGroup) {
|
2631
|
+
chart.markerGroup.translate(
|
2632
|
+
chart.xAxis[0].pos,
|
2633
|
+
chart.yAxis[0].pos
|
2634
|
+
);
|
2635
|
+
}
|
2630
2636
|
}
|
2631
2637
|
|
2632
2638
|
addEvent(chart, 'predraw', preRender);
|
@@ -1,7 +1,7 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
*
|
4
|
-
* (c) 2009-
|
4
|
+
* (c) 2009-2017 Torstein Honsi
|
5
5
|
*
|
6
6
|
* License: www.highcharts.com/license
|
7
7
|
*/
|
@@ -15,7 +15,7 @@
|
|
15
15
|
}(function(Highcharts) {
|
16
16
|
(function(H) {
|
17
17
|
/**
|
18
|
-
* (c) 2009-
|
18
|
+
* (c) 2009-2017 Torstein Honsi
|
19
19
|
*
|
20
20
|
* License: www.highcharts.com/license
|
21
21
|
*/
|
@@ -1,8 +1,8 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
* Data module
|
4
4
|
*
|
5
|
-
* (c) 2012-
|
5
|
+
* (c) 2012-2017 Torstein Honsi
|
6
6
|
*
|
7
7
|
* License: www.highcharts.com/license
|
8
8
|
*/
|
@@ -18,7 +18,7 @@
|
|
18
18
|
/**
|
19
19
|
* Data module
|
20
20
|
*
|
21
|
-
* (c) 2012-
|
21
|
+
* (c) 2012-2017 Torstein Honsi
|
22
22
|
*
|
23
23
|
* License: www.highcharts.com/license
|
24
24
|
*/
|
@@ -1,8 +1,8 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
* Exporting module
|
4
4
|
*
|
5
|
-
* (c) 2010-
|
5
|
+
* (c) 2010-2017 Torstein Honsi
|
6
6
|
*
|
7
7
|
* License: www.highcharts.com/license
|
8
8
|
*/
|
@@ -18,7 +18,7 @@
|
|
18
18
|
/**
|
19
19
|
* Exporting module
|
20
20
|
*
|
21
|
-
* (c) 2010-
|
21
|
+
* (c) 2010-2017 Torstein Honsi
|
22
22
|
*
|
23
23
|
* License: www.highcharts.com/license
|
24
24
|
*/
|
@@ -159,15 +159,26 @@
|
|
159
159
|
/*
|
160
160
|
,{
|
161
161
|
|
162
|
-
text: 'View SVG',
|
162
|
+
text: 'View SVG Image',
|
163
163
|
onclick: function () {
|
164
|
-
var
|
164
|
+
var div = doc.createElement('div');
|
165
|
+
div.innerHTML = this.getSVGForExport();
|
166
|
+
|
167
|
+
this.renderTo.parentNode.appendChild(div);
|
168
|
+
}
|
169
|
+
}, {
|
170
|
+
|
171
|
+
text: 'View SVG Source',
|
172
|
+
onclick: function () {
|
173
|
+
var pre = doc.createElement('pre');
|
174
|
+
pre.innerHTML = this.getSVGForExport()
|
165
175
|
.replace(/</g, '\n<')
|
166
176
|
.replace(/>/g, '>');
|
167
177
|
|
168
|
-
|
178
|
+
this.renderTo.parentNode.appendChild(pre);
|
169
179
|
}
|
170
|
-
}
|
180
|
+
}
|
181
|
+
// */
|
171
182
|
]
|
172
183
|
}
|
173
184
|
}
|
@@ -213,7 +224,7 @@
|
|
213
224
|
// Move HTML into a foreignObject
|
214
225
|
if (options && options.exporting && options.exporting.allowHTML) {
|
215
226
|
var html = svg.match(/<\/svg>(.*?$)/);
|
216
|
-
if (html) {
|
227
|
+
if (html && html[1]) {
|
217
228
|
html = '<foreignObject x="0" y="0" ' +
|
218
229
|
'width="' + options.chart.width + '" ' +
|
219
230
|
'height="' + options.chart.height + '">' +
|
@@ -354,7 +365,9 @@
|
|
354
365
|
|
355
366
|
// Assign an internal key to ensure a one-to-one mapping (#5924)
|
356
367
|
each(chart.axes, function(axis) {
|
357
|
-
axis.userOptions.internalKey
|
368
|
+
if (!axis.userOptions.internalKey) { // #6444
|
369
|
+
axis.userOptions.internalKey = H.uniqueKey();
|
370
|
+
}
|
358
371
|
});
|
359
372
|
|
360
373
|
// generate the chart copy
|
@@ -532,8 +545,7 @@
|
|
532
545
|
menuPadding = Math.max(width, height), // for mouse leave detection
|
533
546
|
innerMenu,
|
534
547
|
hide,
|
535
|
-
menuStyle
|
536
|
-
removeMouseUp;
|
548
|
+
menuStyle;
|
537
549
|
|
538
550
|
// create the menu only the first time
|
539
551
|
if (!menu) {
|
@@ -572,23 +584,22 @@
|
|
572
584
|
};
|
573
585
|
|
574
586
|
// Hide the menu some time after mouse leave (#1357)
|
575
|
-
|
576
|
-
menu
|
577
|
-
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
// Hide it on clicking or touching outside the menu (#2258, #2335,
|
584
|
-
// #2407)
|
585
|
-
removeMouseUp = addEvent(doc, 'mouseup', function(e) {
|
586
|
-
if (!chart.pointer.inClass(e.target, className)) {
|
587
|
-
hide();
|
588
|
-
}
|
589
|
-
});
|
590
|
-
addEvent(chart, 'destroy', removeMouseUp);
|
587
|
+
chart.exportEvents.push(
|
588
|
+
addEvent(menu, 'mouseleave', function() {
|
589
|
+
menu.hideTimer = setTimeout(hide, 500);
|
590
|
+
}),
|
591
|
+
addEvent(menu, 'mouseenter', function() {
|
592
|
+
clearTimeout(menu.hideTimer);
|
593
|
+
}),
|
591
594
|
|
595
|
+
// Hide it on clicking or touching outside the menu (#2258, #2335,
|
596
|
+
// #2407)
|
597
|
+
addEvent(doc, 'mouseup', function(e) {
|
598
|
+
if (!chart.pointer.inClass(e.target, className)) {
|
599
|
+
hide();
|
600
|
+
}
|
601
|
+
})
|
602
|
+
);
|
592
603
|
|
593
604
|
// create the items
|
594
605
|
each(items, function(item) {
|
@@ -778,7 +789,9 @@
|
|
778
789
|
destroyExport: function(e) {
|
779
790
|
var chart = e ? e.target : this,
|
780
791
|
exportSVGElements = chart.exportSVGElements,
|
781
|
-
exportDivElements = chart.exportDivElements
|
792
|
+
exportDivElements = chart.exportDivElements,
|
793
|
+
exportEvents = chart.exportEvents,
|
794
|
+
cacheName;
|
782
795
|
|
783
796
|
// Destroy the extra buttons added
|
784
797
|
if (exportSVGElements) {
|
@@ -787,6 +800,12 @@
|
|
787
800
|
// Destroy and null the svg/vml elements
|
788
801
|
if (elem) { // #1822
|
789
802
|
elem.onclick = elem.ontouchstart = null;
|
803
|
+
cacheName = 'cache-' + elem.menuClassName;
|
804
|
+
|
805
|
+
if (chart[cacheName]) {
|
806
|
+
delete chart[cacheName];
|
807
|
+
}
|
808
|
+
|
790
809
|
chart.exportSVGElements[i] = elem.destroy();
|
791
810
|
}
|
792
811
|
});
|
@@ -809,6 +828,13 @@
|
|
809
828
|
});
|
810
829
|
exportDivElements.length = 0;
|
811
830
|
}
|
831
|
+
|
832
|
+
if (exportEvents) {
|
833
|
+
each(exportEvents, function(unbind) {
|
834
|
+
unbind();
|
835
|
+
});
|
836
|
+
exportEvents.length = 0;
|
837
|
+
}
|
812
838
|
}
|
813
839
|
});
|
814
840
|
|
@@ -840,6 +866,7 @@
|
|
840
866
|
}
|
841
867
|
|
842
868
|
if (isDirty && exportingOptions.enabled !== false) {
|
869
|
+
this.exportEvents = [];
|
843
870
|
|
844
871
|
for (n in buttons) {
|
845
872
|
this.addButton(buttons[n]);
|
@@ -876,6 +903,21 @@
|
|
876
903
|
}
|
877
904
|
};
|
878
905
|
});
|
906
|
+
|
907
|
+
// Uncomment this to see a button directly below the chart, for quick
|
908
|
+
// testing of export
|
909
|
+
/*
|
910
|
+
if (!chart.renderer.forExport) {
|
911
|
+
var button = doc.createElement('button');
|
912
|
+
button.innerHTML = 'View exported SVG';
|
913
|
+
chart.renderTo.parentNode.appendChild(button);
|
914
|
+
button.onclick = function () {
|
915
|
+
var div = doc.createElement('div');
|
916
|
+
div.innerHTML = chart.getSVGForExport();
|
917
|
+
chart.renderTo.parentNode.appendChild(div);
|
918
|
+
};
|
919
|
+
}
|
920
|
+
// */
|
879
921
|
});
|
880
922
|
|
881
923
|
}(Highcharts));
|
@@ -1,8 +1,8 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
* Highcharts funnel module
|
4
4
|
*
|
5
|
-
* (c) 2010-
|
5
|
+
* (c) 2010-2017 Torstein Honsi
|
6
6
|
*
|
7
7
|
* License: www.highcharts.com/license
|
8
8
|
*/
|
@@ -18,7 +18,7 @@
|
|
18
18
|
/**
|
19
19
|
* Highcharts funnel module
|
20
20
|
*
|
21
|
-
* (c) 2010-
|
21
|
+
* (c) 2010-2017 Torstein Honsi
|
22
22
|
*
|
23
23
|
* License: www.highcharts.com/license
|
24
24
|
*/
|
@@ -1,7 +1,7 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
*
|
4
|
-
* (c) 2009-
|
4
|
+
* (c) 2009-2017 Torstein Honsi
|
5
5
|
*
|
6
6
|
* License: www.highcharts.com/license
|
7
7
|
*/
|
@@ -15,7 +15,7 @@
|
|
15
15
|
}(function(Highcharts) {
|
16
16
|
(function(H) {
|
17
17
|
/**
|
18
|
-
* (c) 2010-
|
18
|
+
* (c) 2010-2017 Torstein Honsi
|
19
19
|
*
|
20
20
|
* License: www.highcharts.com/license
|
21
21
|
*/
|
@@ -597,7 +597,7 @@
|
|
597
597
|
}(Highcharts));
|
598
598
|
(function(H) {
|
599
599
|
/**
|
600
|
-
* (c) 2010-
|
600
|
+
* (c) 2010-2017 Torstein Honsi
|
601
601
|
*
|
602
602
|
* License: www.highcharts.com/license
|
603
603
|
*/
|
@@ -691,7 +691,7 @@
|
|
691
691
|
}(Highcharts));
|
692
692
|
(function(H) {
|
693
693
|
/**
|
694
|
-
* (c) 2010-
|
694
|
+
* (c) 2010-2017 Torstein Honsi
|
695
695
|
*
|
696
696
|
* License: www.highcharts.com/license
|
697
697
|
*/
|
@@ -1,8 +1,8 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
* Plugin for displaying a message when there is no data visible in chart.
|
4
4
|
*
|
5
|
-
* (c) 2010-
|
5
|
+
* (c) 2010-2017 Highsoft AS
|
6
6
|
* Author: Oystein Moseng
|
7
7
|
*
|
8
8
|
* License: www.highcharts.com/license
|
@@ -19,7 +19,7 @@
|
|
19
19
|
/**
|
20
20
|
* Plugin for displaying a message when there is no data visible in chart.
|
21
21
|
*
|
22
|
-
* (c) 2010-
|
22
|
+
* (c) 2010-2017 Highsoft AS
|
23
23
|
* Author: Oystein Moseng
|
24
24
|
*
|
25
25
|
* License: www.highcharts.com/license
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
* Client side exporting module
|
4
4
|
*
|
5
5
|
* (c) 2015 Torstein Honsi / Oystein Moseng
|
@@ -500,7 +500,7 @@
|
|
500
500
|
|
501
501
|
// Extend the default options to use the local exporter logic
|
502
502
|
merge(true, Highcharts.getOptions().exporting, {
|
503
|
-
libURL: 'https://code.highcharts.com/5.0.
|
503
|
+
libURL: 'https://code.highcharts.com/5.0.10/lib/',
|
504
504
|
buttons: {
|
505
505
|
contextButton: {
|
506
506
|
menuItems: [{
|
@@ -1,7 +1,7 @@
|
|
1
1
|
/**
|
2
|
-
* @license Highcharts JS v5.0.
|
2
|
+
* @license Highcharts JS v5.0.10 (2017-03-31)
|
3
3
|
*
|
4
|
-
* (c) 2009-
|
4
|
+
* (c) 2009-2017 Torstein Honsi
|
5
5
|
*
|
6
6
|
* License: www.highcharts.com/license
|
7
7
|
*/
|
@@ -15,32 +15,43 @@
|
|
15
15
|
}(function(Highcharts) {
|
16
16
|
(function(H) {
|
17
17
|
/**
|
18
|
-
* (c) 2009-
|
18
|
+
* (c) 2009-2017 Torstein Honsi
|
19
19
|
*
|
20
20
|
* License: www.highcharts.com/license
|
21
21
|
*/
|
22
22
|
/**
|
23
|
-
* Highcharts module to hide overlapping data labels. This module is included in
|
23
|
+
* Highcharts module to hide overlapping data labels. This module is included in
|
24
|
+
* Highcharts.
|
24
25
|
*/
|
25
26
|
var Chart = H.Chart,
|
26
27
|
each = H.each,
|
27
28
|
pick = H.pick,
|
28
29
|
addEvent = H.addEvent;
|
29
30
|
|
30
|
-
// Collect potensial overlapping data labels. Stack labels probably don't need
|
31
|
-
// considered because they are usually accompanied by data labels that lie
|
31
|
+
// Collect potensial overlapping data labels. Stack labels probably don't need
|
32
|
+
// to be considered because they are usually accompanied by data labels that lie
|
33
|
+
// inside the columns.
|
32
34
|
Chart.prototype.callbacks.push(function(chart) {
|
33
35
|
function collectAndHide() {
|
34
36
|
var labels = [];
|
35
37
|
|
36
38
|
each(chart.series || [], function(series) {
|
37
39
|
var dlOptions = series.options.dataLabels,
|
38
|
-
|
39
|
-
|
40
|
+
// Range series have two collections
|
41
|
+
collections = series.dataLabelCollections || ['dataLabel'];
|
42
|
+
|
43
|
+
if (
|
44
|
+
(dlOptions.enabled || series._hasPointLabels) &&
|
45
|
+
!dlOptions.allowOverlap &&
|
46
|
+
series.visible
|
47
|
+
) { // #3866
|
40
48
|
each(collections, function(coll) {
|
41
49
|
each(series.points, function(point) {
|
42
50
|
if (point[coll]) {
|
43
|
-
point[coll].labelrank = pick(
|
51
|
+
point[coll].labelrank = pick(
|
52
|
+
point.labelrank,
|
53
|
+
point.shapeArgs && point.shapeArgs.height
|
54
|
+
); // #4118
|
44
55
|
labels.push(point[coll]);
|
45
56
|
}
|
46
57
|
});
|
@@ -59,8 +70,8 @@
|
|
59
70
|
});
|
60
71
|
|
61
72
|
/**
|
62
|
-
* Hide overlapping labels. Labels are moved and faded in and out on zoom to
|
63
|
-
* visual imression.
|
73
|
+
* Hide overlapping labels. Labels are moved and faded in and out on zoom to
|
74
|
+
* provide a smooth visual imression.
|
64
75
|
*/
|
65
76
|
Chart.prototype.hideOverlappingLabels = function(labels) {
|
66
77
|
|
@@ -94,9 +105,8 @@
|
|
94
105
|
}
|
95
106
|
}
|
96
107
|
|
97
|
-
// Prevent a situation in a gradually rising slope, that each label
|
98
|
-
//
|
99
|
-
// lower rank.
|
108
|
+
// Prevent a situation in a gradually rising slope, that each label will
|
109
|
+
// hide the previous one because the previous one always has lower rank.
|
100
110
|
labels.sort(function(a, b) {
|
101
111
|
return (b.labelrank || 0) - (a.labelrank || 0);
|
102
112
|
});
|
@@ -107,12 +117,19 @@
|
|
107
117
|
|
108
118
|
for (j = i + 1; j < len; ++j) {
|
109
119
|
label2 = labels[j];
|
110
|
-
if (
|
120
|
+
if (
|
121
|
+
label1 && label2 &&
|
122
|
+
label1 !== label2 && // #6465, polar chart with connectEnds
|
123
|
+
label1.placed && label2.placed &&
|
124
|
+
label1.newOpacity !== 0 && label2.newOpacity !== 0
|
125
|
+
) {
|
111
126
|
pos1 = label1.alignAttr;
|
112
127
|
pos2 = label2.alignAttr;
|
113
|
-
|
128
|
+
// Different panes have different positions
|
129
|
+
parent1 = label1.parentGroup;
|
114
130
|
parent2 = label2.parentGroup;
|
115
|
-
|
131
|
+
// Substract the padding if no background or border (#4333)
|
132
|
+
padding = 2 * (label1.box ? 0 : label1.padding);
|
116
133
|
isIntersecting = intersectRect(
|
117
134
|
pos1.x + parent1.translateX,
|
118
135
|
pos1.y + parent1.translateY,
|
@@ -125,7 +142,8 @@
|
|
125
142
|
);
|
126
143
|
|
127
144
|
if (isIntersecting) {
|
128
|
-
(label1.labelrank < label2.labelrank ? label1 : label2)
|
145
|
+
(label1.labelrank < label2.labelrank ? label1 : label2)
|
146
|
+
.newOpacity = 0;
|
129
147
|
}
|
130
148
|
}
|
131
149
|
}
|
@@ -141,7 +159,8 @@
|
|
141
159
|
|
142
160
|
if (label.oldOpacity !== newOpacity && label.placed) {
|
143
161
|
|
144
|
-
// Make sure the label is completely hidden to avoid catching
|
162
|
+
// Make sure the label is completely hidden to avoid catching
|
163
|
+
// clicks (#4362)
|
145
164
|
if (newOpacity) {
|
146
165
|
label.show(true);
|
147
166
|
} else {
|
@@ -152,7 +171,11 @@
|
|
152
171
|
|
153
172
|
// Animate or set the opacity
|
154
173
|
label.alignAttr.opacity = newOpacity;
|
155
|
-
label[label.isOld ? 'animate' : 'attr'](
|
174
|
+
label[label.isOld ? 'animate' : 'attr'](
|
175
|
+
label.alignAttr,
|
176
|
+
null,
|
177
|
+
complete
|
178
|
+
);
|
156
179
|
|
157
180
|
}
|
158
181
|
label.isOld = true;
|