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

Unified Diff: android_webview/browser/renderer_host/aw_render_view_host_ext.cc

Issue 11823027: [Android WebView] Implement the capture picture API. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: removing any IPC DCHECKS. Created 7 years, 11 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: android_webview/browser/renderer_host/aw_render_view_host_ext.cc
diff --git a/android_webview/browser/renderer_host/aw_render_view_host_ext.cc b/android_webview/browser/renderer_host/aw_render_view_host_ext.cc
index 38b3a95ac510376e7ed23c4565fa4515980228d0..8ef18b6cc11579548864f025ee7f96ab1333d450 100644
--- a/android_webview/browser/renderer_host/aw_render_view_host_ext.cc
+++ b/android_webview/browser/renderer_host/aw_render_view_host_ext.cc
@@ -5,11 +5,13 @@
#include "android_webview/browser/renderer_host/aw_render_view_host_ext.h"
#include "android_webview/browser/aw_browser_context.h"
+#include "android_webview/browser/scoped_allow_wait_for_legacy_web_view_api.h"
#include "android_webview/common/render_view_messages.h"
#include "base/android/scoped_java_ref.h"
#include "base/callback.h"
#include "base/logging.h"
#include "content/public/browser/render_process_host.h"
+#include "content/public/browser/render_view_host.h"
#include "content/public/browser/user_metrics.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/frame_navigate_params.h"
@@ -63,6 +65,11 @@ const AwHitTestData& AwRenderViewHostExt::GetLastHitTestData() const {
return last_hit_test_data_;
}
+void AwRenderViewHostExt::EnableCapturePictureCallback(bool enabled) {
+ Send(new AwViewMsg_EnableCapturePictureCallback(
+ web_contents()->GetRoutingID(), enabled));
+}
+
void AwRenderViewHostExt::RenderViewGone(base::TerminationStatus status) {
DCHECK(CalledOnValidThread());
for (std::map<int, DocumentHasImagesResult>::iterator pending_req =
@@ -123,4 +130,18 @@ void AwRenderViewHostExt::OnPictureUpdated() {
routing_id());
}
+bool AwRenderViewHostExt::IsRenderViewReady() const {
+ return web_contents()->GetRenderProcessHost()->HasConnection() &&
+ web_contents()->GetRenderViewHost() &&
+ web_contents()->GetRenderViewHost()->IsRenderViewLive();
+}
+
+void AwRenderViewHostExt::CapturePictureSync() {
+ if (!IsRenderViewReady())
+ return;
+
+ ScopedAllowWaitForLegacyWebViewApi wait;
+ Send(new AwViewMsg_CapturePictureSync(web_contents()->GetRoutingID()));
+}
+
} // namespace android_webview
« no previous file with comments | « android_webview/browser/renderer_host/aw_render_view_host_ext.h ('k') | android_webview/common/render_view_messages.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698