| // Copyright 2017 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "third_party/blink/renderer/core/css/properties/longhands/background_position_x.h" |
| |
| #include "third_party/blink/renderer/core/css/parser/css_parser_context.h" |
| #include "third_party/blink/renderer/core/css/parser/css_property_parser_helpers.h" |
| #include "third_party/blink/renderer/core/css/properties/computed_style_utils.h" |
| #include "third_party/blink/renderer/core/css/properties/css_parsing_utils.h" |
| #include "third_party/blink/renderer/core/style/computed_style.h" |
| |
| namespace blink { |
| namespace css_longhand { |
| |
| const CSSValue* BackgroundPositionX::ParseSingleValue( |
| CSSParserTokenRange& range, |
| const CSSParserContext& context, |
| const CSSParserLocalContext&) const { |
| return css_property_parser_helpers::ConsumeCommaSeparatedList( |
| css_parsing_utils::ConsumePositionLonghand<CSSValueLeft, CSSValueRight>, |
| range, context.Mode()); |
| } |
| |
| const CSSValue* BackgroundPositionX::CSSValueFromComputedStyleInternal( |
| const ComputedStyle& style, |
| const SVGComputedStyle&, |
| const LayoutObject*, |
| Node*, |
| bool allow_visited_style) const { |
| const FillLayer* curr_layer = &style.BackgroundLayers(); |
| return ComputedStyleUtils::BackgroundPositionXOrWebkitMaskPositionX( |
| style, curr_layer); |
| } |
| |
| } // namespace css_longhand |
| } // namespace blink |