From 894c82cec92d96270666a2425b7e2fee21e76781 Mon Sep 17 00:00:00 2001 From: Yury Delendik Date: Mon, 10 Feb 2014 15:06:03 -0600 Subject: [PATCH] Removes -moz-box-sizing usage --- extensions/b2g/viewer.css | 3 +-- external/builder/builder.js | 22 +++++++++++++++++----- make.js | 4 +++- 3 files changed, 21 insertions(+), 8 deletions(-) diff --git a/extensions/b2g/viewer.css b/extensions/b2g/viewer.css index b134b4f79..ab1198d89 100644 --- a/extensions/b2g/viewer.css +++ b/extensions/b2g/viewer.css @@ -13,9 +13,8 @@ * limitations under the License. */ -* { -moz-box-sizing: border-box; } - * { + box-sizing: border-box; padding: 0; margin: 0; } diff --git a/external/builder/builder.js b/external/builder/builder.js index 864db8509..a7fd887dc 100644 --- a/external/builder/builder.js +++ b/external/builder/builder.js @@ -101,17 +101,28 @@ function preprocess(inFilename, outFilename, defines) { } exports.preprocess = preprocess; +var deprecatedInMozcentral = new RegExp('(^|\\W)(' + [ + '-moz-box-sizing', + '-moz-grab', + '-moz-grabbing' + ].join('|') + ')'); + function preprocessCSS(mode, source, destination) { - function hasPrefixed(line) { + function hasPrefixedFirefox(line) { return (/(^|\W)-(ms|o|webkit)-\w/.test(line)); } - function removePrefixed(content) { + function hasPrefixedMozcentral(line) { + return (/(^|\W)-(ms|o|webkit)-\w/.test(line) || + deprecatedInMozcentral.test(line)); + } + + function removePrefixed(content, hasPrefixedFilter) { var lines = content.split(/\r?\n/g); var i = 0; while (i < lines.length) { var line = lines[i]; - if (!hasPrefixed(line)) { + if (!hasPrefixedFilter(line)) { i++; continue; } @@ -151,12 +162,13 @@ function preprocessCSS(mode, source, destination) { return lines.join('\n'); } - if (mode !== 'firefox') { + if (mode !== 'firefox' && mode !== 'mozcentral') { throw new Error('Invalid CSS preprocessor mode'); } var content = fs.readFileSync(source, 'utf8'); - var out = removePrefixed(content); + var out = removePrefixed(content, + mode === 'mozcentral' ? hasPrefixedMozcentral : hasPrefixedFirefox); fs.writeFileSync(destination, out); } exports.preprocessCSS = preprocessCSS; diff --git a/make.js b/make.js index eee901647..a9a4c63cc 100644 --- a/make.js +++ b/make.js @@ -613,7 +613,9 @@ target.mozcentral = function() { [SRC_DIR + 'core/network.js', MOZCENTRAL_CONTENT_DIR] ], preprocessCSS: [ - ['firefox', 'web/viewer.css', MOZCENTRAL_CONTENT_DIR + '/web/viewer.css'] + ['mozcentral', + 'web/viewer.css', + MOZCENTRAL_CONTENT_DIR + '/web/viewer.css'] ] }; builder.build(setup);