summaryrefslogtreecommitdiffstats
path: root/android_webview
diff options
context:
space:
mode:
authorboliu <boliu@chromium.org>2014-12-08 16:31:28 -0800
committerCommit bot <commit-bot@chromium.org>2014-12-09 00:31:50 +0000
commit6a7f826357db40b6a0343acfb8dd9001a6511a6d (patch)
treefa8a0575f31d354778551078ab8fdaefa01f0e92 /android_webview
parent6b45094444c528b4e72308ed524e2b7c34b7c2da (diff)
downloadchromium_src-6a7f826357db40b6a0343acfb8dd9001a6511a6d.zip
chromium_src-6a7f826357db40b6a0343acfb8dd9001a6511a6d.tar.gz
chromium_src-6a7f826357db40b6a0343acfb8dd9001a6511a6d.tar.bz2
aw: More clean ups for testing
Have BVR return a pointer to SharedRendererState and do the reinterpret case in AwContents. Update ScopedAppGLStateRestore to handle null binding where most calls are no-op and returns null. BUG=418346 Review URL: https://codereview.chromium.org/735013006 Cr-Commit-Position: refs/heads/master@{#307387}
Diffstat (limited to 'android_webview')
-rw-r--r--android_webview/browser/browser_view_renderer.cc4
-rw-r--r--android_webview/browser/browser_view_renderer.h2
-rw-r--r--android_webview/browser/scoped_app_gl_state_restore.cc8
-rw-r--r--android_webview/native/aw_contents.cc3
4 files changed, 10 insertions, 7 deletions
diff --git a/android_webview/browser/browser_view_renderer.cc b/android_webview/browser/browser_view_renderer.cc
index 5b4e8b0..9d660fb 100644
--- a/android_webview/browser/browser_view_renderer.cc
+++ b/android_webview/browser/browser_view_renderer.cc
@@ -75,8 +75,8 @@ BrowserViewRenderer::BrowserViewRenderer(
BrowserViewRenderer::~BrowserViewRenderer() {
}
-intptr_t BrowserViewRenderer::GetAwDrawGLViewContext() {
- return reinterpret_cast<intptr_t>(&shared_renderer_state_);
+SharedRendererState* BrowserViewRenderer::GetAwDrawGLViewContext() {
+ return &shared_renderer_state_;
}
bool BrowserViewRenderer::RequestDrawGL(bool wait_for_completion) {
diff --git a/android_webview/browser/browser_view_renderer.h b/android_webview/browser/browser_view_renderer.h
index fbe4ac6..e1388a5 100644
--- a/android_webview/browser/browser_view_renderer.h
+++ b/android_webview/browser/browser_view_renderer.h
@@ -34,7 +34,7 @@ class BrowserViewRenderer : public content::SynchronousCompositorClient {
virtual ~BrowserViewRenderer();
- intptr_t GetAwDrawGLViewContext();
+ SharedRendererState* GetAwDrawGLViewContext();
bool RequestDrawGL(bool wait_for_completion);
// Called before either OnDrawHardware or OnDrawSoftware to set the view
diff --git a/android_webview/browser/scoped_app_gl_state_restore.cc b/android_webview/browser/scoped_app_gl_state_restore.cc
index 2fa1b11..6ea3996 100644
--- a/android_webview/browser/scoped_app_gl_state_restore.cc
+++ b/android_webview/browser/scoped_app_gl_state_restore.cc
@@ -180,10 +180,12 @@ ScopedAppGLStateRestoreImpl::ScopedAppGLStateRestoreImpl(
g_globals_initialized = true;
glGetIntegerv(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, &g_gl_max_texture_units);
- DCHECK_GT(g_gl_max_texture_units, 0);
- std::string extensions(
- reinterpret_cast<const char*>(glGetString(GL_EXTENSIONS)));
+ std::string extensions;
+ const char* extensions_c_str =
+ reinterpret_cast<const char*>(glGetString(GL_EXTENSIONS));
+ if (extensions_c_str)
+ extensions = extensions_c_str;
g_supports_oes_vertex_array_object =
extensions.find("GL_OES_vertex_array_object") != std::string::npos;
}
diff --git a/android_webview/native/aw_contents.cc b/android_webview/native/aw_contents.cc
index cd2aae4..8494ed1 100644
--- a/android_webview/native/aw_contents.cc
+++ b/android_webview/native/aw_contents.cc
@@ -341,7 +341,8 @@ jint GetNativeInstanceCount(JNIEnv* env, jclass) {
jlong AwContents::GetAwDrawGLViewContext(JNIEnv* env, jobject obj) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- return browser_view_renderer_.GetAwDrawGLViewContext();
+ return reinterpret_cast<intptr_t>(
+ browser_view_renderer_.GetAwDrawGLViewContext());
}
namespace {