Skip to content

Integrate 89.0.4389.72 #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: turtlebrowser_integration_5.15
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 15 additions & 7 deletions src/core/accessibility_tree_formatter_qt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
**
****************************************************************************/

#include "content/browser/accessibility/accessibility_tree_formatter_base.h"
#include "ui/accessibility/platform/inspect/ax_tree_formatter_base.h"

#include <utility>

Expand All @@ -47,26 +47,28 @@
#include "base/strings/stringprintf.h"
#include "base/strings/utf_string_conversions.h"
#include "base/values.h"
#include "content/public/browser/ax_inspect_factory.h"

#include "browser_accessibility_qt.h"
#include "api/qtwebenginecoreglobal_p.h"

namespace content {

#if QT_CONFIG(accessibility)
class AccessibilityTreeFormatterQt : public AccessibilityTreeFormatterBase {
class AccessibilityTreeFormatterQt : public ui::AXTreeFormatterBase {
public:
explicit AccessibilityTreeFormatterQt();
~AccessibilityTreeFormatterQt() override;

base::Value BuildTreeForSelector(const AXTreeSelector&) const override { return {}; }
base::Value BuildTreeForSelector(const ui::AXTreeSelector&) const override { return {}; }
base::Value BuildTreeForWindow(gfx::AcceleratedWidget widget) const override { return {}; }
std::unique_ptr<base::DictionaryValue> BuildAccessibilityTree(content::BrowserAccessibility *) override;
base::Value BuildTree(ui::AXPlatformNodeDelegate* root) const override { return {}; }
std::unique_ptr<base::DictionaryValue> BuildAccessibilityTree(content::BrowserAccessibility *);

private:
void RecursiveBuildAccessibilityTree(const content::BrowserAccessibility &node, base::DictionaryValue *dict) const;
void AddProperties(const BrowserAccessibility &node, base::DictionaryValue *dict) const;
std::string ProcessTreeForOutput(const base::DictionaryValue &node, base::DictionaryValue * = nullptr) override;
std::string ProcessTreeForOutput(const base::DictionaryValue &node) const override;
};

AccessibilityTreeFormatterQt::AccessibilityTreeFormatterQt()
Expand Down Expand Up @@ -166,7 +168,7 @@ void AccessibilityTreeFormatterQt::AddProperties(const BrowserAccessibility &nod
dict->SetString("description", acc_node->text(QAccessible::Description).toStdString());
}

std::string AccessibilityTreeFormatterQt::ProcessTreeForOutput(const base::DictionaryValue &node, base::DictionaryValue *)
std::string AccessibilityTreeFormatterQt::ProcessTreeForOutput(const base::DictionaryValue &node) const
{
std::string error_value;
if (node.GetString("error", &error_value))
Expand Down Expand Up @@ -206,7 +208,13 @@ std::string AccessibilityTreeFormatterQt::ProcessTreeForOutput(const base::Dicti
#endif // QT_CONFIG(accessibility)

// static
std::unique_ptr<ui::AXTreeFormatter> AccessibilityTreeFormatter::Create()
std::unique_ptr<ui::AXTreeFormatter> AXInspectFactory::CreatePlatformFormatter() {
// Type doesn't matter
return CreateFormatter(kBlink);
}

// static
std::unique_ptr<ui::AXTreeFormatter> AXInspectFactory::CreateFormatter(AXInspectFactory::Type type)
{
#if QT_CONFIG(accessibility)
return std::unique_ptr<ui::AXTreeFormatter>(new AccessibilityTreeFormatterQt());
Expand Down
17 changes: 17 additions & 0 deletions src/core/browser_accessibility_manager_qt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,23 @@ using namespace blink;

namespace content {

// // static
// ui::AXTreeUpdate BrowserAccessibilityManager::GetEmptyDocument() {
// ui::AXNodeData empty_document;
// empty_document.id = 1;
// empty_document.role = ax::mojom::Role::kRootWebArea;
// ui::AXTreeUpdate update;
// update.root_id = empty_document.id;
// update.nodes.push_back(empty_document);
// return update;
// }

// static
BrowserAccessibilityManager* BrowserAccessibilityManager::Create(
BrowserAccessibilityDelegate* delegate) {
return new BrowserAccessibilityManagerQt(nullptr, BrowserAccessibilityManager::GetEmptyDocument(), delegate);
}

BrowserAccessibilityManager* BrowserAccessibilityManager::Create(
const ui::AXTreeUpdate& initialTree,
BrowserAccessibilityDelegate* delegate)
Expand Down
2 changes: 0 additions & 2 deletions src/core/browser_accessibility_qt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,6 @@ QAccessible::Role BrowserAccessibilityQt::role() const

// Used by Chromium to distinguish between the root of the tree
// for this page, and a web area for a frame within this page.
case ax::mojom::Role::kWebArea:
case ax::mojom::Role::kWebView:
case ax::mojom::Role::kRootWebArea: // not sure if we need to make a diff here, but this seems common
return QAccessible::WebDocument;
Expand Down Expand Up @@ -488,7 +487,6 @@ QAccessible::Role BrowserAccessibilityQt::role() const
case ax::mojom::Role::kSection:
return QAccessible::Section;
case ax::mojom::Role::kSlider:
case ax::mojom::Role::kSliderThumb:
return QAccessible::Slider;
case ax::mojom::Role::kSpinButton:
return QAccessible::SpinBox;
Expand Down
2 changes: 0 additions & 2 deletions src/core/browser_main_parts_qt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,6 @@
#include "content/public/browser/browser_main_parts.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/child_process_security_policy.h"
#include "content/public/browser/system_connector.h"
#include "content/public/common/service_manager_connection.h"
#include "extensions/buildflags/buildflags.h"
#if BUILDFLAG(ENABLE_EXTENSIONS)
#include "extensions/common/constants.h"
Expand Down
9 changes: 6 additions & 3 deletions src/core/chromium_overrides.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
#include "web_contents_view_qt.h"

#include "base/values.h"
#include "content/browser/accessibility/accessibility_event_recorder.h"
#include "content/browser/accessibility/accessibility_tree_formatter_blink.h"
#include "content/browser/renderer_host/render_widget_host_view_base.h"
#include "content/browser/web_contents/web_contents_impl.h"
Expand Down Expand Up @@ -136,15 +137,17 @@ ActivationClient *GetActivationClient(aura::Window *)
} // namespace wm
#endif // defined(USE_AURA) || defined(USE_OZONE)

#if TEST_PASSES
namespace content {
std::vector<AccessibilityTreeFormatter::TestPass> AccessibilityTreeFormatter::GetTestPasses()
std::vector<AccessibilityEventRecorder::TestPass> AccessibilityEventRecorder::GetTestPasses()
{
return {
{"blink", &AccessibilityTreeFormatterBlink::CreateBlink, nullptr},
{"native", &AccessibilityTreeFormatter::Create, nullptr},
{"blink", &AccessibilityEventRecorder::Create},
{"native", &AccessibilityEventRecorder::Create},
};
}
} // namespace content
#endif

#if defined(USE_AURA)
namespace ui {
Expand Down
2 changes: 1 addition & 1 deletion src/core/config/linux.pri
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ qtConfig(webengine-embedded-build) {
qtConfig(webengine-ozone-x11) {
gn_args += ozone_platform_x11=true
gn_args += use_xkbcommon=true
packagesExist(xscrnsaver): gn_args += use_xscrnsaver=true
# packagesExist(xscrnsaver): gn_args += use_xscrnsaver=true
qtConfig(webengine-webrtc): gn_args += rtc_use_x11=true
}

Expand Down
49 changes: 24 additions & 25 deletions src/core/content_browser_client_qt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
#include "base/strings/utf_string_conversions.h"
#include "base/task/post_task.h"
#include "base/threading/thread_restrictions.h"
#include "chromecast/browser/service_manager_connection.h"
#include "chrome/browser/custom_handlers/protocol_handler_registry.h"
#include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h"
#if QT_CONFIG(webengine_spellchecker)
Expand Down Expand Up @@ -77,8 +78,7 @@
#include "content/public/browser/web_ui_url_loader_factory.h"
#include "content/public/common/content_switches.h"
#include "content/public/common/main_function_params.h"
#include "content/public/common/service_manager_connection.h"
#include "content/public/common/service_names.mojom.h"
// #include "content/public/common/service_names.mojom.h"
#include "content/public/common/url_constants.h"
#include "content/public/common/user_agent.h"
#include "media/media_buildflags.h"
Expand Down Expand Up @@ -637,31 +637,31 @@ void ContentBrowserClientQt::ExposeInterfacesToRenderer(service_manager::BinderR
performance_manager::PerformanceManagerRegistry::GetInstance()->CreateProcessNodeAndExposeInterfacesToRendererProcess(registry, render_process_host);
}

void ContentBrowserClientQt::RunServiceInstance(const service_manager::Identity &identity,
mojo::PendingReceiver<service_manager::mojom::Service> *receiver)
{
#if BUILDFLAG(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS)
if (identity.name() == media::mojom::kMediaServiceName) {
service_manager::Service::RunAsyncUntilTermination(media::CreateMediaService(std::move(*receiver)));
return;
}
#endif
// void ContentBrowserClientQt::RunServiceInstance(const service_manager::Identity &identity,
// mojo::PendingReceiver<service_manager::mojom::Service> *receiver)
// {
// #if BUILDFLAG(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS)
// if (identity.name() == media::mojom::kMediaServiceName) {
// service_manager::Service::RunAsyncUntilTermination(media::CreateMediaService(std::move(*receiver)));
// return;
// }
// #endif

content::ContentBrowserClient::RunServiceInstance(identity, receiver);
}
// content::ContentBrowserClient::RunServiceInstance(identity, receiver);
// }

base::Optional<service_manager::Manifest> ContentBrowserClientQt::GetServiceManifestOverlay(base::StringPiece name)
{
if (name == content::mojom::kBrowserServiceName)
return GetQtWebEngineContentBrowserOverlayManifest();
// base::Optional<service_manager::Manifest> ContentBrowserClientQt::GetServiceManifestOverlay(base::StringPiece name)
// {
// if (name == content::mojom::kBrowserServiceName)
// return GetQtWebEngineContentBrowserOverlayManifest();

return base::nullopt;
}
// return base::nullopt;
// }

std::vector<service_manager::Manifest> ContentBrowserClientQt::GetExtraServiceManifests()
{
return { };
}
// std::vector<service_manager::Manifest> ContentBrowserClientQt::GetExtraServiceManifests()
// {
// return { };
// }

bool ContentBrowserClientQt::CanCreateWindow(
content::RenderFrameHost* opener,
Expand Down Expand Up @@ -722,8 +722,7 @@ bool ContentBrowserClientQt::ShouldEnableStrictSiteIsolation()
bool ContentBrowserClientQt::WillCreateRestrictedCookieManager(network::mojom::RestrictedCookieManagerRole role,
content::BrowserContext *browser_context,
const url::Origin & /*origin*/,
const net::SiteForCookies & /*site_for_cookies*/,
const url::Origin & /*top_frame_origin*/,
const net::IsolationInfo& /*isolation_info*/,
bool is_service_worker,
int process_id,
int routing_id,
Expand Down
11 changes: 5 additions & 6 deletions src/core/content_browser_client_qt.h
Original file line number Diff line number Diff line change
Expand Up @@ -117,14 +117,14 @@ class ContentBrowserClientQt : public content::ContentBrowserClient
mojo::GenericPendingReceiver receiver) override;
void RegisterBrowserInterfaceBindersForFrame(content::RenderFrameHost *render_frame_host,
mojo::BinderMapWithContext<content::RenderFrameHost *> *map) override;
void RunServiceInstance(const service_manager::Identity &identity,
mojo::PendingReceiver<service_manager::mojom::Service> *receiver) override;
// void RunServiceInstance(const service_manager::Identity &identity,
// mojo::PendingReceiver<service_manager::mojom::Service> *receiver) override;
void ExposeInterfacesToRenderer(service_manager::BinderRegistry *registry,
blink::AssociatedInterfaceRegistry *associated_registry,
content::RenderProcessHost *render_process_host) override;

std::vector<service_manager::Manifest> GetExtraServiceManifests() override;
base::Optional<service_manager::Manifest> GetServiceManifestOverlay(base::StringPiece name) override;
// std::vector<service_manager::Manifest> GetExtraServiceManifests() override;
// base::Optional<service_manager::Manifest> GetServiceManifestOverlay(base::StringPiece name) override;
bool CanCreateWindow(content::RenderFrameHost *opener,
const GURL &opener_url,
const GURL &opener_top_level_frame_url,
Expand All @@ -144,8 +144,7 @@ class ContentBrowserClientQt : public content::ContentBrowserClient
network::mojom::RestrictedCookieManagerRole role,
content::BrowserContext *browser_context,
const url::Origin &origin,
const net::SiteForCookies &site_for_cookies,
const url::Origin &top_frame_origin,
const net::IsolationInfo& isolation_info,
bool is_service_worker,
int process_id,
int routing_id,
Expand Down
6 changes: 3 additions & 3 deletions src/core/extensions/extensions_browser_client_qt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -361,8 +361,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,
Expand All @@ -375,7 +375,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)) {
Expand Down
4 changes: 2 additions & 2 deletions src/core/extensions/extensions_browser_client_qt.h
Original file line number Diff line number Diff line change
Expand Up @@ -75,8 +75,8 @@ class ExtensionsBrowserClientQt : public ExtensionsBrowserClient
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,
Expand Down
3 changes: 1 addition & 2 deletions src/core/extensions/mime_handler_view_guest_delegate_qt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,7 @@ bool MimeHandlerViewGuestDelegateQt::HandleContextMenu(content::WebContents *web
{
content::ContextMenuParams new_params = params;

gfx::Point guest_coordinates =
static_cast<content::WebContentsImpl *>(web_contents)->GetBrowserPluginGuest()->GetScreenCoordinates(gfx::Point());
gfx::Point guest_coordinates = gfx::Point();

// Adjust (x,y) position for offset from guest to embedder.
new_params.x += guest_coordinates.x();
Expand Down
3 changes: 2 additions & 1 deletion src/core/media_capture_devices_dispatcher.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@
#include "content/public/browser/render_process_host.h"
#include "media/audio/audio_device_description.h"
#include "media/audio/audio_manager_base.h"
#include "services/network/public/cpp/is_potentially_trustworthy.h"
#include "third_party/blink/public/common/loader/network_utils.h"
#include "ui/base/l10n/l10n_util.h"

Expand Down Expand Up @@ -351,7 +352,7 @@ void MediaCaptureDevicesDispatcher::processMediaAccessRequest(WebContentsAdapter
if (flags.testFlag(WebContentsAdapterClient::MediaDesktopVideoCapture)) {
const bool screenCaptureEnabled =
adapterClient->webEngineSettings()->testAttribute(WebEngineSettings::ScreenCaptureEnabled);
const bool originIsSecure = blink::network_utils::IsOriginSecure(request.security_origin);
const bool originIsSecure = network::IsUrlPotentiallyTrustworthy(request.security_origin);
if (!screenCaptureEnabled || !originIsSecure) {
std::move(callback).Run(blink::MediaStreamDevices(), MediaStreamRequestResult::INVALID_STATE, std::unique_ptr<content::MediaStreamUI>());
return;
Expand Down
2 changes: 1 addition & 1 deletion src/core/net/system_network_context_manager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@
#include "content/public/browser/network_service_instance.h"
#include "content/public/common/content_features.h"
#include "content/public/common/content_switches.h"
#include "content/public/common/service_names.mojom.h"
// #include "content/public/common/service_names.mojom.h"
#include "content/public/common/user_agent.h"
#include "mojo/public/cpp/bindings/associated_interface_ptr.h"
#include "net/dns/public/util.h"
Expand Down
8 changes: 4 additions & 4 deletions src/core/net/webui_controller_factory_qt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -187,10 +187,10 @@ bool WebUIControllerFactoryQt::UseWebUIForURL(content::BrowserContext *browser_c
return GetWebUIType(browser_context, url) != WebUI::kNoWebUI;
}

bool WebUIControllerFactoryQt::UseWebUIBindingsForURL(content::BrowserContext *browser_context, const GURL &url)
{
return UseWebUIForURL(browser_context, url);
}
// bool WebUIControllerFactoryQt::UseWebUIBindingsForURL(content::BrowserContext *browser_context, const GURL &url)
// {
// return UseWebUIForURL(browser_context, url);
// }

std::unique_ptr<WebUIController> WebUIControllerFactoryQt::CreateWebUIControllerForURL(WebUI *web_ui, const GURL &url)
{
Expand Down
2 changes: 1 addition & 1 deletion src/core/net/webui_controller_factory_qt.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ class WebUIControllerFactoryQt : public content::WebUIControllerFactory
public:
content::WebUI::TypeID GetWebUIType(content::BrowserContext *browserContext, const GURL &url) override;
bool UseWebUIForURL(content::BrowserContext *browserContext, const GURL &url) override;
bool UseWebUIBindingsForURL(content::BrowserContext *browserContext, const GURL &url) override;
// bool UseWebUIBindingsForURL(content::BrowserContext *browserContext, const GURL &url) override;
std::unique_ptr<content::WebUIController> CreateWebUIControllerForURL(content::WebUI *webUi, const GURL &url) override;

static WebUIControllerFactoryQt *GetInstance();
Expand Down
2 changes: 1 addition & 1 deletion src/core/permission_manager_qt.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ static ProfileAdapter::PermissionType toQt(content::PermissionType type)
return ProfileAdapter::NotificationPermission;
case content::PermissionType::ACCESSIBILITY_EVENTS:
return ProfileAdapter::UnsupportedPermission;
case content::PermissionType::FLASH:
// case content::PermissionType::FLASH:
case content::PermissionType::MIDI_SYSEX:
case content::PermissionType::PROTECTED_MEDIA_IDENTIFIER:
case content::PermissionType::MIDI:
Expand Down
2 changes: 1 addition & 1 deletion src/core/pref_service_adapter.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ void PrefServiceAdapter::setup(const ProfileAdapter &profileAdapter)
registry->RegisterListPref(extensions::pref_names::kInstallAllowList);
registry->RegisterListPref(extensions::pref_names::kInstallDenyList);
registry->RegisterDictionaryPref(extensions::pref_names::kInstallForceList);
registry->RegisterDictionaryPref(extensions::pref_names::kLoginScreenExtensions);
// registry->RegisterDictionaryPref(extensions::pref_names::kLoginScreenExtensions);
registry->RegisterListPref(extensions::pref_names::kAllowedTypes);
registry->RegisterBooleanPref(extensions::pref_names::kStorageGarbageCollect, false);
registry->RegisterListPref(extensions::pref_names::kAllowedInstallSites);
Expand Down
Loading