Revert "Reland c91b178b07b0d - Delete dead signin code (SigninGlobalError)"
[chromium-blink-merge.git] / components / view_manager / public / interfaces / animations.mojom
blob6a4e55987043bf77fc9e514776250e4c1d8653a7
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 module mojo;
7 import "ui/mojo/geometry/geometry.mojom";
9 enum AnimationTweenType {
10   LINEAR,
11   EASE_IN,
12   EASE_OUT,
13   EASE_IN_OUT,
16 enum AnimationProperty {
17   // Used for pausing.
18   NONE,
19   OPACITY,
20   TRANSFORM,
23 struct AnimationValue {
24   float float_value;
25   Transform transform;
28 // Identifies how a particular property should be animated between a start and
29 // target value.
30 struct AnimationElement {
31   AnimationProperty property;
33   // Duration is in microseconds.
34   int64 duration;
36   AnimationTweenType tween_type;
38   // If not specified the start value is taken from either the current value
39   // (for the first element) or the target_value of the previous element.
40   AnimationValue? start_value;
42   // target_value may be null when property is NONE.
43   AnimationValue? target_value;
46 // An AnimationSequence consists of a number of AnimationElements to animate.
47 // Each element is animated serially.
48 struct AnimationSequence {
49   // Number of times to run the sequence. Value of 0 means run until
50   // explicitly stopped.
51   uint32 cycle_count;
53   array<AnimationElement> elements;
56 // AnimationGroup identifies a view and a set of AnimationSequences to apply
57 // to the view. Each sequence is run in parallel.
58 struct AnimationGroup {
59   uint32 view_id;
60   array<AnimationSequence> sequences;