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

Unified Diff: content/browser/android/content_view_core_impl.cc

Issue 21777003: DevTools: [Android] implement RenderWidgetHostViewAndroid::CopyFromCompositingSurface (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 5 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/browser/android/content_view_core_impl.cc
diff --git a/content/browser/android/content_view_core_impl.cc b/content/browser/android/content_view_core_impl.cc
index cfd19dbc04c026a133d8cf8f6ab3e1a0dd09e7f8..385b5f4c520092284dbe0ea738f7b55932231c5e 100644
--- a/content/browser/android/content_view_core_impl.cc
+++ b/content/browser/android/content_view_core_impl.cc
@@ -61,8 +61,10 @@ using base::android::ConvertJavaStringToUTF16;
using base::android::ConvertJavaStringToUTF8;
using base::android::ConvertUTF16ToJavaString;
using base::android::ConvertUTF8ToJavaString;
+using base::android::JavaByteArrayToByteVector;
using base::android::ScopedJavaGlobalRef;
using base::android::ScopedJavaLocalRef;
+using base::android::HasException;
using WebKit::WebGestureEvent;
using WebKit::WebInputEvent;
@@ -699,6 +701,19 @@ void ContentViewCoreImpl::SetNeedsAnimate() {
Java_ContentViewCore_setNeedsAnimate(env, obj.obj());
}
+bool ContentViewCoreImpl::GrabSnapshot(std::vector<unsigned uint8>* png) {
+ JNIEnv* env = AttachCurrentThread();
+ ScopedJavaLocalRef<jobject> obj = java_ref_.get(env);
+ if (obj.is_null())
+ return false;
+ ScopedJavaLocalRef<jbyteArray> data_ref =
+ Java_ContentViewCore_grabSnapshot(env, obj.obj());
+ if (HasException(env) || data_ref.is_null())
+ return false;
+ JavaByteArrayToByteVector(env, data_ref.obj(), png);
+ return true;
+}
+
ui::ViewAndroid* ContentViewCoreImpl::GetViewAndroid() const {
// view_android_ should never be null for Chrome.
DCHECK(view_android_);

Powered by Google App Engine
This is Rietveld 408576698