# all files / ol/webgl/ webgl.js

41.67% Statements 5/12
0% Branches 0/2
0% Functions 0/1
41.67% Lines 5/12

    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
    451×
    1×

    1×

    1×

    1×

     goog.provide('ol.webgl');
    goog.provide('ol.webgl.WebGLContextEventType');

    /**
     * @const
     * @private
     * @type {Array.<string>}
     */
    ol.webgl.CONTEXT_IDS_ = [
      'experimental-webgl',
      'webgl',
      'webkit-3d',
      'moz-webgl'
    ];

    /**
     * @enum {string}
     */
    ol.webgl.WebGLContextEventType = {
      LOST: 'webglcontextlost',
      RESTORED: 'webglcontextrestored'
    };

    /**
     * @param {HTMLCanvasElement} canvas Canvas.
     * @param {Object=} opt_attributes Attributes.
     * @return {WebGLRenderingContext} WebGL rendering context.
     */
    ol.webgl.getContext = function(canvas, opt_attributes) {
      var context, i, ii = ol.webgl.CONTEXT_IDS_.length;
      for (i = 0; i < ii; ++i) {
        try {
          context = canvas.getContext(ol.webgl.CONTEXT_IDS_[i], opt_attributes);
          if (context) {
            return /** @type {!WebGLRenderingContext} */ (context);
          }
        } catch (e) {
        }
      }
      return null;
    };