Reset the Mac message pump's delayed work timer upon waking from system sleep.

CFRunLoopTimers are implemented in terms of kernel ticks, a time base which is
suspended while the system is sleeping.  In order to properly perform delayed
work at the proper initially-scheduled time (or at system wake if the
scheduled time passed while the system was asleep), the associated timer needs
to be reset to the most recently scheduled next-fire time on wake from sleep.

BUG=22508
TEST= - Make Chrome the active application.
      - Close all Chrome windows.
      - Close the laptop lid.
      - Wait for it to begin sleeping, indicated by the pulsing light.  NOTE:
        wait until the light actually begins pulsing, not just until it turns
        on.  The disk and fans should all be stopped.
      - Reopen the laptop.  If needed, authenticate to the screen saver.
      - Click the Chrome icon in the dock.  A new window should open on the
        New Tab page.
      - Quickly type "google.com/" into the omnibox.
      - The page should load, its favicon should be visible, and the tab title
        should read "Google".  This should happen as instantly as a normal
        page load.  The tab title should not "stick" on "New Tab" and the icon
        load should not be delayed for any amount of time.
Review URL: http://codereview.chromium.org/342011

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30335 0039d316-1c4b-4281-b951-d872f2087c98


CrOS-Libchrome-Original-Commit: a9527c20280a76efa015cbc0343e8a32375dab5b
1 file changed
tree: 1f1b9c9638d7e999da4f9d5c378d6681e694f4a8
  1. base/
  2. build/
  3. ipc/
  4. testing/