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

Side by Side Diff: android_webview/browser/shared_renderer_state.cc

Issue 509453002: android_webview : Class member variable WeakPtrFactory in proper order. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 6 years, 3 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "android_webview/browser/shared_renderer_state.h" 5 #include "android_webview/browser/shared_renderer_state.h"
6 6
7 #include "android_webview/browser/browser_view_renderer_client.h" 7 #include "android_webview/browser/browser_view_renderer_client.h"
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/lazy_instance.h" 9 #include "base/lazy_instance.h"
10 #include "base/location.h" 10 #include "base/location.h"
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
71 } 71 }
72 72
73 DrawGLInput::~DrawGLInput() { 73 DrawGLInput::~DrawGLInput() {
74 } 74 }
75 75
76 SharedRendererState::SharedRendererState( 76 SharedRendererState::SharedRendererState(
77 scoped_refptr<base::MessageLoopProxy> ui_loop, 77 scoped_refptr<base::MessageLoopProxy> ui_loop,
78 BrowserViewRendererClient* client) 78 BrowserViewRendererClient* client)
79 : ui_loop_(ui_loop), 79 : ui_loop_(ui_loop),
80 client_on_ui_(client), 80 client_on_ui_(client),
81 weak_factory_on_ui_thread_(this), 81 inside_hardware_release_(false),
82 ui_thread_weak_ptr_(weak_factory_on_ui_thread_.GetWeakPtr()), 82 weak_factory_on_ui_thread_(this){
83 inside_hardware_release_(false) {
84 DCHECK(ui_loop_->BelongsToCurrentThread()); 83 DCHECK(ui_loop_->BelongsToCurrentThread());
85 DCHECK(client_on_ui_); 84 DCHECK(client_on_ui_);
85 ui_thread_weak_ptr_ = weak_factory_on_ui_thread_.GetWeakPtr();
86 ResetRequestDrawGLCallback(); 86 ResetRequestDrawGLCallback();
87 } 87 }
88 88
89 SharedRendererState::~SharedRendererState() { 89 SharedRendererState::~SharedRendererState() {
90 DCHECK(ui_loop_->BelongsToCurrentThread()); 90 DCHECK(ui_loop_->BelongsToCurrentThread());
91 } 91 }
92 92
93 void SharedRendererState::ClientRequestDrawGL() { 93 void SharedRendererState::ClientRequestDrawGL() {
94 if (ui_loop_->BelongsToCurrentThread()) { 94 if (ui_loop_->BelongsToCurrentThread()) {
95 if (!g_request_draw_gl_tracker.Get().ShouldRequestOnUiThread(this)) 95 if (!g_request_draw_gl_tracker.Get().ShouldRequestOnUiThread(this))
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
202 : shared_renderer_state_(shared_renderer_state) { 202 : shared_renderer_state_(shared_renderer_state) {
203 DCHECK(!shared_renderer_state_->IsInsideHardwareRelease()); 203 DCHECK(!shared_renderer_state_->IsInsideHardwareRelease());
204 shared_renderer_state_->SetInsideHardwareRelease(true); 204 shared_renderer_state_->SetInsideHardwareRelease(true);
205 } 205 }
206 206
207 InsideHardwareReleaseReset::~InsideHardwareReleaseReset() { 207 InsideHardwareReleaseReset::~InsideHardwareReleaseReset() {
208 shared_renderer_state_->SetInsideHardwareRelease(false); 208 shared_renderer_state_->SetInsideHardwareRelease(false);
209 } 209 }
210 210
211 } // namespace android_webview 211 } // namespace android_webview
OLDNEW
« no previous file with comments | « android_webview/browser/shared_renderer_state.h ('k') | android_webview/native/aw_quota_manager_bridge_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698