full-screen.src.js
1.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/* *
*
* (c) 2009-2019 Sebastian Bochann
*
* Full screen for Highcharts
*
* License: www.highcharts.com/license
*
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
*
* */
import H from '../parts/Globals.js';
/* eslint-disable no-invalid-this, valid-jsdoc */
/**
* The FullScreen class.
* The module allows user to enable full screen mode in StockTools.
* Based on default solutions in browsers.
*
* @private
* @class
* @name Highcharts.FullScreen
*
* @param {Highcharts.HTMLDOMElement} container
* Chart container
*/
var FullScreen = H.FullScreen = function (container) {
this.init(container.parentNode);
};
FullScreen.prototype = {
/**
* Init function
* @private
* @param {Highcharts.HTMLDOMElement} container
* Chart container's parent
* @return {void}
*/
init: function (container) {
var promise;
if (container.requestFullscreen) {
promise = container.requestFullscreen();
}
else if (container.mozRequestFullScreen) {
promise = container.mozRequestFullScreen();
}
else if (container.webkitRequestFullscreen) {
promise = container.webkitRequestFullscreen();
}
else if (container.msRequestFullscreen) {
promise = container.msRequestFullscreen();
}
if (promise) {
promise['catch'](function () {
alert('Full screen is not supported inside a frame'); // eslint-disable-line no-alert
});
}
}
};