Index: chrome/renderer/chrome_render_process_observer.cc |
diff --git a/chrome/renderer/chrome_render_process_observer.cc b/chrome/renderer/chrome_render_process_observer.cc |
index 61c22ec2f19ac9a28ba068200332d015dde01abb..03d71367e3b97dd229508e4b09367498f3c505e7 100644 |
--- a/chrome/renderer/chrome_render_process_observer.cc |
+++ b/chrome/renderer/chrome_render_process_observer.cc |
@@ -13,6 +13,7 @@ |
#include "base/file_util.h" |
#include "base/memory/weak_ptr.h" |
#include "base/message_loop/message_loop.h" |
+#include "base/message_loop/timer_slack.h" |
#include "base/metrics/field_trial.h" |
#include "base/metrics/histogram.h" |
#include "base/metrics/statistics_recorder.h" |
@@ -313,6 +314,8 @@ bool ChromeRenderProcessObserver::OnControlMessageReceived( |
OnGetCacheResourceStats) |
IPC_MESSAGE_HANDLER(ChromeViewMsg_SetContentSettingRules, |
OnSetContentSettingRules) |
+ IPC_MESSAGE_HANDLER(ChromeViewMsg_SetCoalesceTimers, |
+ OnSetTimerCoalescing) |
IPC_MESSAGE_UNHANDLED(handled = false) |
IPC_END_MESSAGE_MAP() |
return handled; |
@@ -354,6 +357,13 @@ void ChromeRenderProcessObserver::OnSetContentSettingRules( |
content_setting_rules_ = rules; |
} |
+void ChromeRenderProcessObserver::OnSetTimerCoalescing(bool enabled) { |
+ base::TimerSlack timer_slack = base::TIMER_SLACK_NONE; |
+ if (enabled) |
+ timer_slack = base::TIMER_SLACK_MAXIMUM; |
+ base::SetTimerSlack(timer_slack); |
+} |
+ |
void ChromeRenderProcessObserver::OnSetCacheCapacities(size_t min_dead_capacity, |
size_t max_dead_capacity, |
size_t capacity) { |