From d25c25234899eafc952121e4d120234300611408 Mon Sep 17 00:00:00 2001 From: Derk-Jan Hartman Date: Wed, 5 Mar 2014 14:46:35 +0100 Subject: [PATCH 1/2] Add a testcase for @viewport rule --- tests/all-rules.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/all-rules.js b/tests/all-rules.js index 191f1001..bec740d1 100644 --- a/tests/all-rules.js +++ b/tests/all-rules.js @@ -28,6 +28,11 @@ this.options[rules[i].id] = 1; }, + "Using @viewport should not result in an error": function(){ + var result = CSSLint.verify("@viewport { width: auto; }", this.options); + Assert.areEqual(0, result.messages.length); + }, + "Using @keyframes should not result in an error": function(){ var result = CSSLint.verify("@keyframes resize { 0% {padding: 0;} 50% {padding: 0;} 100% {padding: 0;}}", this.options); Assert.areEqual(0, result.messages.length); From 3c02bc6042e89c9b34f36c01c3e5fea1dffa74da Mon Sep 17 00:00:00 2001 From: Derk-Jan Hartman Date: Wed, 12 Mar 2014 17:02:13 +0100 Subject: [PATCH 2/2] Make other rules understand and reset based on viewport --- src/rules/box-model.js | 4 +++- src/rules/display-property-grouping.js | 4 +++- src/rules/duplicate-properties.js | 3 ++- src/rules/fallback-colors.js | 3 ++- src/rules/outline-none.js | 4 +++- src/rules/vendor-prefix.js | 4 +++- 6 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/rules/box-model.js b/src/rules/box-model.js index d62e5371..95f9e8a3 100644 --- a/src/rules/box-model.js +++ b/src/rules/box-model.js @@ -73,6 +73,7 @@ CSSLint.addRule({ parser.addListener("startpage", startRule); parser.addListener("startpagemargin", startRule); parser.addListener("startkeyframerule", startRule); + parser.addListener("startviewport", startRule); parser.addListener("property", function(event){ var name = event.property.text.toLowerCase(); @@ -96,6 +97,7 @@ CSSLint.addRule({ parser.addListener("endpage", endRule); parser.addListener("endpagemargin", endRule); parser.addListener("endkeyframerule", endRule); + parser.addListener("endviewport", endRule); } -}); \ No newline at end of file +}); diff --git a/src/rules/display-property-grouping.js b/src/rules/display-property-grouping.js index d0d54678..bee7bc9a 100644 --- a/src/rules/display-property-grouping.js +++ b/src/rules/display-property-grouping.js @@ -97,6 +97,7 @@ CSSLint.addRule({ parser.addListener("startkeyframerule", startRule); parser.addListener("startpagemargin", startRule); parser.addListener("startpage", startRule); + parser.addListener("startviewport", startRule); parser.addListener("property", function(event){ var name = event.property.text.toLowerCase(); @@ -111,7 +112,8 @@ CSSLint.addRule({ parser.addListener("endkeyframerule", endRule); parser.addListener("endpagemargin", endRule); parser.addListener("endpage", endRule); + parser.addListener("endviewport", endRule); } -}); \ No newline at end of file +}); diff --git a/src/rules/duplicate-properties.js b/src/rules/duplicate-properties.js index 841cd342..19bb7d3d 100644 --- a/src/rules/duplicate-properties.js +++ b/src/rules/duplicate-properties.js @@ -26,6 +26,7 @@ CSSLint.addRule({ parser.addListener("startpage", startRule); parser.addListener("startpagemargin", startRule); parser.addListener("startkeyframerule", startRule); + parser.addListener("startviewport", startRule); parser.addListener("property", function(event){ var property = event.property, @@ -43,4 +44,4 @@ CSSLint.addRule({ } -}); \ No newline at end of file +}); diff --git a/src/rules/fallback-colors.js b/src/rules/fallback-colors.js index 5c060974..9ce6aa5f 100644 --- a/src/rules/fallback-colors.js +++ b/src/rules/fallback-colors.js @@ -39,6 +39,7 @@ CSSLint.addRule({ parser.addListener("startpage", startRule); parser.addListener("startpagemargin", startRule); parser.addListener("startkeyframerule", startRule); + parser.addListener("startviewport", startRule); parser.addListener("property", function(event){ var property = event.property, @@ -74,4 +75,4 @@ CSSLint.addRule({ } -}); \ No newline at end of file +}); diff --git a/src/rules/outline-none.js b/src/rules/outline-none.js index b569ed77..f721aa7b 100644 --- a/src/rules/outline-none.js +++ b/src/rules/outline-none.js @@ -48,6 +48,7 @@ CSSLint.addRule({ parser.addListener("startpage", startRule); parser.addListener("startpagemargin", startRule); parser.addListener("startkeyframerule", startRule); + parser.addListener("startviewport", startRule); parser.addListener("property", function(event){ var name = event.property.text.toLowerCase(), @@ -67,7 +68,8 @@ CSSLint.addRule({ parser.addListener("endpage", endRule); parser.addListener("endpagemargin", endRule); parser.addListener("endkeyframerule", endRule); + parser.addListener("endviewport", endRule); } -}); \ No newline at end of file +}); diff --git a/src/rules/vendor-prefix.js b/src/rules/vendor-prefix.js index 08c73268..effabc15 100644 --- a/src/rules/vendor-prefix.js +++ b/src/rules/vendor-prefix.js @@ -122,6 +122,7 @@ CSSLint.addRule({ parser.addListener("startpage", startRule); parser.addListener("startpagemargin", startRule); parser.addListener("startkeyframerule", startRule); + parser.addListener("startviewport", startRule); parser.addListener("property", function(event){ var name = event.property.text.toLowerCase(); @@ -138,6 +139,7 @@ CSSLint.addRule({ parser.addListener("endpage", endRule); parser.addListener("endpagemargin", endRule); parser.addListener("endkeyframerule", endRule); + parser.addListener("endviewport", endRule); } -}); \ No newline at end of file +});