| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 20 matching lines...) Expand all Loading... |
| 31 #include "config.h" | 31 #include "config.h" |
| 32 #include "core/html/forms/ColorInputType.h" | 32 #include "core/html/forms/ColorInputType.h" |
| 33 | 33 |
| 34 #include "bindings/core/v8/ExceptionStatePlaceholder.h" | 34 #include "bindings/core/v8/ExceptionStatePlaceholder.h" |
| 35 #include "bindings/core/v8/ScriptController.h" | 35 #include "bindings/core/v8/ScriptController.h" |
| 36 #include "core/CSSPropertyNames.h" | 36 #include "core/CSSPropertyNames.h" |
| 37 #include "core/InputTypeNames.h" | 37 #include "core/InputTypeNames.h" |
| 38 #include "core/events/MouseEvent.h" | 38 #include "core/events/MouseEvent.h" |
| 39 #include "core/dom/shadow/ShadowRoot.h" | 39 #include "core/dom/shadow/ShadowRoot.h" |
| 40 #include "core/html/HTMLDataListElement.h" | 40 #include "core/html/HTMLDataListElement.h" |
| 41 #include "core/html/HTMLDataListOptionsCollection.h" |
| 41 #include "core/html/HTMLDivElement.h" | 42 #include "core/html/HTMLDivElement.h" |
| 42 #include "core/html/HTMLInputElement.h" | 43 #include "core/html/HTMLInputElement.h" |
| 43 #include "core/html/HTMLOptionElement.h" | 44 #include "core/html/HTMLOptionElement.h" |
| 44 #include "core/page/Chrome.h" | 45 #include "core/page/Chrome.h" |
| 45 #include "core/rendering/RenderView.h" | 46 #include "core/rendering/RenderView.h" |
| 46 #include "platform/ColorChooser.h" | 47 #include "platform/ColorChooser.h" |
| 47 #include "platform/RuntimeEnabledFeatures.h" | 48 #include "platform/RuntimeEnabledFeatures.h" |
| 48 #include "platform/UserGestureIndicator.h" | 49 #include "platform/UserGestureIndicator.h" |
| 49 #include "platform/graphics/Color.h" | 50 #include "platform/graphics/Color.h" |
| 50 #include "wtf/PassOwnPtr.h" | 51 #include "wtf/PassOwnPtr.h" |
| (...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 229 bool ColorInputType::shouldShowSuggestions() const | 230 bool ColorInputType::shouldShowSuggestions() const |
| 230 { | 231 { |
| 231 return element().fastHasAttribute(listAttr); | 232 return element().fastHasAttribute(listAttr); |
| 232 } | 233 } |
| 233 | 234 |
| 234 Vector<ColorSuggestion> ColorInputType::suggestions() const | 235 Vector<ColorSuggestion> ColorInputType::suggestions() const |
| 235 { | 236 { |
| 236 Vector<ColorSuggestion> suggestions; | 237 Vector<ColorSuggestion> suggestions; |
| 237 HTMLDataListElement* dataList = element().dataList(); | 238 HTMLDataListElement* dataList = element().dataList(); |
| 238 if (dataList) { | 239 if (dataList) { |
| 239 RefPtrWillBeRawPtr<HTMLCollection> options = dataList->options(); | 240 RefPtrWillBeRawPtr<HTMLDataListOptionsCollection> options = dataList->op
tions(); |
| 240 for (unsigned i = 0; HTMLOptionElement* option = toHTMLOptionElement(opt
ions->item(i)); i++) { | 241 for (unsigned i = 0; HTMLOptionElement* option = options->item(i); i++)
{ |
| 241 if (!element().isValidValue(option->value())) | 242 if (!element().isValidValue(option->value())) |
| 242 continue; | 243 continue; |
| 243 Color color; | 244 Color color; |
| 244 if (!color.setFromString(option->value())) | 245 if (!color.setFromString(option->value())) |
| 245 continue; | 246 continue; |
| 246 ColorSuggestion suggestion(color, option->label().left(maxSuggestion
LabelLength)); | 247 ColorSuggestion suggestion(color, option->label().left(maxSuggestion
LabelLength)); |
| 247 suggestions.append(suggestion); | 248 suggestions.append(suggestion); |
| 248 if (suggestions.size() >= maxSuggestions) | 249 if (suggestions.size() >= maxSuggestions) |
| 249 break; | 250 break; |
| 250 } | 251 } |
| 251 } | 252 } |
| 252 return suggestions; | 253 return suggestions; |
| 253 } | 254 } |
| 254 | 255 |
| 255 } // namespace blink | 256 } // namespace blink |
| OLD | NEW |