style: Rewrite media queries so that they work on an evaluator function.

This moves most of the code to be Rust, except potentially some evaluator
functions, and allows to unblock the use case from any-hover / any-pointer and
remove nsMediaFeatures.

Differential Revision: https://phabricator.services.mozilla.com/D2976
This commit is contained in:
Emilio Cobos Álvarez 2018-08-15 16:07:11 +02:00
parent a0cb37d29d
commit dc0f937224
No known key found for this signature in database
GPG key ID: 056B727BB9C1027C
10 changed files with 1374 additions and 782 deletions

View file

@ -9,12 +9,16 @@
mod media_condition;
mod media_list;
mod media_query;
#[macro_use]
pub mod media_feature;
pub mod media_feature_expression;
pub use self::media_condition::MediaCondition;
pub use self::media_list::MediaList;
pub use self::media_query::{MediaQuery, MediaQueryType, MediaType, Qualifier};
pub use self::media_feature_expression::MediaFeatureExpression;
#[cfg(feature = "servo")]
pub use servo::media_queries::{Device, MediaFeatureExpression};
pub use servo::media_queries::Device;
#[cfg(feature = "gecko")]
pub use gecko::media_queries::{Device, MediaFeatureExpression};
pub use gecko::media_queries::Device;