Add detection of canvas line dash support
This commit is contained in:
@@ -73,6 +73,14 @@ ol.IS_LEGACY_IE = goog.userAgent.IE &&
|
|||||||
ol.BrowserFeature.DEVICE_PIXEL_RATIO = goog.global.devicePixelRatio || 1;
|
ol.BrowserFeature.DEVICE_PIXEL_RATIO = goog.global.devicePixelRatio || 1;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* True if the browser's Canvas implementation implements {get,set}LineDash.
|
||||||
|
* @type {boolean}
|
||||||
|
* @todo stability experimental
|
||||||
|
*/
|
||||||
|
ol.BrowserFeature.HAS_CANVAS_LINE_DASH = false;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* True if browser supports Canvas.
|
* True if browser supports Canvas.
|
||||||
* @const
|
* @const
|
||||||
@@ -90,7 +98,16 @@ ol.BrowserFeature.HAS_CANVAS = ol.ENABLE_CANVAS && (
|
|||||||
try {
|
try {
|
||||||
var canvas = /** @type {HTMLCanvasElement} */
|
var canvas = /** @type {HTMLCanvasElement} */
|
||||||
(goog.dom.createElement(goog.dom.TagName.CANVAS));
|
(goog.dom.createElement(goog.dom.TagName.CANVAS));
|
||||||
return !goog.isNull(canvas.getContext('2d'));
|
var context = /** @type {CanvasRenderingContext2D} */
|
||||||
|
(canvas.getContext('2d'));
|
||||||
|
if (goog.isNull(context)) {
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
if (goog.isDef(context.setLineDash)) {
|
||||||
|
ol.BrowserFeature.HAS_CANVAS_LINE_DASH = true;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user