mirror of
https://github.com/RGBCube/serenity
synced 2026-01-13 14:51:00 +00:00
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 | ||