summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordcheng@chromium.org <dcheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-16 10:31:00 +0000
committerdcheng@chromium.org <dcheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-16 10:31:00 +0000
commit2676cd5647572899d3672edf04bf48c65ced5b71 (patch)
tree375cc6510b855a32634b1faf7f07b1e8cda502fa
parenteed96f8f96ea288667839c336694e86c802e0dfd (diff)
downloadchromium_src-2676cd5647572899d3672edf04bf48c65ced5b71.zip
chromium_src-2676cd5647572899d3672edf04bf48c65ced5b71.tar.gz
chromium_src-2676cd5647572899d3672edf04bf48c65ced5b71.tar.bz2
base::Bind() conversion in renderer_host.
BUG=none TEST=trybot runs Review URL: http://codereview.chromium.org/8568030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110283 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/renderer_host/chrome_render_message_filter.cc17
-rw-r--r--chrome/browser/renderer_host/render_widget_host_view_views.cc14
-rw-r--r--chrome/browser/renderer_host/render_widget_host_view_views.h5
-rw-r--r--chrome/browser/renderer_host/web_cache_manager.cc8
-rw-r--r--chrome/browser/renderer_host/web_cache_manager.h4
-rw-r--r--content/browser/renderer_host/render_widget_host_view_mac.h4
-rw-r--r--content/browser/renderer_host/render_widget_host_view_mac.mm18
7 files changed, 35 insertions, 35 deletions
diff --git a/chrome/browser/renderer_host/chrome_render_message_filter.cc b/chrome/browser/renderer_host/chrome_render_message_filter.cc
index 464f3c7..b0ff82f 100644
--- a/chrome/browser/renderer_host/chrome_render_message_filter.cc
+++ b/chrome/browser/renderer_host/chrome_render_message_filter.cc
@@ -204,8 +204,8 @@ void ChromeRenderMessageFilter::OnFPS(int routing_id, float fps) {
if (!BrowserThread::CurrentlyOn(BrowserThread::UI)) {
BrowserThread::PostTask(
BrowserThread::UI, FROM_HERE,
- NewRunnableMethod(
- this, &ChromeRenderMessageFilter::OnFPS,
+ base::Bind(
+ &ChromeRenderMessageFilter::OnFPS, this,
routing_id, fps));
return;
}
@@ -287,10 +287,9 @@ void ChromeRenderMessageFilter::OnGetExtensionMessageBundle(
BrowserThread::PostTask(
BrowserThread::FILE, FROM_HERE,
- NewRunnableMethod(
- this,
+ base::Bind(
&ChromeRenderMessageFilter::OnGetExtensionMessageBundleOnFileThread,
- extension_path, extension_id, default_locale, reply_msg));
+ this, extension_path, extension_id, default_locale, reply_msg));
}
void ChromeRenderMessageFilter::OnGetExtensionMessageBundleOnFileThread(
@@ -387,7 +386,7 @@ void ChromeRenderMessageFilter::OnAllowDatabase(int render_view_id,
top_origin_url);
BrowserThread::PostTask(
BrowserThread::UI, FROM_HERE,
- NewRunnableFunction(
+ base::Bind(
&TabSpecificContentSettings::WebDatabaseAccessed,
render_process_id_, render_view_id, origin_url, name, display_name,
!*allowed));
@@ -403,7 +402,7 @@ void ChromeRenderMessageFilter::OnAllowDOMStorage(int render_view_id,
// Record access to DOM storage for potential display in UI.
BrowserThread::PostTask(
BrowserThread::UI, FROM_HERE,
- NewRunnableFunction(
+ base::Bind(
&TabSpecificContentSettings::DOMStorageAccessed,
render_process_id_, render_view_id, origin_url, type, !*allowed));
}
@@ -417,7 +416,7 @@ void ChromeRenderMessageFilter::OnAllowFileSystem(int render_view_id,
// Record access to file system for potential display in UI.
BrowserThread::PostTask(
BrowserThread::UI, FROM_HERE,
- NewRunnableFunction(
+ base::Bind(
&TabSpecificContentSettings::FileSystemAccessed,
render_process_id_, render_view_id, origin_url, !*allowed));
}
@@ -431,7 +430,7 @@ void ChromeRenderMessageFilter::OnAllowIndexedDB(int render_view_id,
top_origin_url);
BrowserThread::PostTask(
BrowserThread::UI, FROM_HERE,
- NewRunnableFunction(
+ base::Bind(
&TabSpecificContentSettings::IndexedDBAccessed,
render_process_id_, render_view_id, origin_url, name, !*allowed));
}
diff --git a/chrome/browser/renderer_host/render_widget_host_view_views.cc b/chrome/browser/renderer_host/render_widget_host_view_views.cc
index 550e176..3a4a9f5 100644
--- a/chrome/browser/renderer_host/render_widget_host_view_views.cc
+++ b/chrome/browser/renderer_host/render_widget_host_view_views.cc
@@ -7,12 +7,12 @@
#include <algorithm>
#include <string>
+#include "base/bind.h"
#include "base/command_line.h"
#include "base/logging.h"
#include "base/message_loop.h"
#include "base/metrics/histogram.h"
#include "base/string_number_conversions.h"
-#include "base/task.h"
#include "base/time.h"
#include "base/utf_string_conversions.h"
#include "chrome/common/chrome_notification_types.h"
@@ -122,7 +122,7 @@ RenderWidgetHostViewViews::RenderWidgetHostViewViews(RenderWidgetHost* host)
has_composition_text_(false),
ALLOW_THIS_IN_INITIALIZER_LIST(touch_selection_controller_(
views::TouchSelectionController::create(this))),
- ALLOW_THIS_IN_INITIALIZER_LIST(update_touch_selection_(this)) {
+ ALLOW_THIS_IN_INITIALIZER_LIST(weak_factory_(this)) {
set_focusable(true);
host_->SetView(this);
@@ -200,8 +200,7 @@ void RenderWidgetHostViewViews::WasHidden() {
if (host_)
host_->WasHidden();
- if (!update_touch_selection_.empty())
- update_touch_selection_.RevokeAll();
+ weak_factory_.InvalidateWeakPtrs();
}
void RenderWidgetHostViewViews::SetSize(const gfx::Size& size) {
@@ -411,10 +410,11 @@ void RenderWidgetHostViewViews::SelectionBoundsChanged(
// inserting text at the beginning of a non-empty text control). But in those
// cases, it does send the correct selection information quickly afterwards.
// So delay the notification to the touch-selection controller.
- if (update_touch_selection_.empty()) {
+ if (!weak_factory_.HasWeakPtrs()) {
MessageLoop::current()->PostDelayedTask(FROM_HERE,
- update_touch_selection_.NewRunnableMethod(
- &RenderWidgetHostViewViews::UpdateTouchSelectionController),
+ base::Bind(
+ &RenderWidgetHostViewViews::UpdateTouchSelectionController,
+ weak_factory_.GetWeakPtr()),
kTouchControllerUpdateDelay);
}
}
diff --git a/chrome/browser/renderer_host/render_widget_host_view_views.h b/chrome/browser/renderer_host/render_widget_host_view_views.h
index ac18bf2..bce8b0c 100644
--- a/chrome/browser/renderer_host/render_widget_host_view_views.h
+++ b/chrome/browser/renderer_host/render_widget_host_view_views.h
@@ -12,8 +12,8 @@
#include "base/compiler_specific.h"
#include "base/memory/ref_counted.h"
+#include "base/memory/weak_ptr.h"
#include "base/string16.h"
-#include "base/task.h"
#include "base/time.h"
#include "content/browser/renderer_host/render_widget_host_view.h"
#include "content/public/browser/notification_observer.h"
@@ -300,8 +300,7 @@ class RenderWidgetHostViewViews : public RenderWidgetHostView,
#endif
scoped_ptr<views::TouchSelectionController> touch_selection_controller_;
- ScopedRunnableMethodFactory<RenderWidgetHostViewViews>
- update_touch_selection_;
+ base::WeakPtrFactory<RenderWidgetHostViewViews> weak_factory_;
#if defined(TOUCH_UI)
// used to register for keyboard visiblity notificatons.
diff --git a/chrome/browser/renderer_host/web_cache_manager.cc b/chrome/browser/renderer_host/web_cache_manager.cc
index 0ec33fd..605a1b4 100644
--- a/chrome/browser/renderer_host/web_cache_manager.cc
+++ b/chrome/browser/renderer_host/web_cache_manager.cc
@@ -6,6 +6,7 @@
#include <algorithm>
+#include "base/bind.h"
#include "base/compiler_specific.h"
#include "base/memory/singleton.h"
#include "base/message_loop.h"
@@ -63,7 +64,7 @@ WebCacheManager* WebCacheManager::GetInstance() {
WebCacheManager::WebCacheManager()
: global_size_limit_(GetDefaultGlobalSizeLimit()),
- ALLOW_THIS_IN_INITIALIZER_LIST(revise_allocation_factory_(this)) {
+ ALLOW_THIS_IN_INITIALIZER_LIST(weak_factory_(this)) {
registrar_.Add(this, content::NOTIFICATION_RENDERER_PROCESS_CREATED,
content::NotificationService::AllBrowserContextsAndSources());
registrar_.Add(this, content::NOTIFICATION_RENDERER_PROCESS_TERMINATED,
@@ -415,8 +416,9 @@ void WebCacheManager::ReviseAllocationStrategyLater() {
// Ask to be called back in a few milliseconds to actually recompute our
// allocation.
MessageLoop::current()->PostDelayedTask(FROM_HERE,
- revise_allocation_factory_.NewRunnableMethod(
- &WebCacheManager::ReviseAllocationStrategy),
+ base::Bind(
+ &WebCacheManager::ReviseAllocationStrategy,
+ weak_factory_.GetWeakPtr()),
kReviseAllocationDelayMS);
}
diff --git a/chrome/browser/renderer_host/web_cache_manager.h b/chrome/browser/renderer_host/web_cache_manager.h
index e93a26c..cf3f45f 100644
--- a/chrome/browser/renderer_host/web_cache_manager.h
+++ b/chrome/browser/renderer_host/web_cache_manager.h
@@ -16,7 +16,7 @@
#include "base/basictypes.h"
#include "base/compiler_specific.h"
#include "base/gtest_prod_util.h"
-#include "base/task.h"
+#include "base/memory/weak_ptr.h"
#include "base/time.h"
#include "content/public/browser/notification_observer.h"
#include "content/public/browser/notification_registrar.h"
@@ -213,7 +213,7 @@ class WebCacheManager : public content::NotificationObserver {
// recently than they have been active.
std::set<int> inactive_renderers_;
- ScopedRunnableMethodFactory<WebCacheManager> revise_allocation_factory_;
+ base::WeakPtrFactory<WebCacheManager> weak_factory_;
content::NotificationRegistrar registrar_;
diff --git a/content/browser/renderer_host/render_widget_host_view_mac.h b/content/browser/renderer_host/render_widget_host_view_mac.h
index f2c01fd..e2e5963 100644
--- a/content/browser/renderer_host/render_widget_host_view_mac.h
+++ b/content/browser/renderer_host/render_widget_host_view_mac.h
@@ -12,7 +12,7 @@
#include "base/memory/scoped_nsobject.h"
#include "base/memory/scoped_ptr.h"
-#include "base/task.h"
+#include "base/memory/weak_ptr.h"
#include "base/time.h"
#include "content/browser/accessibility/browser_accessibility_delegate_mac.h"
#include "content/browser/accessibility/browser_accessibility_manager.h"
@@ -398,7 +398,7 @@ class RenderWidgetHostViewMac : public RenderWidgetHostView {
string16 tooltip_text_;
// Factory used to safely scope delayed calls to ShutdownHost().
- ScopedRunnableMethodFactory<RenderWidgetHostViewMac> shutdown_factory_;
+ base::WeakPtrFactory<RenderWidgetHostViewMac> weak_factory_;
// selected text on the renderer.
std::string selected_text_;
diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm
index f559281..6cf2cf6 100644
--- a/content/browser/renderer_host/render_widget_host_view_mac.mm
+++ b/content/browser/renderer_host/render_widget_host_view_mac.mm
@@ -6,6 +6,7 @@
#include <QuartzCore/QuartzCore.h>
+#include "base/bind.h"
#include "base/debug/trace_event.h"
#include "base/logging.h"
#include "base/mac/mac_util.h"
@@ -229,7 +230,7 @@ RenderWidgetHostViewMac::RenderWidgetHostViewMac(RenderWidgetHost* widget)
is_loading_(false),
is_hidden_(false),
is_showing_context_menu_(false),
- shutdown_factory_(this),
+ weak_factory_(this),
accelerated_compositing_active_(false),
needs_gpu_visibility_update_after_repaint_(false),
compositing_surface_(gfx::kNullPluginWindow) {
@@ -724,11 +725,11 @@ void RenderWidgetHostViewMac::SetTakesFocusOnlyOnMouseDown(bool flag) {
}
void RenderWidgetHostViewMac::KillSelf() {
- if (shutdown_factory_.empty()) {
+ if (!weak_factory_.HasWeakPtrs()) {
[cocoa_view_ setHidden:YES];
MessageLoop::current()->PostTask(FROM_HERE,
- shutdown_factory_.NewRunnableMethod(
- &RenderWidgetHostViewMac::ShutdownHost));
+ base::Bind(&RenderWidgetHostViewMac::ShutdownHost,
+ weak_factory_.GetWeakPtr()));
}
}
@@ -944,10 +945,9 @@ void RenderWidgetHostViewMac::AcknowledgeSwapBuffers(
BrowserThread::PostTask(
BrowserThread::UI,
FROM_HERE,
- NewRunnableFunction(&GpuProcessHostUIShim::SendToGpuHost,
- gpu_host_id,
- new AcceleratedSurfaceMsg_BuffersSwappedACK(
- route_id)));
+ base::Bind(&GpuProcessHostUIShim::SendToGpuHost,
+ gpu_host_id,
+ new AcceleratedSurfaceMsg_BuffersSwappedACK(route_id)));
} else {
GpuProcessHost::SendOnIO(
gpu_host_id,
@@ -1069,7 +1069,7 @@ void RenderWidgetHostViewMac::UnlockMouse() {
}
void RenderWidgetHostViewMac::ShutdownHost() {
- shutdown_factory_.RevokeAll();
+ weak_factory_.InvalidateWeakPtrs();
render_widget_host_->Shutdown();
// Do not touch any members at this point, |this| has been deleted.
}