diff options
author | Peter Varga <pvarga@inf.u-szeged.hu> | 2020-10-28 15:59:18 +0100 |
---|---|---|
committer | Peter Varga <pvarga@inf.u-szeged.hu> | 2021-01-20 09:41:11 +0100 |
commit | 2b6f6ad066123253b65449033eddcee8b20c470b (patch) | |
tree | d074840fb4b83394f3bb2694ec1c3f7cb725e4c9 /src/core/common/extensions | |
parent | 34dbb4967cb72717a50ef5cba4b84c06a9b160ef (diff) |
Enable hangout services extension
[ChangeLog] Enable hangout services extension and implement its
WebRTC desktop capture extension API dependency.
Fixes: QTBUG-85731
Task-number: QTBUG-51185
Task-number: QTBUG-61676
Change-Id: I7a659c2b0039243ac8d8c58685716ffc55265e3b
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/core/common/extensions')
-rw-r--r-- | src/core/common/extensions/api/qtwebengine_extensions_features.gni | 4 | ||||
-rw-r--r-- | src/core/common/extensions/extensions_api_provider_qt.cpp | 21 |
2 files changed, 22 insertions, 3 deletions
diff --git a/src/core/common/extensions/api/qtwebengine_extensions_features.gni b/src/core/common/extensions/api/qtwebengine_extensions_features.gni index ed7e713c6..3873e235a 100644 --- a/src/core/common/extensions/api/qtwebengine_extensions_features.gni +++ b/src/core/common/extensions/api/qtwebengine_extensions_features.gni @@ -12,7 +12,8 @@ json_features("qt_permission_features") { feature_type = "PermissionFeature" method_name = "AddQtPermissionFeatures" sources = [ - "//extensions/common/api/_permission_features.json" + "//chrome/common/extensions/api/_permission_features.json", + "//extensions/common/api/_permission_features.json", ] } @@ -20,6 +21,7 @@ group("qtwebengine_extensions_features") { public_deps = [ ":qt_api_features", ":qt_permission_features", + "//chrome/common/extensions/api:extensions_features", "//extensions/common/api:extensions_features", ] } diff --git a/src/core/common/extensions/extensions_api_provider_qt.cpp b/src/core/common/extensions/extensions_api_provider_qt.cpp index 22154a9d1..81eb76f3e 100644 --- a/src/core/common/extensions/extensions_api_provider_qt.cpp +++ b/src/core/common/extensions/extensions_api_provider_qt.cpp @@ -39,6 +39,8 @@ #include "extensions_api_provider_qt.h" +#include "chrome/common/extensions/permissions/chrome_api_permissions.h" +#include "chrome/common/extensions/api/generated_schemas.h" #include "chrome/grit/common_resources.h" #include "extensions/common/api/api_features.h" @@ -51,6 +53,7 @@ #include "extensions/common/features/json_feature_provider_source.h" #include "extensions/common/permissions/permissions_info.h" #include "extensions/grit/extensions_resources.h" +#include "qtwebengine/common/extensions/api/generated_schemas.h" #include "qt_api_features.h" //#include "qt_behavior_features.h" @@ -85,16 +88,30 @@ void ExtensionsAPIProviderQt::AddPermissionFeatures(FeatureProvider *provider) bool ExtensionsAPIProviderQt::IsAPISchemaGenerated(const std::string &name) { - return api::GeneratedSchemas::IsGenerated(name); + return api::GeneratedSchemas::IsGenerated(name) || + api::ChromeGeneratedSchemas::IsGenerated(name) || + api::QtWebEngineGeneratedSchemas::IsGenerated(name); } base::StringPiece ExtensionsAPIProviderQt::GetAPISchema(const std::string &name) { - return api::GeneratedSchemas::Get(name); + if (!api::GeneratedSchemas::Get(name).empty()) + return api::GeneratedSchemas::Get(name); + + if (!api::ChromeGeneratedSchemas::Get(name).empty()) + return api::ChromeGeneratedSchemas::Get(name); + + if (!api::QtWebEngineGeneratedSchemas::Get(name).empty()) + return api::QtWebEngineGeneratedSchemas::Get(name); + + return ""; } void ExtensionsAPIProviderQt::RegisterPermissions(PermissionsInfo* permissions_info) { + permissions_info->RegisterPermissions( + chrome_api_permissions::GetPermissionInfos(), + chrome_api_permissions::GetPermissionAliases()); } } |