You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
2.6 KiB
57 lines
2.6 KiB
define([ |
|
"dojo/_base/lang", |
|
"dojo/sniff" |
|
], function(lang, has){ |
|
// module: |
|
// dojox/mobile/compat |
|
|
|
var dm = lang.getObject("dojox.mobile", true); |
|
// TODO: Use feature detection instead, but this would require a major rewrite of _compat |
|
// to detect each feature and plug the corresponding compat code if needed. |
|
// Currently the compat code is a workaround for too many different things to be able to |
|
// decide based on feature detection. So for now we just disable _compat on the mobile browsers |
|
// that are known to support enough CSS3: all webkit-based browsers, IE10 (Windows [Phone] 8) and IE11+. |
|
if(!(has("webkit") || has("ie") === 10) || (!has("ie") && has("trident") > 6)){ |
|
var s = "dojox/mobile/_compat"; // assign to a variable so as not to be picked up by the build tool |
|
require([s]); |
|
} |
|
|
|
/*===== |
|
return { |
|
// summary: |
|
// CSS3 compatibility module. |
|
// description: |
|
// This module provides to dojox/mobile support for some of the CSS3 features |
|
// in non-CSS3 browsers, such as IE or Firefox. |
|
// If you require this module, when running in a non-CSS3 browser it directly |
|
// replaces some of the methods of dojox/mobile classes, without any subclassing. |
|
// This way, HTML pages remain the same regardless of whether this compatibility |
|
// module is used or not. |
|
// |
|
// Example of usage: |
|
// | require([ |
|
// | "dojox/mobile", |
|
// | "dojox/mobile/compat", |
|
// | ... |
|
// | ], function(...){ |
|
// | ... |
|
// | }); |
|
// |
|
// This module also loads compatibility CSS files, which have a -compat.css |
|
// suffix. You can use either the `<link>` tag or `@import` to load theme |
|
// CSS files. Then, this module searches for the loaded CSS files and loads |
|
// compatibility CSS files. For example, if you load dojox/mobile/themes/iphone/iphone.css |
|
// in a page, this module automatically loads dojox/mobile/themes/iphone/iphone-compat.css. |
|
// If you explicitly load iphone-compat.css with `<link>` or `@import`, |
|
// this module will not load again the already loaded file. |
|
// |
|
// Note that, by default, compatibility CSS files are only loaded for CSS files located |
|
// in a directory containing a "mobile/themes" path. For that, a matching is done using |
|
// the default pattern "/\/mobile\/themes\/.*\.css$/". If a custom theme is not located |
|
// in a directory containing this path, the data-dojo-config needs to specify a custom |
|
// pattern using the "mblLoadCompatPattern" configuration parameter, for instance: |
|
// | data-dojo-config="mblLoadCompatPattern: /\/mycustomtheme\/.*\.css$/" |
|
}; |
|
=====*/ |
|
return dm; |
|
});
|
|
|