[Extensions] Install deferred extensions earlier

This CL updates the extension InstallLimiter to continue with deferred
or incoming extension installations when all external providers are
ready and all file sizes for incoming installations have been
determined. This prevents us from waiting the full 5s delay for large
(>1MB) extensions from being installed in case there are no other
smaller extensions to wait for.

Bug: 1046302
Change-Id: If98c6ee1b6ae1843efe884301676066ee15107a5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2023830
Commit-Queue: Alexander Hendrich <[email protected]>
Reviewed-by: Devlin <[email protected]>
Cr-Commit-Position: refs/heads/master@{#736626}
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc
index b77a295..2fb0f03b 100644
--- a/chrome/browser/extensions/extension_service.cc
+++ b/chrome/browser/extensions/extension_service.cc
@@ -1131,6 +1131,11 @@
 
 void ExtensionService::OnAllExternalProvidersReady() {
   DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
+#if defined(OS_CHROMEOS)
+  InstallLimiter::Get(profile_)->OnAllExternalProvidersReady();
+#endif  // defined(OS_CHROMEOS)
+
   // Install any pending extensions.
   if (update_once_all_providers_are_ready_ && updater()) {
     update_once_all_providers_are_ready_ = false;