mirror of
https://github.com/SerenityOS/serenity.git
synced 2025-01-24 02:12:09 -05:00
0264ae23bc
Instead of doing layout synchronously whenever something changes, we now use a basic event loop timer to defer and coalesce relayouts. If you did something that requires a relayout of the page, make sure to call Document::set_needs_layout() and it will get coalesced with all the other layout updates. There's lots of room for improvement here, but this already makes many web pages significantly snappier. :^) Also, note that this exposes a number of layout bugs where we have been relying on multiple relayouts to calculate the correct dimensions for things. Now that we only do a single layout in many cases, these kind of problems are much more noticeable. That should also make them easier to figure out and fix. :^) |
||
---|---|---|
.. | ||
BacktraceModel.cpp | ||
BacktraceModel.h | ||
BreakpointCallback.h | ||
Debugger.cpp | ||
Debugger.h | ||
DebuggerGlobalJSObject.cpp | ||
DebuggerGlobalJSObject.h | ||
DebuggerVariableJSObject.cpp | ||
DebuggerVariableJSObject.h | ||
DebugInfoWidget.cpp | ||
DebugInfoWidget.h | ||
DisassemblyModel.cpp | ||
DisassemblyModel.h | ||
DisassemblyWidget.cpp | ||
DisassemblyWidget.h | ||
EvaluateExpressionDialog.cpp | ||
EvaluateExpressionDialog.h | ||
RegistersModel.cpp | ||
RegistersModel.h | ||
VariablesModel.cpp | ||
VariablesModel.h |