diff --git a/sky/shell/gpu/direct/rasterizer_direct.cc b/sky/shell/gpu/direct/rasterizer_direct.cc index fd78d810ce5e1a2b6938d13b289e52d836c9f47a..267de80600b032e2a26840a92e532afbfb386d7c 100644 --- a/sky/shell/gpu/direct/rasterizer_direct.cc +++ b/sky/shell/gpu/direct/rasterizer_direct.cc @@ -118,7 +118,11 @@ void RasterizerDirect::Draw(uint64_t layer_tree_ptr, compositor_context_.AcquireFrame(ganesh_canvas_.gr_context(), *canvas); canvas->clear(SK_ColorBLACK); layer_tree->Raster(frame); - canvas->flush(); + + { + TRACE_EVENT0("flutter", "SkCanvas::Flush"); + canvas->flush(); + } platform_view_->SwapBuffers(); } diff --git a/sky/shell/platform/android/platform_view_android.cc b/sky/shell/platform/android/platform_view_android.cc index 0b8f185250bb4ec524f5d37c86eef1eb86a164e2..8bb06931e0257b8f7f5f3bdf63e5988f84e99011 100644 --- a/sky/shell/platform/android/platform_view_android.cc +++ b/sky/shell/platform/android/platform_view_android.cc @@ -13,11 +13,12 @@ #include "base/bind.h" #include "base/location.h" +#include "base/trace_event/trace_event.h" #include "jni/FlutterView_jni.h" #include "sky/engine/core/script/dart_service_isolate.h" #include "sky/engine/wtf/MakeUnique.h" -#include "sky/shell/shell.h" #include "sky/shell/shell_view.h" +#include "sky/shell/shell.h" namespace sky { namespace shell { @@ -339,6 +340,7 @@ bool PlatformViewAndroid::ContextMakeCurrent() { } bool PlatformViewAndroid::SwapBuffers() { + TRACE_EVENT0("flutter", "PlatformViewAndroid::SwapBuffers"); return context_ != nullptr ? context_->SwapBuffers() : false; } diff --git a/sky/shell/platform/ios/platform_view_ios.mm b/sky/shell/platform/ios/platform_view_ios.mm index c49638d2ee7d07fb3058da586c156d18a8b10a3b..a6f6bd176bb126a9550ec976172ebe8f46b05883 100644 --- a/sky/shell/platform/ios/platform_view_ios.mm +++ b/sky/shell/platform/ios/platform_view_ios.mm @@ -2,9 +2,11 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#include "sky/shell/platform/ios/platform_view_ios.h" + #include "base/mac/scoped_nsautorelease_pool.h" +#include "base/trace_event/trace_event.h" #include "sky/engine/wtf/MakeUnique.h" -#include "sky/shell/platform/ios/platform_view_ios.h" #import #import @@ -284,6 +286,7 @@ bool PlatformViewIOS::ContextMakeCurrent() { } bool PlatformViewIOS::SwapBuffers() { + TRACE_EVENT0("flutter", "PlatformViewIOS::SwapBuffers"); return context_ != nullptr ? context_->PresentRenderBuffer() : false; } diff --git a/sky/shell/platform/mac/platform_view_mac.mm b/sky/shell/platform/mac/platform_view_mac.mm index 8075e26929a1c08ec42bc77aba6e87d180c6e8df..27550e6f399e8f3171d230d4cca9751e96b5fa4c 100644 --- a/sky/shell/platform/mac/platform_view_mac.mm +++ b/sky/shell/platform/mac/platform_view_mac.mm @@ -6,6 +6,8 @@ #include +#include "base/trace_event/trace_event.h" + namespace sky { namespace shell { @@ -42,6 +44,8 @@ bool PlatformViewMac::ContextMakeCurrent() { } bool PlatformViewMac::SwapBuffers() { + TRACE_EVENT0("flutter", "PlatformViewMac::SwapBuffers"); + if (!IsValid()) { return false; }