Implement the BackgroundFetch{Fail,ed} Service Worker events

This CL implements the two final events part of the Background Fetch
API: backgroundfetchfail and backgroundfetched. They'll be dispatched
from the BackgroundFetchEventDispatcher, through the
ServiceWorkerEventDispatcher, to the renderer, where they'll run.

The BackgroundFetchSettledFetch structure has been defined in the
SWEventDispatcher's mojom file, but will move to its more appropriate
location in Blink when the ServiceWorkerFetchRequest/Response types
have been migrated to Mojo proper. This is in-progress.

BUG=692534, 692581

Review-Url: https://codereview.chromium.org/2767093004
Cr-Original-Commit-Position: refs/heads/master@{#459469}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4b613c4cd7c83a70d4f176bcb6394b2a800bbd4d
1 file changed
tree: 0c6970ea89a996ba3ce75f05d53e1124a8a235f8
  1. accessibility/
  2. android/
  3. auto_bisect/
  4. battor_agent/
  5. binary_size/
  6. bisect_repackage/
  7. cfi/
  8. check_ecs_deps/
  9. checkbins/
  10. checklicenses/
  11. checkperms/
  12. checkteamtags/
  13. chrome_extensions/
  14. chrome_proxy/
  15. clang/
  16. clang_format_merge_driver/
  17. code_coverage/
  18. compile_test/
  19. copyright_scanner/
  20. coverity/
  21. cr/
  22. cros/
  23. cygprofile/
  24. determinism/
  25. dromaeo_benchmark_runner/
  26. emacs/
  27. find_runtime_symbols/
  28. flakiness/
  29. gdb/
  30. gen_keyboard_overlay_data/
  31. generate_library_loader/
  32. generate_shim_headers/
  33. generate_stubs/
  34. git/
  35. gn/
  36. grit/
  37. gritsettings/
  38. idl_parser/
  39. imagediff/
  40. ipc_fuzzer/
  41. json_comment_eater/
  42. json_schema_compiler/
  43. json_to_struct/
  44. linux/
  45. luci-go/
  46. mac/
  47. mb/
  48. md_browser/
  49. measure_page_load_time/
  50. memory/
  51. memory_inspector/
  52. metrics/
  53. msan/
  54. oopif/
  55. origin_trials/
  56. page_cycler/
  57. perf/
  58. perf_expectations/
  59. polymer/
  60. protoc_wrapper/
  61. python/
  62. real_world_impact/
  63. resource_prefetch_predictor/
  64. resources/
  65. screenshot_testing/
  66. security/
  67. site_compare/
  68. stats_viewer/
  69. strict_enum_value_checker/
  70. sublime/
  71. symsrc/
  72. tcmalloc/
  73. traceline/
  74. traffic_annotation/
  75. ubsan/
  76. usb_gadget/
  77. valgrind/
  78. variations/
  79. vim/
  80. web_bluetooth/
  81. win/
  82. xdisplaycheck/
  83. bash-completion
  84. bisect-builds.py
  85. bisect-manual-test.py
  86. bisect_test.py
  87. boilerplate.py
  88. check_git_config.py
  89. check_grd_for_unused_strings.py
  90. clang-format-js
  91. DEPS
  92. diagnose-me.py
  93. gypv8sh.py
  94. include_tracer.py
  95. ipc_messages_log.py
  96. licenses.py
  97. multi_process_rss.py
  98. nocompile_driver.py
  99. omahaproxy.py
  100. OWNERS
  101. prepare-bisect-perf-regression.py
  102. remove_duplicate_includes.py
  103. remove_stale_pyc_files.py
  104. roll_angle.py
  105. roll_webgl_conformance.py
  106. roll_webrtc.py
  107. run-bisect-manual-test.py
  108. run-bisect-perf-regression.py
  109. run-perf-test.cfg
  110. safely-roll-deps.py
  111. sort-headers.py
  112. sort_sources.py
  113. unused-symbols-report.py
  114. yes_no.py