mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 12:42:45 +00:00 
			
		
		
		
	LibWeb: Speed up computed style calculation
Rather than destroying and rebuilding the entire document layout tree in every call to `ComputedCSSStyleDeclaration::property()`, we now just make sure that the layout tree exists. This speeds up the DOM Inspector significantly, from taking several seconds to select an element, to almost instant. :^)
This commit is contained in:
		
							parent
							
								
									344397557c
								
							
						
					
					
						commit
						3f31f109b5
					
				
					 3 changed files with 8 additions and 1 deletions
				
			
		|  | @ -381,7 +381,7 @@ static NonnullRefPtr<StyleValue> value_or_default(Optional<StyleProperty> proper | |||
| 
 | ||||
| Optional<StyleProperty> ComputedCSSStyleDeclaration::property(PropertyID property_id) const | ||||
| { | ||||
|     const_cast<DOM::Document&>(m_element->document()).force_layout(); | ||||
|     const_cast<DOM::Document&>(m_element->document()).ensure_layout(); | ||||
| 
 | ||||
|     if (!m_element->layout_node()) { | ||||
|         auto style = m_element->document().style_resolver().resolve_style(const_cast<DOM::Element&>(*m_element)); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Sam Atkins
						Sam Atkins