In the event that Flash is not present on the system, we should be able to issue an on-demand component-update for it immediately prior to loading the content.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ae2a704ab712680c8b53a86e77eba78d0e591106 commit ae2a704ab712680c8b53a86e77eba78d0e591106 Author: waffles <waffles@chromium.org> Date: Wed Jul 13 14:42:20 2016 Rearrange Flash component registration. (1) Remove redundant checks for bundled vs. component-updated Flash: This distinction is handled at registration time by the DCI. (2) Update PathService after calling register. These two events are already racy, and it's more convenient to have the registration finished by the time the component updater notifies that the component has been updated. (3) No need to explicitly pick up the bundled version of Flash for non- Linux: the component updater will manage registration of bundled Flash the same way it does component-updated Flash. BUG= 624067 TEST=https://docs.google.com/document/d/1iTQiaqjuHsKV4cPqSOet-eJKWb2SsJLp2ieDj_Mul4s/edit?pref=2&pli=1 Review-Url: https://codereview.chromium.org/2130803003 Cr-Commit-Position: refs/heads/master@{#405148} [modify] https://crrev.com/ae2a704ab712680c8b53a86e77eba78d0e591106/chrome/browser/component_updater/pepper_flash_component_installer.cc [modify] https://crrev.com/ae2a704ab712680c8b53a86e77eba78d0e591106/chrome/common/chrome_content_client.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/66a5763d27e17e175c46fcb1036f73c2c91e5f7f commit 66a5763d27e17e175c46fcb1036f73c2c91e5f7f Author: waffles <waffles@chromium.org> Date: Thu Jul 14 22:11:39 2016 Rearrange Flash component registration. (1) Remove redundant checks for bundled vs. component-updated Flash: This distinction is handled at registration time by the DCI. (2) Update PathService after calling register. These two events are already racy, and it's more convenient to have the registration finished by the time the component updater notifies that the component has been updated. (3) No need to explicitly pick up the bundled version of Flash for non- Linux: the component updater will manage registration of bundled Flash the same way it does component-updated Flash. BUG= 624067 TEST=https://docs.google.com/document/d/1iTQiaqjuHsKV4cPqSOet-eJKWb2SsJLp2ieDj_Mul4s/edit?pref=2&pli=1 Committed: https://crrev.com/ae2a704ab712680c8b53a86e77eba78d0e591106 Review-Url: https://codereview.chromium.org/2130803003 Cr-Original-Commit-Position: refs/heads/master@{#405148} Cr-Commit-Position: refs/heads/master@{#405597} [modify] https://crrev.com/66a5763d27e17e175c46fcb1036f73c2c91e5f7f/chrome/browser/component_updater/pepper_flash_component_installer.cc [modify] https://crrev.com/66a5763d27e17e175c46fcb1036f73c2c91e5f7f/chrome/common/chrome_content_client.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/77255cc35690dc6985a460eeea28cb51b3dff26f commit 77255cc35690dc6985a460eeea28cb51b3dff26f Author: waffles <waffles@chromium.org> Date: Tue Aug 02 17:25:12 2016 Implement Just-In-Time Flash updates. The basic approach is that every component supplies a list of MIME types that it can handle as a plugin during registration with the component updater. If plugin content is encountered that we do not have a plugin for, the filter will ask the component updater if an implementation is available. If so, it will initiate an on-demand update for the plugin and register an observer to watch for the update completion. In the meantime, the renderer will display a plugin placeholder indicating that a download is in progress. Once/if the update is successful, the placeholder is notified and will re-evaluate the presence of a suitable plugin for the content. This second pass should catch any blocked-by-policy, power-saver, etc restrictions. BUG= 624067 Review-Url: https://codereview.chromium.org/2154773002 Cr-Commit-Position: refs/heads/master@{#409217} [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/caps_installer_win.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/ev_whitelist_component_installer.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/ev_whitelist_component_installer.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/file_type_policies_component_installer.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/file_type_policies_component_installer.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/origin_trials_component_installer.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/origin_trials_component_installer.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/pepper_flash_component_installer.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/sth_set_component_installer.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/sth_set_component_installer.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/subresource_filter_component_installer.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/subresource_filter_component_installer.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/supervised_user_whitelist_installer.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/supervised_user_whitelist_installer_unittest.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/sw_reporter_installer_win.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/component_updater/widevine_cdm_component_installer.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/plugins/plugin_info_message_filter.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/plugins/plugin_info_message_filter.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/plugins/plugin_observer.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/browser/plugins/plugin_observer.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/common/render_messages.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/renderer/chrome_content_renderer_client.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/renderer/plugins/chrome_plugin_placeholder.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/chrome/renderer/plugins/chrome_plugin_placeholder.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/components/component_updater/component_updater_service.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/components/component_updater/component_updater_service.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/components/component_updater/component_updater_service_internal.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/components/component_updater/default_component_installer.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/components/component_updater/default_component_installer.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/components/component_updater/default_component_installer_unittest.cc [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/components/component_updater/mock_component_updater_service.h [modify] https://crrev.com/77255cc35690dc6985a460eeea28cb51b3dff26f/components/update_client/update_client.h
Comment 1 by lafo...@chromium.org
, Jun 28 2016