Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(603)

Unified Diff: runtime/observatory/lib/src/elements/helpers/rendering_queue.dart

Issue 2994233002: Revert "Speedup Observatory elements first time rendering" (Closed)
Patch Set: Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | runtime/observatory/lib/src/elements/helpers/rendering_scheduler.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/observatory/lib/src/elements/helpers/rendering_queue.dart
diff --git a/runtime/observatory/lib/src/elements/helpers/rendering_queue.dart b/runtime/observatory/lib/src/elements/helpers/rendering_queue.dart
index e2446192a44baaab5d1eb034bbfeecbf26bcb10e..707de2331ad3883bd0fca81ef112073aaacacb20 100644
--- a/runtime/observatory/lib/src/elements/helpers/rendering_queue.dart
+++ b/runtime/observatory/lib/src/elements/helpers/rendering_queue.dart
@@ -56,29 +56,15 @@ class RenderingQueue {
/// Add a task to the queue.
/// If the current rendering phase is running it will be executed during this
/// rendering cycle, otherwise it will be queued for the next one.
- void enqueue(RenderingTask r, {bool waitForBarrier: true}) {
+ void enqueue(RenderingTask r) {
assert(r != null);
- final wasEmpty = _queue.isEmpty;
- _queue.addLast(r);
// If no task are in the queue there is no rendering phase scheduled.
- if (wasEmpty) {
- if (waitForBarrier) {
- _render();
- } else {
- // We schedule the _renderLoop as a microtask to allow the
- // scheduleRendering method to terminate, due to the fact that it is
- // generally invoked from inside a HtmlElement.attached method
- scheduleMicrotask(_renderLoop);
- }
- }
+ if (isEmpty) _render();
+ _queue.addLast(r);
}
Future _render() async {
await _barrier.next;
- _renderLoop();
- }
-
- void _renderLoop() {
while (_queue.isNotEmpty) {
_queue.first.render();
_queue.removeFirst();
« no previous file with comments | « no previous file | runtime/observatory/lib/src/elements/helpers/rendering_scheduler.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698