#include "third_party/blink/renderer/core/svg/svg_animated_color.h"
#include "third_party/blink/renderer/core/css/css_color.h"
#include "third_party/blink/renderer/core/css/parser/css_parser.h"
#include "third_party/blink/renderer/core/css/properties/longhands.h"
#include "third_party/blink/renderer/core/dom/node_computed_style.h"
#include "third_party/blink/renderer/core/svg/animation/smil_animation_effect_parameters.h"
#include "third_party/blink/renderer/core/svg/svg_element.h"
namespace blink {
namespace {
struct RGBATuple { … };
void Accumulate(RGBATuple& base, const RGBATuple& addend) { … }
RGBATuple ToRGBATuple(const StyleColor& color,
Color fallback_color,
mojom::blink::ColorScheme color_scheme) { … }
StyleColor ToStyleColor(const RGBATuple& tuple) { … }
Color FallbackColorForCurrentColor(const SVGElement& target_element) { … }
mojom::blink::ColorScheme ColorSchemeForSVGElement(
const SVGElement& target_element) { … }
}
SVGColorProperty::SVGColorProperty(const String& color_string)
: … { … }
String SVGColorProperty::ValueAsString() const { … }
SVGPropertyBase* SVGColorProperty::CloneForAnimation(const String&) const { … }
void SVGColorProperty::Add(const SVGPropertyBase* other,
const SVGElement* context_element) { … }
void SVGColorProperty::CalculateAnimatedValue(
const SMILAnimationEffectParameters& parameters,
float percentage,
unsigned repeat_count,
const SVGPropertyBase* from_value,
const SVGPropertyBase* to_value,
const SVGPropertyBase* to_at_end_of_duration_value,
const SVGElement* context_element) { … }
float SVGColorProperty::CalculateDistance(
const SVGPropertyBase* to_value,
const SVGElement* context_element) const { … }
}