MacPWAs: Ensure there is always delayed work

Create an infinite loop of once-per-day PostDelayedTasks. This
fixes the following bugs that happen if a PostDelayedTask has been
posted but no PostDelayedTasks remain:
- Menu items remain hilighted after selection via hotkeys.
- Menu doesn't show up in fullscreen when mouse moves to the top of the
  screen.
- NSAlerts don't show up.

Because it came up during investigation, and while we're in the
neighborhood, ensure that we are precise about when our NSApplication
is created and what subclass it has.

TBR=ccameron@chromium.org

(cherry picked from commit b73d26f4d67cf2a5325c9f51441d94ae78ecd761)

Bug: 920795
Change-Id: I45772bd8cf65899e27ce22a0787db5be454b81be
Reviewed-on: https://chromium-review.googlesource.com/c/1440662
Commit-Queue: ccameron <ccameron@chromium.org>
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#626818}
Reviewed-on: https://chromium-review.googlesource.com/c/1450401
Reviewed-by: ccameron <ccameron@chromium.org>
Cr-Commit-Position: refs/branch-heads/3683@{#127}
Cr-Branched-From: e51029943e0a38dd794b73caaf6373d5496ae783-refs/heads/master@{#625896}
1 file changed