offscreen_document_host.cc 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. // Copyright 2022 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "extensions/browser/offscreen_document_host.h"
  5. #include "base/check.h"
  6. #include "base/feature_list.h"
  7. #include "extensions/common/extension.h"
  8. #include "extensions/common/extension_features.h"
  9. #include "url/gurl.h"
  10. #include "url/origin.h"
  11. namespace extensions {
  12. OffscreenDocumentHost::OffscreenDocumentHost(
  13. const Extension& extension,
  14. content::SiteInstance* site_instance,
  15. const GURL& url)
  16. : ExtensionHost(&extension,
  17. site_instance,
  18. url,
  19. mojom::ViewType::kOffscreenDocument) {
  20. DCHECK(base::FeatureList::IsEnabled(
  21. extensions_features::kExtensionsOffscreenDocuments));
  22. DCHECK_EQ(url::Origin::Create(url), extension.origin());
  23. DCHECK_GE(extension.manifest_version(), 3);
  24. }
  25. OffscreenDocumentHost::~OffscreenDocumentHost() = default;
  26. void OffscreenDocumentHost::OnDidStopFirstLoad() {
  27. // Nothing to do for offscreen documents.
  28. }
  29. bool OffscreenDocumentHost::IsBackgroundPage() const {
  30. return false;
  31. }
  32. } // namespace extensions