WebKit Bugzilla
Attachment 358465 Details for
Bug 193173
: Web Inspector: "white" and "black" aren't recognized as color keywords
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
patch.txt (text/plain), 5.10 KB, created by
Nikita Vasilyev
on 2019-01-06 12:12:51 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Nikita Vasilyev
Created:
2019-01-06 12:12:51 PST
Size:
5.10 KB
patch
obsolete
>diff --git a/Source/WebInspectorUI/ChangeLog b/Source/WebInspectorUI/ChangeLog >index f05867e772b..7299fc2e1f1 100644 >--- a/Source/WebInspectorUI/ChangeLog >+++ b/Source/WebInspectorUI/ChangeLog >@@ -1,3 +1,24 @@ >+2019-01-05 Nikita Vasilyev <nvasilyev@apple.com> >+ >+ Web Inspector: "white" isn't recognized as a color keyword >+ https://bugs.webkit.org/show_bug.cgi?id=193173 >+ <rdar://problem/47068595> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Attempt to parse "atom" token types as colors. >+ >+ Display color picker only for color-aware properties. For instance, >+ display it for "color: white" but not for "-apple-pay-button-style: white". >+ >+ * UserInterface/Models/CSSKeywordCompletions.js: >+ (addKeywordsForName): >+ (WI.CSSKeywordCompletions.forProperty): >+ (WI.CSSKeywordCompletions.isColorAwareProperty): >+ * UserInterface/Views/SpreadsheetStyleProperty.js: >+ (WI.SpreadsheetStyleProperty.prototype._renderValue): >+ (WI.SpreadsheetStyleProperty.prototype._addColorTokens): >+ > 2019-01-04 Joseph Pecoraro <pecoraro@apple.com> > > Web Inspector: subclasses of WI.ClusterContentView don't save/restore content views after the initial view >diff --git a/Source/WebInspectorUI/UserInterface/Models/CSSKeywordCompletions.js b/Source/WebInspectorUI/UserInterface/Models/CSSKeywordCompletions.js >index a908c1f6e07..b04f03054e2 100644 >--- a/Source/WebInspectorUI/UserInterface/Models/CSSKeywordCompletions.js >+++ b/Source/WebInspectorUI/UserInterface/Models/CSSKeywordCompletions.js >@@ -43,11 +43,7 @@ WI.CSSKeywordCompletions.forProperty = function(propertyName) > else if (isNotPrefixed && ("-webkit-" + name) in WI.CSSKeywordCompletions._propertyKeywordMap) > acceptedKeywords = acceptedKeywords.concat(WI.CSSKeywordCompletions._propertyKeywordMap["-webkit-" + name]); > >- if (name in WI.CSSKeywordCompletions._colorAwareProperties) >- acceptedKeywords = acceptedKeywords.concat(WI.CSSKeywordCompletions._colors); >- else if (isNotPrefixed && ("-webkit-" + name) in WI.CSSKeywordCompletions._colorAwareProperties) >- acceptedKeywords = acceptedKeywords.concat(WI.CSSKeywordCompletions._colors); >- else if (name.endsWith("color")) >+ if (WI.CSSKeywordCompletions.isColorAwareProperty(name)) > acceptedKeywords = acceptedKeywords.concat(WI.CSSKeywordCompletions._colors); > > // Only suggest "inherit" on inheritable properties even though it is valid on all properties. >@@ -77,6 +73,21 @@ WI.CSSKeywordCompletions.forProperty = function(propertyName) > return new WI.CSSCompletions(Array.from(new Set(acceptedKeywords)), true); > }; > >+WI.CSSKeywordCompletions.isColorAwareProperty = function(name) >+{ >+ if (name in WI.CSSKeywordCompletions._colorAwareProperties) >+ return true; >+ >+ let isNotPrefixed = name.charAt(0) !== "-"; >+ if (isNotPrefixed && ("-webkit-" + name) in WI.CSSKeywordCompletions._colorAwareProperties) >+ return true; >+ >+ if (name.endsWith("color")) >+ return true; >+ >+ return false; >+}; >+ > WI.CSSKeywordCompletions.forFunction = function(functionName) > { > let suggestions = ["var()"]; >diff --git a/Source/WebInspectorUI/UserInterface/Views/SpreadsheetStyleProperty.js b/Source/WebInspectorUI/UserInterface/Views/SpreadsheetStyleProperty.js >index d454fa6020f..d9957c7641c 100644 >--- a/Source/WebInspectorUI/UserInterface/Views/SpreadsheetStyleProperty.js >+++ b/Source/WebInspectorUI/UserInterface/Views/SpreadsheetStyleProperty.js >@@ -420,8 +420,12 @@ WI.SpreadsheetStyleProperty = class SpreadsheetStyleProperty extends WI.Object > > if (this._property.enabled) { > // FIXME: <https://webkit.org/b/178636> Web Inspector: Styles: Make inline widgets work with CSS functions (var(), calc(), etc.) >- tokens = this._addGradientTokens(tokens); >- tokens = this._addColorTokens(tokens); >+ >+ // CSS variables may contain color - display color picker for them. >+ if (this._property.variable || WI.CSSKeywordCompletions.isColorAwareProperty(this._property.name)) { >+ tokens = this._addGradientTokens(tokens); >+ tokens = this._addColorTokens(tokens); >+ } > tokens = this._addTimingFunctionTokens(tokens, "cubic-bezier"); > tokens = this._addTimingFunctionTokens(tokens, "spring"); > tokens = this._addVariableTokens(tokens); >@@ -562,7 +566,7 @@ WI.SpreadsheetStyleProperty = class SpreadsheetStyleProperty extends WI.Object > } else if (WI.Color.FunctionNames.has(token.value) && token.type && (token.type.includes("atom") || token.type.includes("keyword"))) { > // Color Function start > colorFunctionStartIndex = i; >- } else if (isNaN(colorFunctionStartIndex) && token.type && token.type.includes("keyword")) { >+ } else if (isNaN(colorFunctionStartIndex) && token.type && (token.type.includes("atom") || token.type.includes("keyword"))) { > // Color keyword > pushPossibleColorToken(token.value, token); > } else if (!isNaN(colorFunctionStartIndex)) {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 193173
:
358445
|
358446
| 358465