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

Unified Diff: android_webview/browser/shared_renderer_state.h

Issue 1844343005: WIP - Control the lifetime of RenderThreadManager from Java. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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: android_webview/browser/shared_renderer_state.h
diff --git a/android_webview/browser/shared_renderer_state.h b/android_webview/browser/shared_renderer_state.h
index 8dd938cede38d2d7e461c2fb399c03d1a8df5a1d..25fef299d631c88abef576c5cdf9a28d12628872 100644
--- a/android_webview/browser/shared_renderer_state.h
+++ b/android_webview/browser/shared_renderer_state.h
@@ -9,6 +9,8 @@
#include "android_webview/browser/gl_view_renderer_manager.h"
#include "android_webview/browser/parent_compositor_draw_constraints.h"
+#include "base/android/jni_weak_ref.h"
+#include "base/android/scoped_java_ref.h"
#include "base/cancelable_callback.h"
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
@@ -43,10 +45,11 @@ class SharedRendererState {
using ReturnedResourcesMap = std::map<uint32_t, ReturnedResources>;
SharedRendererState(
- SharedRendererStateClient* client,
const scoped_refptr<base::SingleThreadTaskRunner>& ui_loop);
~SharedRendererState();
+ void SetClient(SharedRendererStateClient* client);
+
// This function can be called from any thread.
void ClientRequestDrawGL(bool for_idle);
@@ -95,7 +98,7 @@ class SharedRendererState {
// Accessed by UI thread.
scoped_refptr<base::SingleThreadTaskRunner> ui_loop_;
- SharedRendererStateClient* const client_;
+ SharedRendererStateClient* client_;
base::WeakPtr<SharedRendererState> ui_thread_weak_ptr_;
base::CancelableClosure request_draw_gl_cancelable_closure_;
@@ -120,6 +123,8 @@ class SharedRendererState {
DISALLOW_COPY_AND_ASSIGN(SharedRendererState);
};
+bool RegisterSharedRendererState(JNIEnv* env);
+
} // namespace android_webview
#endif // ANDROID_WEBVIEW_BROWSER_SHARED_RENDERER_STATE_H_

Powered by Google App Engine
This is Rietveld 408576698