mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-27 14:02:07 +00:00 
			
		
		
		
	 e90752cc21
			
		
	
	
		e90752cc21
		
	
	
	
	
		
			
			This partially implements CSS-Animations-1 (though there are references to CSS-Animations-2). Current limitations: - Multi-selector keyframes are not supported. - Most animation properties are ignored. - Timing functions are not applied. - Non-absolute values are not interpolated unless the target is also of the same non-absolute type (e.g. 10% -> 25%, but not 10% -> 20px). - The JavaScript interface is left as an exercise for the next poor soul looking at this code. With those said, this commit implements: - Interpolation for most common types - Proper keyframe resolution (including the synthetic from-keyframe containing the initial state) - Properly driven animations, and proper style invalidation Co-Authored-By: Andreas Kling <kling@serenityos.org>
		
			
				
	
	
		
			25 lines
		
	
	
	
		
			731 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
	
		
			731 B
		
	
	
	
		
			Text
		
	
	
	
	
	
| #import <CSS/CSSStyleSheet.idl>
 | |
| 
 | |
| [Exposed=Window]
 | |
| interface CSSRule {
 | |
| 
 | |
|     attribute CSSOMString cssText;
 | |
| 
 | |
|     readonly attribute CSSRule? parentRule;
 | |
|     readonly attribute CSSStyleSheet? parentStyleSheet;
 | |
| 
 | |
|     readonly attribute unsigned short type;
 | |
| 
 | |
|     const unsigned short STYLE_RULE = 1;
 | |
|     const unsigned short CHARSET_RULE = 2;
 | |
|     const unsigned short IMPORT_RULE = 3;
 | |
|     const unsigned short MEDIA_RULE = 4;
 | |
|     const unsigned short FONT_FACE_RULE = 5;
 | |
|     const unsigned short PAGE_RULE = 6;
 | |
|     const unsigned short KEYFRAMES_RULE = 7;
 | |
|     const unsigned short KEYFRAME_RULE = 8;
 | |
|     const unsigned short MARGIN_RULE = 9;
 | |
|     const unsigned short NAMESPACE_RULE = 10;
 | |
|     const unsigned short SUPPORTS_RULE = 12;
 | |
| 
 | |
| };
 |