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

Unified Diff: content/renderer/renderer_webkitplatformsupport_impl.cc

Issue 9655017: Implement WebKitPlatformSupport::canAccelerate2dCanvas (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix clang warning about inline virtual function body Created 8 years, 9 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
Index: content/renderer/renderer_webkitplatformsupport_impl.cc
diff --git a/content/renderer/renderer_webkitplatformsupport_impl.cc b/content/renderer/renderer_webkitplatformsupport_impl.cc
index 1c5fc6fd1b3878441e361e9c01f719e86ff607d8..efd2700df6ce6ea72184db3ef9a43bac81f47f94 100644
--- a/content/renderer/renderer_webkitplatformsupport_impl.cc
+++ b/content/renderer/renderer_webkitplatformsupport_impl.cc
@@ -20,6 +20,7 @@
#include "content/common/view_messages.h"
#include "content/common/webmessageportchannel_impl.h"
#include "content/public/common/content_switches.h"
+#include "content/public/common/gpu_info.h"
#include "content/public/renderer/content_renderer_client.h"
#include "content/renderer/gamepad_shared_memory_reader.h"
#include "content/renderer/media/audio_device.h"
@@ -659,3 +660,17 @@ RendererWebKitPlatformSupportImpl::createPeerConnectionHandler(
return NULL;
return render_view->CreatePeerConnectionHandler(client);
}
+
+bool RendererWebKitPlatformSupportImpl::canAccelerate2dCanvas() {
+ RenderThreadImpl* thread = RenderThreadImpl::current();
+ GpuChannelHost* host = thread->EstablishGpuChannelSync(
+ content::CAUSE_FOR_GPU_LAUNCH_CANVAS_2D);
+ if (!host)
+ return false;
+
+ const content::GPUInfo& gpu_info = host->gpu_info();
+ if (gpu_info.can_lose_context || gpu_info.software_rendering)
+ return false;
+
+ return true;
+}

Powered by Google App Engine
This is Rietveld 408576698