Introduce UpdateAnimationTasks to perform a bunch of animation's tasks in a SequentialTask.

The UpdateAnimationsTasks is a bitflags and each bit is generated from
Gecko's UpdateAnimationsTasks (enum class) values for matching values
between C++ and Rust. For this reason, the bitflags is annotated as
(feature = "gecko"), as a result update_animations() which uses this bitflags
also became gecko-only function.
This commit is contained in:
Hiroyuki Ikezoe 2017-03-27 17:33:07 +09:00
parent 0c843d4b7d
commit 4183b0dff2
9 changed files with 82 additions and 21 deletions

View file

@ -282,7 +282,8 @@ mod bindings {
.raw_line("use data::ElementData;")
.hide_type("nsString")
.bitfield_enum("nsChangeHint")
.bitfield_enum("nsRestyleHint");
.bitfield_enum("nsRestyleHint")
.constified_enum("UpdateAnimationsTasks");
let whitelist_vars = [
"NS_THEME_.*",
"NODE_.*",
@ -306,6 +307,7 @@ mod bindings {
"mozilla::TraversalRootBehavior",
"mozilla::StyleShapeRadius",
"mozilla::StyleGrid.*",
"mozilla::UpdateAnimationsTasks",
"mozilla::LookAndFeel",
".*ThreadSafe.*Holder",
"AnonymousContent",
@ -667,6 +669,7 @@ mod bindings {
"Loader",
"ServoStyleSheet",
"EffectCompositor_CascadeLevel",
"UpdateAnimationsTasks",
];
struct ArrayType {
cpp_type: &'static str,