summaryrefslogtreecommitdiffstats
path: root/src/core/extensions
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2021-06-28 11:06:20 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2021-07-13 11:11:40 +0200
commit734b635cf9a9316ddd05dc9d9abc0a93746fc7f3 (patch)
tree49c6736d1c0c792326dd52b7541bea361c478609 /src/core/extensions
parentb848c87dbbc317ad7186418a64670b52777d1393 (diff)
Adaptations for 90-based
Change-Id: I8402b044d8e12d75e144a00984b856f3de10bffd Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> (cherry picked from commit 1d988d971bc4270ba3d148e8e2c143bf8f625b6e)
Diffstat (limited to 'src/core/extensions')
-rw-r--r--src/core/extensions/component_extension_resource_manager_qt.cpp18
-rw-r--r--src/core/extensions/component_extension_resource_manager_qt.h5
-rw-r--r--src/core/extensions/extension_host_delegate_qt.cpp2
-rw-r--r--src/core/extensions/extension_host_delegate_qt.h2
-rw-r--r--src/core/extensions/extension_system_factory_qt.cpp1
-rw-r--r--src/core/extensions/extension_system_qt.cpp10
-rw-r--r--src/core/extensions/extension_system_qt.h4
-rw-r--r--src/core/extensions/extension_web_contents_observer_qt.cpp4
-rw-r--r--src/core/extensions/extension_web_contents_observer_qt.h2
-rw-r--r--src/core/extensions/extensions_browser_client_qt.cpp15
-rw-r--r--src/core/extensions/extensions_browser_client_qt.h5
11 files changed, 37 insertions, 31 deletions
diff --git a/src/core/extensions/component_extension_resource_manager_qt.cpp b/src/core/extensions/component_extension_resource_manager_qt.cpp
index fb6bb5950..2b6a24541 100644
--- a/src/core/extensions/component_extension_resource_manager_qt.cpp
+++ b/src/core/extensions/component_extension_resource_manager_qt.cpp
@@ -53,6 +53,11 @@
#include "content/public/browser/browser_thread.h"
#include "extensions/common/constants.h"
#include "pdf/buildflags.h"
+#include "ppapi/buildflags/buildflags.h"
+
+#if BUILDFLAG(ENABLE_PLUGINS)
+#include "chrome/grit/pdf_resources_map.h"
+#endif
#if BUILDFLAG(ENABLE_PDF)
#include "qtwebengine/browser/pdf/pdf_extension_util.h"
@@ -64,7 +69,9 @@ ComponentExtensionResourceManagerQt::ComponentExtensionResourceManagerQt()
{
AddComponentResourceEntries(kComponentExtensionResources,
kComponentExtensionResourcesSize);
-
+#if BUILDFLAG(ENABLE_PLUGINS)
+ AddComponentResourceEntries(kPdfResources, kPdfResourcesSize);
+#endif
#if BUILDFLAG(ENABLE_PDF)
base::Value dict(base::Value::Type::DICTIONARY);
pdf_extension_util::AddStrings(pdf_extension_util::PdfViewerContext::kPdfViewer, &dict);
@@ -109,19 +116,18 @@ const ui::TemplateReplacements *ComponentExtensionResourceManagerQt::GetTemplate
return it != template_replacements_.end() ? &it->second : nullptr;
}
-void ComponentExtensionResourceManagerQt::AddComponentResourceEntries(const GritResourceMap *entries, size_t size)
+void ComponentExtensionResourceManagerQt::AddComponentResourceEntries(const webui::ResourcePath *entries, size_t size)
{
base::FilePath gen_folder_path = base::FilePath().AppendASCII("@out_folder@/gen/chrome/browser/resources/");
gen_folder_path = gen_folder_path.NormalizePathSeparators();
for (size_t i = 0; i < size; ++i) {
- base::FilePath resource_path = base::FilePath().AppendASCII(entries[i].name);
+ base::FilePath resource_path = base::FilePath().AppendASCII(entries[i].path);
resource_path = resource_path.NormalizePathSeparators();
-
if (!gen_folder_path.IsParent(resource_path)) {
DCHECK(!base::Contains(path_to_resource_id_, resource_path));
- path_to_resource_id_[resource_path] = entries[i].value;
+ path_to_resource_id_[resource_path] = entries[i].id;
} else {
// If the resource is a generated file, strip the generated folder's path,
// so that it can be served from a normal URL (as if it were not
@@ -130,7 +136,7 @@ void ComponentExtensionResourceManagerQt::AddComponentResourceEntries(const Grit
base::FilePath().AppendASCII(resource_path.AsUTF8Unsafe().substr(
gen_folder_path.value().length()));
DCHECK(!base::Contains(path_to_resource_id_, effective_path));
- path_to_resource_id_[effective_path] = entries[i].value;
+ path_to_resource_id_[effective_path] = entries[i].id;
}
}
}
diff --git a/src/core/extensions/component_extension_resource_manager_qt.h b/src/core/extensions/component_extension_resource_manager_qt.h
index 6131e91aa..b029a7f71 100644
--- a/src/core/extensions/component_extension_resource_manager_qt.h
+++ b/src/core/extensions/component_extension_resource_manager_qt.h
@@ -49,8 +49,7 @@
#include "base/files/file_path.h"
#include "base/macros.h"
#include "extensions/browser/component_extension_resource_manager.h"
-
-struct GritResourceMap;
+#include "ui/base/webui/resource_path.h"
namespace extensions {
@@ -67,7 +66,7 @@ public:
const ui::TemplateReplacements *GetTemplateReplacementsForExtension(const std::string &extension_id) const override;
private:
- void AddComponentResourceEntries(const GritResourceMap *entries, size_t size);
+ void AddComponentResourceEntries(const webui::ResourcePath *entries, size_t size);
// A map from a resource path to the resource ID. Used by
// IsComponentExtensionResource.
diff --git a/src/core/extensions/extension_host_delegate_qt.cpp b/src/core/extensions/extension_host_delegate_qt.cpp
index 1a44dee7a..4db1aeb71 100644
--- a/src/core/extensions/extension_host_delegate_qt.cpp
+++ b/src/core/extensions/extension_host_delegate_qt.cpp
@@ -55,7 +55,7 @@ void ExtensionHostDelegateQt::OnExtensionHostCreated(content::WebContents *web_c
extensions::ExtensionWebContentsObserverQt::CreateForWebContents(web_contents);
}
-void ExtensionHostDelegateQt::OnRenderViewCreatedForBackgroundPage(ExtensionHost *host)
+void ExtensionHostDelegateQt::OnMainFrameCreatedForBackgroundPage(ExtensionHost *host)
{
Q_UNUSED(host);
}
diff --git a/src/core/extensions/extension_host_delegate_qt.h b/src/core/extensions/extension_host_delegate_qt.h
index 42ff56a53..04ffb9d16 100644
--- a/src/core/extensions/extension_host_delegate_qt.h
+++ b/src/core/extensions/extension_host_delegate_qt.h
@@ -51,7 +51,7 @@ public:
// EtensionHostDelegate implementation.
void OnExtensionHostCreated(content::WebContents *web_contents) override;
- void OnRenderViewCreatedForBackgroundPage(ExtensionHost *host) override;
+ void OnMainFrameCreatedForBackgroundPage(ExtensionHost *host) override;
content::JavaScriptDialogManager *GetJavaScriptDialogManager() override;
void CreateTab(std::unique_ptr<content::WebContents> web_contents,
const std::string &extension_id,
diff --git a/src/core/extensions/extension_system_factory_qt.cpp b/src/core/extensions/extension_system_factory_qt.cpp
index 41ba31214..b63b41a86 100644
--- a/src/core/extensions/extension_system_factory_qt.cpp
+++ b/src/core/extensions/extension_system_factory_qt.cpp
@@ -44,7 +44,6 @@
#include "extension_system_factory_qt.h"
#include "components/keyed_service/content/browser_context_dependency_manager.h"
-#include "extensions/browser/declarative_user_script_manager_factory.h"
#include "extensions/browser/event_router_factory.h"
#include "extensions/browser/extension_prefs_factory.h"
#include "extensions/browser/extension_registry_factory.h"
diff --git a/src/core/extensions/extension_system_qt.cpp b/src/core/extensions/extension_system_qt.cpp
index 285b27729..99b56786b 100644
--- a/src/core/extensions/extension_system_qt.cpp
+++ b/src/core/extensions/extension_system_qt.cpp
@@ -84,8 +84,8 @@
#include "extensions/browser/quota_service.h"
#include "extensions/browser/renderer_startup_helper.h"
#include "extensions/browser/runtime_data.h"
-#include "extensions/browser/shared_user_script_manager.h"
#include "extensions/browser/service_worker_manager.h"
+#include "extensions/browser/user_script_manager.h"
#include "extensions/browser/value_store/value_store_factory_impl.h"
#include "extensions/common/constants.h"
#include "extensions/common/manifest_constants.h"
@@ -279,9 +279,9 @@ ManagementPolicy *ExtensionSystemQt::management_policy()
return nullptr;
}
-SharedUserScriptManager *ExtensionSystemQt::shared_user_script_manager()
+UserScriptManager *ExtensionSystemQt::user_script_manager()
{
- return shared_user_script_manager_.get();
+ return user_script_manager_.get();
}
StateStore *ExtensionSystemQt::state_store()
@@ -350,8 +350,8 @@ void ExtensionSystemQt::Init(bool extensions_enabled)
quota_service_.reset(new QuotaService);
app_sorting_.reset(new NullAppSorting);
- shared_user_script_manager_ =
- std::make_unique<SharedUserScriptManager>(browser_context_);
+ user_script_manager_ =
+ std::make_unique<UserScriptManager>(browser_context_);
// Make the chrome://extension-icon/ resource available.
// content::URLDataSource::Add(browser_context_, new ExtensionIconSource(browser_context_));
diff --git a/src/core/extensions/extension_system_qt.h b/src/core/extensions/extension_system_qt.h
index 59835657a..2ae92581a 100644
--- a/src/core/extensions/extension_system_qt.h
+++ b/src/core/extensions/extension_system_qt.h
@@ -89,7 +89,7 @@ public:
RuntimeData *runtime_data() override;
ManagementPolicy *management_policy() override;
ServiceWorkerManager *service_worker_manager() override;
- SharedUserScriptManager *shared_user_script_manager() override;
+ UserScriptManager *user_script_manager() override;
StateStore *state_store() override;
StateStore *rules_store() override;
scoped_refptr<ValueStoreFactory> store_factory() override;
@@ -129,7 +129,7 @@ private:
std::unique_ptr<RuntimeData> runtime_data_;
std::unique_ptr<QuotaService> quota_service_;
std::unique_ptr<AppSorting> app_sorting_;
- std::unique_ptr<SharedUserScriptManager> shared_user_script_manager_;
+ std::unique_ptr<UserScriptManager> user_script_manager_;
// For verifying the contents of extensions read from disk.
diff --git a/src/core/extensions/extension_web_contents_observer_qt.cpp b/src/core/extensions/extension_web_contents_observer_qt.cpp
index e336f70b4..0959806f6 100644
--- a/src/core/extensions/extension_web_contents_observer_qt.cpp
+++ b/src/core/extensions/extension_web_contents_observer_qt.cpp
@@ -89,10 +89,10 @@ void ExtensionWebContentsObserverQt::RenderFrameCreated(content::RenderFrameHost
policy->GrantRequestOrigin(process_id, url::Origin::Create(GURL(content::kChromeUIResourcesURL)));
}
-void ExtensionWebContentsObserverQt::RenderViewCreated(content::RenderViewHost *render_view_host)
+void ExtensionWebContentsObserverQt::RenderViewReady()
{
if (web_contents()->IsInnerWebContentsForGuest()) {
- content::RenderWidgetHost *render_widget_host = render_view_host->GetWidget();
+ content::RenderWidgetHost *render_widget_host = web_contents()->GetRenderViewHost()->GetWidget();
content::WebContents *parent_web_contents = guest_view::GuestViewBase::GetTopLevelWebContents(web_contents());
QtWebEngineCore::RenderWidgetHostViewQt *parent_rwhv = static_cast<QtWebEngineCore::RenderWidgetHostViewQt *>(parent_web_contents->GetRenderWidgetHostView());
parent_rwhv->setGuest(static_cast<content::RenderWidgetHostImpl *>(render_widget_host));
diff --git a/src/core/extensions/extension_web_contents_observer_qt.h b/src/core/extensions/extension_web_contents_observer_qt.h
index c0269e4f5..346e94d4a 100644
--- a/src/core/extensions/extension_web_contents_observer_qt.h
+++ b/src/core/extensions/extension_web_contents_observer_qt.h
@@ -61,7 +61,7 @@ public:
// content::WebContentsObserver overrides.
void RenderFrameCreated(content::RenderFrameHost *render_frame_host) override;
- void RenderViewCreated(content::RenderViewHost *render_view_host) override;
+ void RenderViewReady() override;
private:
friend class content::WebContentsUserData<ExtensionWebContentsObserverQt>;
diff --git a/src/core/extensions/extensions_browser_client_qt.cpp b/src/core/extensions/extensions_browser_client_qt.cpp
index 501252823..406facc5c 100644
--- a/src/core/extensions/extensions_browser_client_qt.cpp
+++ b/src/core/extensions/extensions_browser_client_qt.cpp
@@ -187,8 +187,9 @@ private:
head->content_length = data->size();
head->mime_type = *read_mime_type;
DetermineCharset(head->mime_type, data.get(), &head->charset);
- mojo::DataPipe pipe(data->size());
- if (!pipe.consumer_handle.is_valid()) {
+ mojo::ScopedDataPipeProducerHandle producer_handle;
+ mojo::ScopedDataPipeConsumerHandle consumer_handle;
+ if (mojo::CreateDataPipe(data->size(), producer_handle, consumer_handle) != MOJO_RESULT_OK) {
client_->OnComplete(network::URLLoaderCompletionStatus(net::ERR_FAILED));
client_.reset();
MaybeDeleteSelf();
@@ -201,10 +202,10 @@ private:
head->headers->AddHeader(net::HttpRequestHeaders::kContentType, head->mime_type.c_str());
}
client_->OnReceiveResponse(std::move(head));
- client_->OnStartLoadingResponseBody(std::move(pipe.consumer_handle));
+ client_->OnStartLoadingResponseBody(std::move(consumer_handle));
uint32_t write_size = data->size();
- MojoResult result = pipe.producer_handle->WriteData(data->front(), &write_size, MOJO_WRITE_DATA_FLAG_NONE);
+ MojoResult result = producer_handle->WriteData(data->front(), &write_size, MOJO_WRITE_DATA_FLAG_NONE);
OnFileWritten(result);
}
@@ -395,8 +396,8 @@ void ExtensionsBrowserClientQt::LoadResourceFromResourceBundle(const network::Re
}
-bool ExtensionsBrowserClientQt::AllowCrossRendererResourceLoad(const GURL &url,
- blink::mojom::ResourceType resource_type,
+bool ExtensionsBrowserClientQt::AllowCrossRendererResourceLoad(const network::ResourceRequest &request,
+ network::mojom::RequestDestination destination,
ui::PageTransition page_transition,
int child_id,
bool is_incognito,
@@ -412,7 +413,7 @@ bool ExtensionsBrowserClientQt::AllowCrossRendererResourceLoad(const GURL &url,
return true;
bool allowed = false;
- if (url_request_util::AllowCrossRendererResourceLoad(url, resource_type,
+ if (url_request_util::AllowCrossRendererResourceLoad(request, destination,
page_transition, child_id,
is_incognito, extension, extensions,
process_map, &allowed)) {
diff --git a/src/core/extensions/extensions_browser_client_qt.h b/src/core/extensions/extensions_browser_client_qt.h
index 5889694b7..7c00adcad 100644
--- a/src/core/extensions/extensions_browser_client_qt.h
+++ b/src/core/extensions/extensions_browser_client_qt.h
@@ -75,14 +75,15 @@ public:
bool IsGuestSession(content::BrowserContext *context) const override;
bool IsExtensionIncognitoEnabled(const std::string &extension_id, content::BrowserContext *context) const override;
bool CanExtensionCrossIncognito(const Extension *extension, content::BrowserContext *context) const override;
- bool AllowCrossRendererResourceLoad(const GURL &url,
- blink::mojom::ResourceType resource_type,
+ bool AllowCrossRendererResourceLoad(const network::ResourceRequest &request,
+ network::mojom::RequestDestination destination,
ui::PageTransition page_transition,
int child_id,
bool is_incognito,
const Extension *extension,
const ExtensionSet &extensions,
const ProcessMap &process_map) override;
+
PrefService *GetPrefServiceForContext(content::BrowserContext *context) override;
void GetEarlyExtensionPrefsObservers(content::BrowserContext *context,
std::vector<EarlyExtensionPrefsObserver *> *observers) const override;