summaryrefslogtreecommitdiffstats
path: root/src/core
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2017-01-25 15:09:31 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-03-01 12:06:20 +0000
commitab94349cb2fa073e8aec661a797de1cfc3819752 (patch)
treed3525f63aa9b3ff041989d5cf981e0ee8b07d77d /src/core
parentcb6564b11ea0a81155b59ab178ff75148017a952 (diff)
Simple adaptations to Chromium 55
The simplest adaptations to API and build changes in Chromium 55 Change-Id: I923fa188690a04902492317807f72f006bcab9c6 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Diffstat (limited to 'src/core')
-rw-r--r--src/core/access_token_store_qt.cpp2
-rw-r--r--src/core/access_token_store_qt.h4
-rw-r--r--src/core/browser_accessibility_qt.cpp6
-rw-r--r--src/core/browser_context_adapter.cpp1
-rw-r--r--src/core/browser_context_qt.h3
-rw-r--r--src/core/certificate_error_controller.cpp4
-rw-r--r--src/core/certificate_error_controller_p.h4
-rw-r--r--src/core/chromium_gpu_helper.cpp4
-rw-r--r--src/core/chromium_gpu_helper.h6
-rw-r--r--src/core/chromium_overrides.cpp64
-rw-r--r--src/core/chromium_overrides.h4
-rw-r--r--src/core/config/common.pri11
-rw-r--r--src/core/config/desktop_linux.pri5
-rw-r--r--src/core/config/embedded_linux.pri18
-rw-r--r--src/core/config/linux.pri36
-rw-r--r--src/core/config/windows.pri26
-rw-r--r--src/core/content_browser_client_qt.cpp7
-rw-r--r--src/core/content_browser_client_qt.h3
-rw-r--r--src/core/cookie_monster_delegate_qt.cpp2
-rw-r--r--src/core/cookie_monster_delegate_qt.h2
-rw-r--r--src/core/core_generator.pro1
-rw-r--r--src/core/core_module.pro4
-rw-r--r--src/core/delegated_frame_node.cpp11
-rw-r--r--src/core/gl_surface_qt.cpp25
-rw-r--r--src/core/media_capture_devices_dispatcher.cpp2
-rw-r--r--src/core/ozone_platform_eglfs.cpp8
-rw-r--r--src/core/ozone_platform_eglfs.h2
-rw-r--r--src/core/permission_manager_qt.cpp3
-rw-r--r--src/core/permission_manager_qt.h2
-rw-r--r--src/core/print_view_manager_base_qt.cpp10
-rw-r--r--src/core/print_view_manager_base_qt.h2
-rw-r--r--src/core/printing_message_filter_qt.cpp2
-rw-r--r--src/core/qtwebengine.gni17
-rw-r--r--src/core/qtwebengine_resources.gni2
-rw-r--r--src/core/qtwebengine_sources.gni150
-rw-r--r--src/core/render_widget_host_view_qt.cpp4
-rw-r--r--src/core/render_widget_host_view_qt.h2
-rw-r--r--src/core/renderer/content_renderer_client_qt.cpp8
-rw-r--r--src/core/renderer/user_resource_controller.cpp11
-rw-r--r--src/core/renderer_host/pepper/pepper_isolated_file_system_message_filter.cpp2
-rw-r--r--src/core/ssl_host_state_delegate_qt.cpp22
-rw-r--r--src/core/ssl_host_state_delegate_qt.h6
-rw-r--r--src/core/surface_factory_qt.cpp2
-rw-r--r--src/core/surface_factory_qt.h2
-rw-r--r--src/core/url_request_context_getter_qt.cpp10
-rw-r--r--src/core/url_request_qrc_job_qt.cpp4
-rw-r--r--src/core/web_contents_adapter.cpp2
-rw-r--r--src/core/web_contents_adapter_client.h19
-rw-r--r--src/core/web_contents_delegate_qt.cpp2
-rw-r--r--src/core/web_contents_view_qt.cpp7
-rw-r--r--src/core/web_contents_view_qt.h2
-rw-r--r--src/core/web_event_factory.cpp17
52 files changed, 347 insertions, 228 deletions
diff --git a/src/core/access_token_store_qt.cpp b/src/core/access_token_store_qt.cpp
index 5b8fe83f7..1819cd733 100644
--- a/src/core/access_token_store_qt.cpp
+++ b/src/core/access_token_store_qt.cpp
@@ -56,7 +56,7 @@
namespace QtWebEngineCore {
-using content::AccessTokenStore;
+using device::AccessTokenStore;
using content::BrowserThread;
AccessTokenStoreQt::AccessTokenStoreQt()
diff --git a/src/core/access_token_store_qt.h b/src/core/access_token_store_qt.h
index 973f304c0..ced69a2b6 100644
--- a/src/core/access_token_store_qt.h
+++ b/src/core/access_token_store_qt.h
@@ -41,7 +41,7 @@
#define ACCESS_TOKEN_STORE_QT_H
#include "base/memory/ref_counted.h"
-#include "content/public/browser/access_token_store.h"
+#include "device/geolocation/access_token_store.h"
#include <QtCore/qcompilerdetection.h>
#include <QtCore/QFile>
@@ -53,7 +53,7 @@ class URLRequestContextGetter;
namespace QtWebEngineCore {
-class AccessTokenStoreQt : public content::AccessTokenStore {
+class AccessTokenStoreQt : public device::AccessTokenStore {
public:
AccessTokenStoreQt();
~AccessTokenStoreQt();
diff --git a/src/core/browser_accessibility_qt.cpp b/src/core/browser_accessibility_qt.cpp
index 30e6efc2e..ac4649d3d 100644
--- a/src/core/browser_accessibility_qt.cpp
+++ b/src/core/browser_accessibility_qt.cpp
@@ -173,9 +173,9 @@ void BrowserAccessibilityQt::setText(QAccessible::Text t, const QString &text)
QRect BrowserAccessibilityQt::rect() const
{
- if (!manager()) // needed implicitly by GetGlobalBoundsRect()
+ if (!manager()) // needed implicitly by GetScreenBoundsRect()
return QRect();
- gfx::Rect bounds = GetGlobalBoundsRect();
+ gfx::Rect bounds = GetScreenBoundsRect();
return QRect(bounds.x(), bounds.y(), bounds.width(), bounds.height());
}
@@ -573,7 +573,7 @@ void BrowserAccessibilityQt::scrollToSubstring(int startIndex, int endIndex)
{
int count = characterCount();
if (startIndex < endIndex && endIndex < count)
- manager()->ScrollToMakeVisible(*this, GetLocalBoundsForRange(startIndex, endIndex - startIndex));
+ manager()->ScrollToMakeVisible(*this, GetPageBoundsForRange(startIndex, endIndex - startIndex));
}
QVariant BrowserAccessibilityQt::currentValue() const
diff --git a/src/core/browser_context_adapter.cpp b/src/core/browser_context_adapter.cpp
index 3396f73ef..863731ff4 100644
--- a/src/core/browser_context_adapter.cpp
+++ b/src/core/browser_context_adapter.cpp
@@ -101,6 +101,7 @@ BrowserContextAdapter::BrowserContextAdapter(const QString &storageName)
BrowserContextAdapter::~BrowserContextAdapter()
{
+ m_browserContext->ShutdownStoragePartitions();
if (m_downloadManagerDelegate)
content::BrowserThread::DeleteSoon(content::BrowserThread::UI, FROM_HERE, m_downloadManagerDelegate.take());
BrowserContextDependencyManager::GetInstance()->DestroyBrowserContextServices(m_browserContext.data());
diff --git a/src/core/browser_context_qt.h b/src/core/browser_context_qt.h
index ca65552be..96d3fa861 100644
--- a/src/core/browser_context_qt.h
+++ b/src/core/browser_context_qt.h
@@ -72,8 +72,6 @@ public:
base::FilePath GetCachePath() const;
virtual bool IsOffTheRecord() const Q_DECL_OVERRIDE;
- net::URLRequestContextGetter *GetRequestContext();
-
virtual net::URLRequestContextGetter *CreateMediaRequestContext() Q_DECL_OVERRIDE;
virtual net::URLRequestContextGetter *CreateMediaRequestContextForStoragePartition(const base::FilePath& partition_path, bool in_memory) Q_DECL_OVERRIDE;
@@ -97,6 +95,7 @@ public:
// Profile implementation:
PrefService* GetPrefs() override;
const PrefService* GetPrefs() const override;
+ net::URLRequestContextGetter *GetRequestContext() override;
BrowserContextAdapter *adapter() { return m_adapter; }
diff --git a/src/core/certificate_error_controller.cpp b/src/core/certificate_error_controller.cpp
index 18835a5c7..a681de859 100644
--- a/src/core/certificate_error_controller.cpp
+++ b/src/core/certificate_error_controller.cpp
@@ -71,7 +71,7 @@ ASSERT_ENUMS_MATCH(CertificateErrorController::CertificateErrorEnd, net::ERR_CER
void CertificateErrorControllerPrivate::accept(bool accepted)
{
- callback.Run(accepted);
+ callback.Run(accepted ? content::CERTIFICATE_REQUEST_RESULT_TYPE_CONTINUE : content::CERTIFICATE_REQUEST_RESULT_TYPE_DENY);
}
CertificateErrorControllerPrivate::CertificateErrorControllerPrivate(int cert_error,
@@ -80,7 +80,7 @@ CertificateErrorControllerPrivate::CertificateErrorControllerPrivate(int cert_er
content::ResourceType resource_type,
bool _overridable,
bool strict_enforcement,
- const base::Callback<void(bool)>& cb
+ const base::Callback<void(content::CertificateRequestResultType)>& cb
)
: certError(CertificateErrorController::CertificateError(cert_error))
, requestUrl(toQt(request_url))
diff --git a/src/core/certificate_error_controller_p.h b/src/core/certificate_error_controller_p.h
index ee073b64f..abde9a7d5 100644
--- a/src/core/certificate_error_controller_p.h
+++ b/src/core/certificate_error_controller_p.h
@@ -59,7 +59,7 @@ QT_BEGIN_NAMESPACE
class CertificateErrorControllerPrivate {
public:
- CertificateErrorControllerPrivate(int cert_error, const net::SSLInfo& ssl_info, const GURL& request_url, content::ResourceType resource_type, bool overridable, bool strict_enforcement, const base::Callback<void(bool)>& callback);
+ CertificateErrorControllerPrivate(int cert_error, const net::SSLInfo& ssl_info, const GURL& request_url, content::ResourceType resource_type, bool overridable, bool strict_enforcement, const base::Callback<void(content::CertificateRequestResultType)>& callback);
void accept(bool accepted);
@@ -70,7 +70,7 @@ public:
CertificateErrorController::ResourceType resourceType;
bool overridable;
bool strictEnforcement;
- const base::Callback<void(bool)> callback;
+ const base::Callback<void(content::CertificateRequestResultType)> callback;
};
QT_END_NAMESPACE
diff --git a/src/core/chromium_gpu_helper.cpp b/src/core/chromium_gpu_helper.cpp
index d1133f5c2..1b415b9ec 100644
--- a/src/core/chromium_gpu_helper.cpp
+++ b/src/core/chromium_gpu_helper.cpp
@@ -75,13 +75,13 @@ gpu::gles2::MailboxManager *mailbox_manager()
return gpuChannelManager->mailbox_manager();
}
-gpu::gles2::Texture* ConsumeTexture(gpu::gles2::MailboxManager *mailboxManager, unsigned target, const gpu::Mailbox& mailbox)
+gpu::gles2::TextureBase* ConsumeTexture(gpu::gles2::MailboxManager *mailboxManager, unsigned target, const gpu::Mailbox& mailbox)
{
Q_UNUSED(target);
return mailboxManager->ConsumeTexture(mailbox);
}
-unsigned int service_id(gpu::gles2::Texture *tex)
+unsigned int service_id(gpu::gles2::TextureBase *tex)
{
return tex->service_id();
}
diff --git a/src/core/chromium_gpu_helper.h b/src/core/chromium_gpu_helper.h
index 02fe2d3bb..9954dc1d0 100644
--- a/src/core/chromium_gpu_helper.h
+++ b/src/core/chromium_gpu_helper.h
@@ -52,7 +52,7 @@ struct Mailbox;
class SyncPointManager;
namespace gles2 {
class MailboxManager;
-class Texture;
+class TextureBase;
}
}
@@ -65,8 +65,8 @@ base::MessageLoop *gpu_message_loop();
gpu::SyncPointManager *sync_point_manager();
gpu::gles2::MailboxManager *mailbox_manager();
-gpu::gles2::Texture* ConsumeTexture(gpu::gles2::MailboxManager *mailboxManager, unsigned target, const gpu::Mailbox& mailbox);
-unsigned int service_id(gpu::gles2::Texture *tex);
+gpu::gles2::TextureBase* ConsumeTexture(gpu::gles2::MailboxManager *mailboxManager, unsigned target, const gpu::Mailbox& mailbox);
+unsigned int service_id(gpu::gles2::TextureBase *tex);
#ifdef Q_OS_QNX
typedef void* EGLDisplay;
diff --git a/src/core/chromium_overrides.cpp b/src/core/chromium_overrides.cpp
index 882f5b1dd..f60b9213b 100644
--- a/src/core/chromium_overrides.cpp
+++ b/src/core/chromium_overrides.cpp
@@ -65,21 +65,25 @@
#include "ui/gfx/platform_font.h"
#endif
+#if defined(USE_OPENSSL_CERTS)
+#include "net/ssl/openssl_client_key_store.h"
+#endif
+
namespace QtWebEngineCore {
-void GetScreenInfoFromNativeWindow(QWindow* window, blink::WebScreenInfo* results)
+void GetScreenInfoFromNativeWindow(QWindow* window, content::ScreenInfo* results)
{
QScreen* screen = window->screen();
- blink::WebScreenInfo r;
- r.deviceScaleFactor = screen->devicePixelRatio();
- r.depthPerComponent = 8;
+ content::ScreenInfo r;
+ r.device_scale_factor = screen->devicePixelRatio();
+ r.depth_per_component = 8;
r.depth = screen->depth();
- r.isMonochrome = (r.depth == 1);
+ r.is_monochrome = (r.depth == 1);
QRect screenGeometry = screen->geometry();
- r.rect = blink::WebRect(screenGeometry.x(), screenGeometry.y(), screenGeometry.width(), screenGeometry.height());
+ r.rect = gfx::Rect(screenGeometry.x(), screenGeometry.y(), screenGeometry.width(), screenGeometry.height());
QRect available = screen->availableGeometry();
- r.availableRect = blink::WebRect(available.x(), available.y(), available.width(), available.height());
+ r.available_rect = gfx::Rect(available.x(), available.y(), available.width(), available.height());
*results = r;
}
@@ -108,14 +112,15 @@ WebContentsView* CreateWebContentsView(WebContentsImpl *web_contents,
}
// static
-void RenderWidgetHostViewBase::GetDefaultScreenInfo(blink::WebScreenInfo* results) {
+void WebContentsView::GetDefaultScreenInfo(content::ScreenInfo* results)
+{
QWindow dummy;
QtWebEngineCore::GetScreenInfoFromNativeWindow(&dummy, results);
}
} // namespace content
-#if defined(USE_AURA) && !defined(USE_OZONE)
+#if defined(USE_AURA) || defined(USE_OZONE)
namespace content {
// content/common/font_list.h
@@ -123,22 +128,25 @@ std::unique_ptr<base::ListValue> GetFontList_SlowBlocking()
{
std::unique_ptr<base::ListValue> font_list(new base::ListValue);
- QFontDatabase database;
- for (auto family : database.families()){
- base::ListValue* font_item = new base::ListValue();
- font_item->Append(new base::StringValue(family.toStdString()));
- font_item->Append(new base::StringValue(family.toStdString())); // should be localized name.
- // TODO: Support localized family names.
- font_list->Append(font_item);
- }
+ QFontDatabase database;
+ for (auto family : database.families()){
+ std::unique_ptr<base::ListValue> font_item(new base::ListValue());
+ font_item->AppendString(family.toStdString());
+ font_item->AppendString(family.toStdString()); // localized name.
+ // TODO(yusukes): Support localized family names.
+ font_list->Append(std::move(font_item));
+ }
return std::move(font_list);
}
#if defined(ENABLE_PLUGINS)
// content/browser/renderer_host/pepper/pepper_truetype_font_list.h
-void GetFontFamilies_SlowBlocking(std::vector<std::string> *)
+void GetFontFamilies_SlowBlocking(std::vector<std::string> *font_families)
{
- QT_NOT_USED
+ QFontDatabase database;
+ for (auto family : database.families()){
+ font_families->push_back(family.toStdString());
+ }
}
void GetFontsInFamily_SlowBlocking(const std::string &, std::vector<ppapi::proxy::SerializedTrueTypeFontDesc> *)
@@ -149,26 +157,14 @@ void GetFontsInFamily_SlowBlocking(const std::string &, std::vector<ppapi::proxy
} // namespace content
-namespace ui {
-
-OSExchangeData::Provider* OSExchangeData::CreateProvider()
-{
- QT_NOT_USED
- return 0;
-}
-
-} // namespace ui
-
-#endif // defined(USE_AURA) && !defined(USE_OZONE)
+#endif // defined(USE_AURA) || defined(USE_OZONE)
#if defined(USE_OPENSSL_CERTS)
namespace net {
-class SSLPrivateKey { };
-class X509Certificate;
-std::unique_ptr<SSLPrivateKey> FetchClientCertPrivateKey(X509Certificate* certificate)
+scoped_refptr<SSLPrivateKey> FetchClientCertPrivateKey(X509Certificate* certificate)
{
- return std::unique_ptr<SSLPrivateKey>();
+ return OpenSSLClientKeyStore::GetInstance()->FetchClientCertPrivateKey(certificate);
}
} // namespace net
diff --git a/src/core/chromium_overrides.h b/src/core/chromium_overrides.h
index b2bd398af..b27bf309c 100644
--- a/src/core/chromium_overrides.h
+++ b/src/core/chromium_overrides.h
@@ -40,7 +40,7 @@
#ifndef CHROMIUM_OVERRIDES_H
#define CHROMIUM_OVERRIDES_H
-#include "third_party/WebKit/public/platform/WebScreenInfo.h"
+#include "content/public/common/screen_info.h"
#include <QtGlobal>
QT_BEGIN_NAMESPACE
@@ -48,7 +48,7 @@ class QWindow;
QT_END_NAMESPACE
namespace QtWebEngineCore {
-void GetScreenInfoFromNativeWindow(QWindow* window, blink::WebScreenInfo* results);
+void GetScreenInfoFromNativeWindow(QWindow* window, content::ScreenInfo* results);
}
#endif
diff --git a/src/core/config/common.pri b/src/core/config/common.pri
index 1239ae963..b23625462 100644
--- a/src/core/config/common.pri
+++ b/src/core/config/common.pri
@@ -4,8 +4,11 @@ use?(gn) {
gn_args += \
use_qt=true \
is_component_build=false \
- enable_remoting=false \
+ is_shared=true \
+ enable_media_router=false \
enable_nacl=false \
+ enable_remoting=false \
+ enable_web_speech=false \
use_experimental_allocator_shim=false \
use_allocator=\"none\" \
v8_use_external_startup_data=false \
@@ -40,6 +43,12 @@ use?(gn) {
} else {
gn_args += enable_webrtc=false
}
+
+ CONFIG(release, debug|release) {
+ force_debug_info: gn_args += symbol_level=1
+ else: gn_args += symbol_level=0
+ }
+
!webcore_debug: gn_args += remove_webcore_debug_symbols=true
!v8base_debug: gn_args += remove_v8base_debug_symbols=true
diff --git a/src/core/config/desktop_linux.pri b/src/core/config/desktop_linux.pri
index f2ea4883a..10938a9f2 100644
--- a/src/core/config/desktop_linux.pri
+++ b/src/core/config/desktop_linux.pri
@@ -4,11 +4,14 @@ use?(gn) {
gn_args += \
is_clang=false \
use_sysroot=false \
- use_system_libffi=false
+ enable_session_service=false \
+ enable_notifications=false \
+ toolkit_views=false
use?(icecc) {
gn_args += use_debug_fission=false
}
+ !use_gold_linker: gn_args += use_gold=false
} else {
diff --git a/src/core/config/embedded_linux.pri b/src/core/config/embedded_linux.pri
index c9de47562..853be7be9 100644
--- a/src/core/config/embedded_linux.pri
+++ b/src/core/config/embedded_linux.pri
@@ -2,6 +2,24 @@ GYP_ARGS += "-D qt_os=\"embedded_linux\" -I config/embedded_linux.gypi"
include(linux.pri)
+use?(gn) {
+ gn_args += \
+ is_desktop_linux=false \
+ use_gold=false \
+ use_ozone=true \
+ is_clang=false \
+ use_sysroot=false \
+ enable_session_service=false \
+ enable_notifications=false \
+ ozone_auto_platforms=false \
+ ozone_platform_headless=true \
+ toolkit_views=false
+
+ use?(icecc) {
+ gn_args += use_debug_fission=false
+ }
+}
+
GYP_CONFIG += \
clang=0 \
desktop_linux=0 \
diff --git a/src/core/config/linux.pri b/src/core/config/linux.pri
index 8509c0c8e..4854fae0d 100644
--- a/src/core/config/linux.pri
+++ b/src/core/config/linux.pri
@@ -4,16 +4,30 @@ QT_FOR_CONFIG += gui-private webengine-private
use?(gn) {
gn_args += \
+ use_cups=false \
use_gconf=false \
use_gio=false \
+ use_gnome_keyring=false \
use_kerberos=false \
linux_use_bundled_binutils=false
- #qtConfig(system-zlib): use?(system_minizip): gn_args += use_system_zlib=true use_system_minizip=true
- #qtConfig(system-png): gn_args += use_system_libpng=true
+ use?(nss) {
+ gn_args += \
+ use_nss_certs=true \
+ use_openssl_certs=false
+ } else {
+ gn_args += \
+ use_nss_certs=false \
+ use_openssl_certs=true
+ }
+ gcc:!clang: greaterThan(QT_GCC_MAJOR_VERSION, 5): gn_args += no_delete_null_pointer_checks=true
+
+
+ qtConfig(system-zlib): use?(system_minizip): gn_args += use_system_zlib=true use_system_minizip=true
+ qtConfig(system-png): gn_args += use_system_libpng=true
qtConfig(system-jpeg): gn_args += use_system_libjpeg=true
- qtConfig(system-harfbuzz): use?(system_harfbuzz): gn_args += use_system_harfbuzz=true
- !qtConfig(glib): gn_args += use_glib=false
+ use?(system_harfbuzz): gn_args += use_system_harfbuzz=true
+ !use?(glib): gn_args += use_glib=false
qtConfig(pulseaudio) {
gn_args += use_pulseaudio=true
} else {
@@ -24,20 +38,20 @@ use?(gn) {
} else {
gn_args += use_alsa=false
}
+ packagesExist(libffi): gn_args += use_system_libffi=true
+ else: gn_args += use_system_libffi=false
- #use?(system_libevent): gn_args += use_system_libevent=true
- #use?(system_libwebp): gn_args += use_system_libwebp=true
+ use?(system_libevent): gn_args += use_system_libevent=true
+ use?(system_libwebp): gn_args += use_system_libwebp=true
#use?(system_libsrtp): gn_args += use_system_libsrtp=true
- #use?(system_libxslt): gn_args += use_system_libxml=true use_system_libxslt=true
+ use?(system_libxslt): gn_args += use_system_libxml=true use_system_libxslt=true
#use?(system_jsoncpp): gn_args += use_system_jsoncpp=true
#use?(system_opus): gn_args += use_system_opus=true
- #use?(system_snappy): gn_args += use_system_snappy=true
+ use?(system_snappy): gn_args += use_system_snappy=true
#use?(system_vpx): gn_args += use_system_libvpx=true
- #use?(system_icu): gn_args += use_system_icu=true icu_use_data_file_flag=false
+ #use?(system_icu): gn_args += use_system_icu=true icu_use_data_file=false
#use?(system_ffmpeg): gn_args += use_system_ffmpeg=true
#use?(system_protobuf): gn_args += use_system_protobuf=true
-
- #gcc:!clang: greaterThan(QT_GCC_MAJOR_VERSION, 5): gn_args += no_delete_null_pointer_checks=true
}
# linux_use_bundled_gold currently relies on a hardcoded relative path from chromium/src/out/(Release|Debug)
diff --git a/src/core/config/windows.pri b/src/core/config/windows.pri
index 334675481..d5b50842e 100644
--- a/src/core/config/windows.pri
+++ b/src/core/config/windows.pri
@@ -2,6 +2,16 @@ GYP_ARGS += "-D qt_os=\"win32\" -I config/windows.gypi"
include(common.pri)
+gn_args += \
+ is_clang=false \
+ use_sysroot=false \
+ use_kerberos=true \
+ enable_notifications=false \
+ enable_session_service=false \
+ ninja_use_custom_environment_files=false \
+ is_multi_dll_chrome=false \
+ win_link_timing=true
+
GYP_CONFIG += \
disable_nacl=1 \
remoting=0 \
@@ -16,6 +26,16 @@ GYP_ARGS += "-D perl_exe=\"perl.exe\" -D bison_exe=\"bison.exe\" -D gperf_exe=\"
# Gyp's parallel processing is broken on Windows
GYP_ARGS += "--no-parallel"
+
+isDeveloperBuild() {
+ gn_args += \
+ is_win_fastlink=true \
+ use_incremental_linking=true
+} else {
+ gn_args += \
+ use_incremental_linking=false
+}
+
qtConfig(angle) {
#FIXME: Expect LIBQTANGLE_NAME to be always set
#FIXME: Replace qt_egl_library and qt_glesv2_library into qt_angle_library
@@ -70,6 +90,12 @@ msvc {
}
GYP_ARGS += "-G msvs_version=$$MSVS_VERSION"
+ gn_args += visual_studio_version=$$MSVS_VERSION
+
+ SDK_PATH = $$(WINDOWSSDKDIR)
+ VS_PATH= $$(VSINSTALLDIR)
+ gn_args += visual_studio_path=$$shell_quote($$VS_PATH)
+ gn_args += windows_sdk_path=$$shell_quote($$SDK_PATH)
isBuildingOnWin32(): GYP_ARGS += "-D windows_sdk_path=\"C:/Program Files/Windows Kits/10\""
diff --git a/src/core/content_browser_client_qt.cpp b/src/core/content_browser_client_qt.cpp
index f9b6f31d8..71e83a578 100644
--- a/src/core/content_browser_client_qt.cpp
+++ b/src/core/content_browser_client_qt.cpp
@@ -469,17 +469,12 @@ void ContentBrowserClientQt::AllowCertificateError(content::WebContents *webCont
bool overridable,
bool strict_enforcement,
bool expired_previous_decision,
- const base::Callback<void(bool)>& callback,
- content::CertificateRequestResultType* result)
+ const base::Callback<void(content::CertificateRequestResultType)>& callback)
{
WebContentsDelegateQt* contentsDelegate = static_cast<WebContentsDelegateQt*>(webContents->GetDelegate());
QSharedPointer<CertificateErrorController> errorController(new CertificateErrorController(new CertificateErrorControllerPrivate(cert_error, ssl_info, request_url, resource_type, overridable, strict_enforcement, callback)));
contentsDelegate->allowCertificateError(errorController);
-
- // If we don't give the user a chance to allow it, we can reject it right away.
- if (result && (!overridable || strict_enforcement))
- *result = content::CERTIFICATE_REQUEST_RESULT_TYPE_DENY;
}
void ContentBrowserClientQt::SelectClientCertificate(content::WebContents * /*webContents*/,
diff --git a/src/core/content_browser_client_qt.h b/src/core/content_browser_client_qt.h
index a13d14ff2..86373e2b0 100644
--- a/src/core/content_browser_client_qt.h
+++ b/src/core/content_browser_client_qt.h
@@ -98,8 +98,7 @@ public:
bool overridable,
bool strict_enforcement,
bool expired_previous_decision,
- const base::Callback<void(bool)>& callback,
- content::CertificateRequestResultType* result) Q_DECL_OVERRIDE;
+ const base::Callback<void(content::CertificateRequestResultType)>& callback) Q_DECL_OVERRIDE;
virtual void SelectClientCertificate(content::WebContents* web_contents,
net::SSLCertRequestInfo* cert_request_info,
std::unique_ptr<content::ClientCertificateDelegate> delegate) Q_DECL_OVERRIDE;
diff --git a/src/core/cookie_monster_delegate_qt.cpp b/src/core/cookie_monster_delegate_qt.cpp
index 4e52f562a..d2a3377a4 100644
--- a/src/core/cookie_monster_delegate_qt.cpp
+++ b/src/core/cookie_monster_delegate_qt.cpp
@@ -217,7 +217,7 @@ bool CookieMonsterDelegateQt::canSetCookie(const QUrl &firstPartyUrl, const QByt
return true;
}
-void CookieMonsterDelegateQt::OnCookieChanged(const net::CanonicalCookie& cookie, bool removed, ChangeCause cause)
+void CookieMonsterDelegateQt::OnCookieChanged(const net::CanonicalCookie& cookie, bool removed, net::CookieStore::ChangeCause cause)
{
if (!m_client)
return;
diff --git a/src/core/cookie_monster_delegate_qt.h b/src/core/cookie_monster_delegate_qt.h
index f47dc86df..009abdd68 100644
--- a/src/core/cookie_monster_delegate_qt.h
+++ b/src/core/cookie_monster_delegate_qt.h
@@ -83,7 +83,7 @@ public:
void setClient(QWebEngineCookieStore *client);
bool canSetCookie(const QUrl &firstPartyUrl, const QByteArray &cookieLine, const QUrl &url);
- void OnCookieChanged(const net::CanonicalCookie& cookie, bool removed, ChangeCause cause) override;
+ void OnCookieChanged(const net::CanonicalCookie& cookie, bool removed, net::CookieStore::ChangeCause cause) override;
private:
void GetAllCookiesOnIOThread(const net::CookieMonster::GetCookieListCallback& callback);
diff --git a/src/core/core_generator.pro b/src/core/core_generator.pro
index 6900468d9..9ea3f7246 100644
--- a/src/core/core_generator.pro
+++ b/src/core/core_generator.pro
@@ -31,6 +31,7 @@ DEFINES += QT_NO_KEYWORDS \
QT_USE_QSTRINGBUILDER \
$$forward_declaration_macro \
QTWEBENGINECORE_VERSION_STR=\"$$MODULE_VERSION\" \
+ QTWEBENGINEPROCESS_NAME=\"$$QTWEBENGINEPROCESS_NAME\" \
BUILDING_CHROMIUM
# Ensure that response files, generated by qtbase/mkspecs/features/moc.prf, are found by moc.
diff --git a/src/core/core_module.pro b/src/core/core_module.pro
index 584ef83ae..b02fb51f8 100644
--- a/src/core/core_module.pro
+++ b/src/core/core_module.pro
@@ -37,7 +37,9 @@ use?(gn){
linux: LIBS_PRIVATE += -Wl,--start-group $$NINJA_ARCHIVES -Wl,--end-group
else: LIBS_PRIVATE += $$NINJA_ARCHIVES
LIBS_PRIVATE += $$NINJA_LIB_DIRS $$NINJA_LIBS
- QMAKE_LFLAGS += $$NINJA_LFLAGS
+ # We need to use ObjC runtime to have categories selectors working.
+ macos: QMAKE_LFLAGS += -Wl,-ObjC
+# QMAKE_LFLAGS += $$NINJA_LFLAGS
POST_TARGETDEPS += $$NINJA_TARGETDEPS
}
diff --git a/src/core/delegated_frame_node.cpp b/src/core/delegated_frame_node.cpp
index 07b4bb2b6..03c76dd19 100644
--- a/src/core/delegated_frame_node.cpp
+++ b/src/core/delegated_frame_node.cpp
@@ -54,8 +54,9 @@
#include "type_conversion.h"
#include "yuv_video_node.h"
-#include "base/message_loop/message_loop.h"
#include "base/bind.h"
+#include "base/message_loop/message_loop.h"
+#include "base/threading/thread_task_runner_handle.h"
#include "cc/output/delegated_frame_data.h"
#include "cc/quads/debug_border_draw_quad.h"
#include "cc/quads/draw_quad.h"
@@ -65,6 +66,8 @@
#include "cc/quads/texture_draw_quad.h"
#include "cc/quads/tile_draw_quad.h"
#include "cc/quads/yuv_video_draw_quad.h"
+#include "cc/resources/returned_resource.h"
+#include "cc/resources/transferable_resource.h"
#include "content/common/host_shared_bitmap_manager.h"
#include "gpu/command_buffer/service/mailbox_manager.h"
#include "ui/gl/gl_context.h"
@@ -622,7 +625,7 @@ void MailboxTexture::setTarget(GLenum target)
void MailboxTexture::fetchTexture(gpu::gles2::MailboxManager *mailboxManager)
{
- gpu::gles2::Texture *tex = ConsumeTexture(mailboxManager, m_target, m_mailboxHolder.mailbox);
+ gpu::gles2::TextureBase *tex = ConsumeTexture(mailboxManager, m_target, m_mailboxHolder.mailbox);
// The texture might already have been deleted (e.g. when navigating away from a page).
if (tex) {
@@ -1125,7 +1128,7 @@ void DelegatedFrameNode::fetchAndSyncMailboxes(QList<MailboxTexture *> &mailboxe
continue;
}
}
- gpuMessageLoop->PostTask(FROM_HERE, base::Bind(&DelegatedFrameNode::pullTexture, this, mailboxTexture));
+ gpuMessageLoop->task_runner()->PostTask(FROM_HERE, base::Bind(&DelegatedFrameNode::pullTexture, this, mailboxTexture));
}
m_mailboxesFetchedWaitCond.wait(&m_mutex);
@@ -1217,7 +1220,7 @@ void DelegatedFrameNode::pullTexture(DelegatedFrameNode *frameNode, MailboxTextu
delete fence;
}
if (--frameNode->m_numPendingSyncPoints == 0)
- base::MessageLoop::current()->PostTask(FROM_HERE, base::Bind(&DelegatedFrameNode::fenceAndUnlockQt, frameNode));
+ base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE, base::Bind(&DelegatedFrameNode::fenceAndUnlockQt, frameNode));
#else
Q_UNUSED(frameNode)
Q_UNUSED(texture)
diff --git a/src/core/gl_surface_qt.cpp b/src/core/gl_surface_qt.cpp
index e8f77e9ed..30a915598 100644
--- a/src/core/gl_surface_qt.cpp
+++ b/src/core/gl_surface_qt.cpp
@@ -174,6 +174,26 @@ bool GLSurfaceGLX::IsCreateContextSupported()
return ExtensionsContain(g_extensions, "GLX_ARB_create_context");
}
+bool GLSurfaceGLX::IsCreateContextRobustnessSupported()
+{
+ return false; // ExtensionsContain(g_extensions, "GLX_ARB_create_context_robustness");
+}
+
+bool GLSurfaceGLX::IsCreateContextProfileSupported()
+{
+ return false; // ExtensionsContain(g_extensions, "GLX_ARB_create_context_profile");
+}
+
+bool GLSurfaceGLX::IsCreateContextES2ProfileSupported()
+{
+ return ExtensionsContain(g_extensions, "GLX_ARB_create_context_es2_profile");
+}
+
+bool GLSurfaceGLX::IsOMLSyncControlSupported()
+{
+ return false; // ExtensionsContain(g_extensions, "GLX_OML_sync_control");
+}
+
bool GLSurfaceGLX::HasGLXExtension(const char *name)
{
return ExtensionsContain(g_extensions, name);
@@ -189,11 +209,6 @@ const char* GLSurfaceGLX::GetGLXExtensions()
return g_extensions;
}
-bool GLSurfaceGLX::IsCreateContextRobustnessSupported()
-{
- return false;
-}
-
bool GLSurfaceQtGLX::InitializeOneOff()
{
static bool initialized = false;
diff --git a/src/core/media_capture_devices_dispatcher.cpp b/src/core/media_capture_devices_dispatcher.cpp
index f06f0150f..031171bcc 100644
--- a/src/core/media_capture_devices_dispatcher.cpp
+++ b/src/core/media_capture_devices_dispatcher.cpp
@@ -50,7 +50,7 @@
#include "web_engine_settings.h"
#include "base/strings/utf_string_conversions.h"
-#include "chrome/browser/media/desktop_streams_registry.h"
+#include "chrome/browser/media/webrtc/desktop_streams_registry.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/desktop_media_id.h"
#include "content/public/browser/media_capture_devices.h"
diff --git a/src/core/ozone_platform_eglfs.cpp b/src/core/ozone_platform_eglfs.cpp
index 0b560da6c..e6e1ab5e2 100644
--- a/src/core/ozone_platform_eglfs.cpp
+++ b/src/core/ozone_platform_eglfs.cpp
@@ -52,7 +52,6 @@
#include "ui/ozone/common/stub_overlay_manager.h"
#include "ui/ozone/public/ozone_platform.h"
#include "ui/ozone/public/cursor_factory_ozone.h"
-#include "ui/ozone/public/gpu_platform_support.h"
#include "ui/ozone/public/gpu_platform_support_host.h"
#include "ui/platform_window/platform_window.h"
#include "ui/platform_window/platform_window_delegate.h"
@@ -140,10 +139,6 @@ ui::CursorFactoryOzone* OzonePlatformEglfs::GetCursorFactoryOzone() {
return cursor_factory_ozone_.get();
}
-GpuPlatformSupport* OzonePlatformEglfs::GetGpuPlatformSupport() {
- return gpu_platform_support_.get();
-}
-
GpuPlatformSupportHost* OzonePlatformEglfs::GetGpuPlatformSupportHost() {
return gpu_platform_support_host_.get();
}
@@ -186,13 +181,12 @@ void OzonePlatformEglfs::InitializeUI() {
device_manager_ = CreateDeviceManager();
cursor_factory_ozone_.reset(new CursorFactoryOzone());
event_factory_ozone_.reset(new EventFactoryEvdev(NULL, device_manager_.get(), NULL));
- gpu_platform_support_host_.reset(CreateStubGpuPlatformSupportHost());
+ gpu_platform_support_host_.reset(ui::CreateStubGpuPlatformSupportHost());
input_controller_ = CreateStubInputController();
}
void OzonePlatformEglfs::InitializeGPU() {
surface_factory_ozone_.reset(new QtWebEngineCore::SurfaceFactoryQt());
- gpu_platform_support_.reset(CreateStubGpuPlatformSupport());
}
} // namespace ui
diff --git a/src/core/ozone_platform_eglfs.h b/src/core/ozone_platform_eglfs.h
index cdc2bd1ce..c319b1e5c 100644
--- a/src/core/ozone_platform_eglfs.h
+++ b/src/core/ozone_platform_eglfs.h
@@ -59,7 +59,6 @@ class OzonePlatformEglfs : public OzonePlatform {
virtual ui::SurfaceFactoryOzone* GetSurfaceFactoryOzone() override;
virtual ui::CursorFactoryOzone* GetCursorFactoryOzone() override;
- virtual GpuPlatformSupport* GetGpuPlatformSupport() override;
virtual GpuPlatformSupportHost* GetGpuPlatformSupportHost() override;
virtual std::unique_ptr<PlatformWindow> CreatePlatformWindow(
PlatformWindowDelegate* delegate,
@@ -78,7 +77,6 @@ class OzonePlatformEglfs : public OzonePlatform {
std::unique_ptr<CursorFactoryOzone> cursor_factory_ozone_;
std::unique_ptr<EventFactoryEvdev> event_factory_ozone_;
- std::unique_ptr<GpuPlatformSupport> gpu_platform_support_;
std::unique_ptr<GpuPlatformSupportHost> gpu_platform_support_host_;
std::unique_ptr<InputController> input_controller_;
std::unique_ptr<OverlayManagerOzone> overlay_manager_;
diff --git a/src/core/permission_manager_qt.cpp b/src/core/permission_manager_qt.cpp
index f76f100e6..970a608a3 100644
--- a/src/core/permission_manager_qt.cpp
+++ b/src/core/permission_manager_qt.cpp
@@ -59,6 +59,7 @@ BrowserContextAdapter::PermissionType toQt(content::PermissionType type)
return BrowserContextAdapter::AudioCapturePermission;
case content::PermissionType::VIDEO_CAPTURE:
return BrowserContextAdapter::VideoCapturePermission;
+ case content::PermissionType::FLASH:
case content::PermissionType::NOTIFICATIONS:
case content::PermissionType::MIDI_SYSEX:
case content::PermissionType::PUSH_MESSAGING:
@@ -110,6 +111,7 @@ bool PermissionManagerQt::checkPermission(const QUrl &origin, BrowserContextAdap
int PermissionManagerQt::RequestPermission(content::PermissionType permission,
content::RenderFrameHost *frameHost,
const GURL& requesting_origin,
+ bool /*user_gesture*/,
const base::Callback<void(blink::mojom::PermissionStatus)>& callback)
{
int request_id = ++m_requestIdCount;
@@ -139,6 +141,7 @@ int PermissionManagerQt::RequestPermission(content::PermissionType permission,
int PermissionManagerQt::RequestPermissions(const std::vector<content::PermissionType>& permissions,
content::RenderFrameHost* frameHost,
const GURL& requesting_origin,
+ bool /*user_gesture*/,
const base::Callback<void(const std::vector<blink::mojom::PermissionStatus>&)>& callback)
{
NOTIMPLEMENTED() << "RequestPermissions has not been implemented in QtWebEngine";
diff --git a/src/core/permission_manager_qt.h b/src/core/permission_manager_qt.h
index e4392b01c..1cbb41b5e 100644
--- a/src/core/permission_manager_qt.h
+++ b/src/core/permission_manager_qt.h
@@ -64,6 +64,7 @@ public:
content::PermissionType permission,
content::RenderFrameHost* render_frame_host,
const GURL& requesting_origin,
+ bool user_gesture,
const base::Callback<void(blink::mojom::PermissionStatus)>& callback) override;
void CancelPermissionRequest(int request_id) override;
@@ -82,6 +83,7 @@ public:
const std::vector<content::PermissionType>& permission,
content::RenderFrameHost* render_frame_host,
const GURL& requesting_origin,
+ bool user_gesture,
const base::Callback<void(
const std::vector<blink::mojom::PermissionStatus>&)>& callback) override;
diff --git a/src/core/print_view_manager_base_qt.cpp b/src/core/print_view_manager_base_qt.cpp
index 8c52e1b18..490a126e4 100644
--- a/src/core/print_view_manager_base_qt.cpp
+++ b/src/core/print_view_manager_base_qt.cpp
@@ -44,6 +44,8 @@
#include "type_conversion.h"
#include "web_engine_context.h"
+#include "base/message_loop/message_loop.h"
+#include "base/run_loop.h"
#include "base/single_thread_task_runner.h"
#include "base/timer/timer.h"
#include "base/values.h"
@@ -483,9 +485,11 @@ bool PrintViewManagerBaseQt::RunInnerMessageLoop() {
// Need to enable recursive task.
{
- base::MessageLoop::ScopedNestableTaskAllower allow(
- base::MessageLoop::current());
- base::MessageLoop::current()->Run();
+ base::RunLoop runLoop;
+ m_quitClosure = runLoop.QuitClosure();
+ base::MessageLoop* loop = base::MessageLoop::current();
+ base::MessageLoop::ScopedNestableTaskAllower allowNested(loop);
+ runLoop.Run();
}
bool success = true;
diff --git a/src/core/print_view_manager_base_qt.h b/src/core/print_view_manager_base_qt.h
index a8b4b5fc8..27dda5ef6 100644
--- a/src/core/print_view_manager_base_qt.h
+++ b/src/core/print_view_manager_base_qt.h
@@ -135,6 +135,8 @@ protected:
private:
content::NotificationRegistrar m_registrar;
scoped_refptr<printing::PrintJob> m_printJob;
+ // Closure for quitting nested message loop.
+ base::Closure m_quitClosure;
bool m_isInsideInnerMessageLoop;
bool m_isExpectingFirstPage;
diff --git a/src/core/printing_message_filter_qt.cpp b/src/core/printing_message_filter_qt.cpp
index a84ec491f..49940d7ee 100644
--- a/src/core/printing_message_filter_qt.cpp
+++ b/src/core/printing_message_filter_qt.cpp
@@ -111,6 +111,7 @@ void PrintingMessageFilterQt::OnGetDefaultPrintSettings(IPC::Message* reply_msg)
false,
printing::DEFAULT_MARGINS,
false,
+ false,
base::Bind(&PrintingMessageFilterQt::OnGetDefaultPrintSettingsReply,
this,
printer_query,
@@ -156,6 +157,7 @@ void PrintingMessageFilterQt::OnScriptedPrint(
params.has_selection,
params.margin_type,
params.is_scripted,
+ params.is_modifiable,
base::Bind(&PrintingMessageFilterQt::OnScriptedPrintReply,
this,
printer_query,
diff --git a/src/core/qtwebengine.gni b/src/core/qtwebengine.gni
index 4e561e7a9..8fa018038 100644
--- a/src/core/qtwebengine.gni
+++ b/src/core/qtwebengine.gni
@@ -1,11 +1,9 @@
+import("//third_party/widevine/cdm/widevine.gni")
+
chromium_version = exec_script("//build/util/version.py", [ "-f", rebase_path("//chrome/VERSION"),
"-t", "@MAJOR@.@MINOR@.@BUILD@.@PATCH@"],
"list lines")
-declare_args() {
- use_qt = true
-}
-
include_dirs = [
"//skia/config",
"//third_party/skia/include/core"
@@ -13,20 +11,17 @@ include_dirs = [
deps = [
"//base",
- "//components/cdm/renderer",
- "//components/devtools_http_handler",
"//components/error_page/common",
"//components/keyed_service/content",
"//components/visitedlink/browser",
"//components/visitedlink/renderer",
"//components/web_cache/browser",
- "//components/web_cache/public/interfaces",
"//components/web_cache/renderer",
"//content/public/app:browser",
"//content/public/browser",
"//content/public/common",
+ "//content/public/renderer",
"//net:net_browser_services",
- "//services/shell/public/cpp",
"//skia",
"//third_party/WebKit/public:blink",
"//third_party/widevine/cdm:version_h",
@@ -40,8 +35,10 @@ if (enable_widevine) {
deps += [ "//components/cdm/renderer"]
}
-# fixme:
+if (is_linux && !is_desktop_linux) {
+ deps += [ "//ui/events/ozone:events_ozone_evdev"]
+}
+
defines = [
- "QTWEBENGINEPROCESS_NAME=\"QtWebEngineProcess\"",
"CHROMIUM_VERSION=\"" + chromium_version[0] + "\""
]
diff --git a/src/core/qtwebengine_resources.gni b/src/core/qtwebengine_resources.gni
index e3cd42169..a7ffb40f3 100644
--- a/src/core/qtwebengine_resources.gni
+++ b/src/core/qtwebengine_resources.gni
@@ -80,7 +80,7 @@ repack("qtwebengine_repack_resources_devtools") {
chrome_repack_locales("qtwebengine_repack_locales_pack") {
input_locales = locales
- output_dir_name = "qtwebengine_locales"
+ output_dir = "$root_out_dir/qtwebengine_locales"
output_locales = locales
}
diff --git a/src/core/qtwebengine_sources.gni b/src/core/qtwebengine_sources.gni
index 2d3503e98..d58e92a55 100644
--- a/src/core/qtwebengine_sources.gni
+++ b/src/core/qtwebengine_sources.gni
@@ -1,3 +1,69 @@
+import("//build/config/features.gni")
+
+source_set("qtwebengine_spellcheck_sources") {
+ sources = [
+ "//chrome/browser/spellchecker/spellcheck_custom_dictionary.cc",
+ "//chrome/browser/spellchecker/spellcheck_custom_dictionary.h",
+ "//chrome/browser/spellchecker/spellcheck_factory.cc",
+ "//chrome/browser/spellchecker/spellcheck_factory.h",
+ "//chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc",
+ "//chrome/browser/spellchecker/spellcheck_hunspell_dictionary.h",
+ "//chrome/browser/spellchecker/spellcheck_message_filter.cc",
+ "//chrome/browser/spellchecker/spellcheck_message_filter.h",
+ "//chrome/browser/spellchecker/spellcheck_service.cc",
+ "//chrome/browser/spellchecker/spellcheck_service.h",
+ "//chrome/common/common_message_generator.cc",
+ "//components/spellcheck/browser/feedback.cc",
+ "//components/spellcheck/browser/feedback.h",
+ "//components/spellcheck/browser/feedback_sender.cc",
+ "//components/spellcheck/browser/feedback_sender.h",
+ "//components/spellcheck/browser/misspelling.cc",
+ "//components/spellcheck/browser/misspelling.h",
+ "//components/spellcheck/browser/spellcheck_action.cc",
+ "//components/spellcheck/browser/spellcheck_action.h",
+ "//components/spellcheck/browser/spellcheck_host_metrics.cc",
+ "//components/spellcheck/browser/spellcheck_host_metrics.h",
+ "//components/spellcheck/browser/spellcheck_platform_mac.mm",
+ "//components/spellcheck/browser/spelling_service_client.cc",
+ "//components/spellcheck/browser/spelling_service_client.h",
+ "//components/spellcheck/browser/word_trimmer.cc",
+ "//components/spellcheck/browser/word_trimmer.h",
+ "//components/spellcheck/browser/pref_names.cc",
+ "//components/spellcheck/browser/pref_names.h",
+ "//components/spellcheck/common/spellcheck_bdict_language.h",
+ "//components/spellcheck/common/spellcheck_common.cc",
+ "//components/spellcheck/common/spellcheck_common.h",
+ "//components/spellcheck/common/spellcheck_marker.h",
+ "//components/spellcheck/common/spellcheck_messages.h",
+ "//components/spellcheck/common/spellcheck_result.h",
+ "//components/spellcheck/common/spellcheck_switches.cc",
+ "//components/spellcheck/common/spellcheck_switches.h",
+ "//components/spellcheck/renderer/custom_dictionary_engine.cc",
+ "//components/spellcheck/renderer/custom_dictionary_engine.h",
+ "//components/spellcheck/renderer/hunspell_engine.cc",
+ "//components/spellcheck/renderer/hunspell_engine.h",
+ "//components/spellcheck/renderer/spellcheck.cc",
+ "//components/spellcheck/renderer/spellcheck.h",
+ "//components/spellcheck/renderer/spellcheck_language.cc",
+ "//components/spellcheck/renderer/spellcheck_language.h",
+ "//components/spellcheck/renderer/spellcheck_provider.cc",
+ "//components/spellcheck/renderer/spellcheck_provider.h",
+ "//components/spellcheck/renderer/spellcheck_worditerator.cc",
+ "//components/spellcheck/renderer/spellcheck_worditerator.h",
+ "//components/spellcheck/renderer/spelling_engine.h",
+ ]
+ deps = [
+ "//third_party/WebKit/public:blink",
+ "//third_party/hunspell",
+ ]
+ if (is_mac && use_browser_spellchecker) {
+ sources += [
+ "//chrome/browser/spellchecker/spellcheck_message_filter_platform.h",
+ "//chrome/browser/spellchecker/spellcheck_message_filter_platform_mac.cc",
+ ]
+ }
+}
+
source_set("qtwebengine_sources") {
include_dirs = [
"//skia/config",
@@ -5,9 +71,9 @@ source_set("qtwebengine_sources") {
]
deps = []
sources = [
- "//chrome/browser/media/desktop_media_list.h",
- "//chrome/browser/media/desktop_streams_registry.cc",
- "//chrome/browser/media/desktop_streams_registry.h",
+ "//chrome/browser/media/webrtc/desktop_media_list.h",
+ "//chrome/browser/media/webrtc/desktop_streams_registry.cc",
+ "//chrome/browser/media/webrtc/desktop_streams_registry.h",
"//chrome/common/chrome_switches.cc",
"//chrome/common/chrome_switches.h",
"//components/prefs/testing_pref_store.cc",
@@ -18,6 +84,17 @@ source_set("qtwebengine_sources") {
"//extensions/common/url_pattern.h",
]
+ if (enable_spellcheck) {
+ sources += [
+ "//chrome/common/pref_names.cc",
+ "//chrome/common/pref_names.h",
+ ]
+ deps += [
+ ":qtwebengine_spellcheck_sources",
+ "//chrome/tools/convert_dict",
+ ]
+ }
+
if (enable_plugins) {
sources += [
"//chrome/browser/renderer_host/pepper/pepper_flash_clipboard_message_filter.cc",
@@ -34,73 +111,6 @@ source_set("qtwebengine_sources") {
]
}
- if (enable_spellcheck) {
- sources += [
- "//chrome/browser/spellchecker/feedback.cc",
- "//chrome/browser/spellchecker/feedback.h",
- "//chrome/browser/spellchecker/feedback_sender.cc",
- "//chrome/browser/spellchecker/feedback_sender.h",
- "//chrome/browser/spellchecker/misspelling.cc",
- "//chrome/browser/spellchecker/misspelling.h",
- "//chrome/browser/spellchecker/spellcheck_action.cc",
- "//chrome/browser/spellchecker/spellcheck_action.h",
- "//chrome/browser/spellchecker/spellcheck_custom_dictionary.cc",
- "//chrome/browser/spellchecker/spellcheck_custom_dictionary.h",
- "//chrome/browser/spellchecker/spellcheck_factory.cc",
- "//chrome/browser/spellchecker/spellcheck_factory.h",
- "//chrome/browser/spellchecker/spellcheck_host_metrics.cc",
- "//chrome/browser/spellchecker/spellcheck_host_metrics.h",
- "//chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc",
- "//chrome/browser/spellchecker/spellcheck_hunspell_dictionary.h",
- "//chrome/browser/spellchecker/spellcheck_message_filter.cc",
- "//chrome/browser/spellchecker/spellcheck_message_filter.h",
- "//chrome/browser/spellchecker/spellcheck_platform_mac.mm",
- "//chrome/browser/spellchecker/spellcheck_service.cc",
- "//chrome/browser/spellchecker/spellcheck_service.h",
- "//chrome/browser/spellchecker/spelling_service_client.cc",
- "//chrome/browser/spellchecker/spelling_service_client.h",
- "//chrome/browser/spellchecker/word_trimmer.cc",
- "//chrome/browser/spellchecker/word_trimmer.h",
- "//chrome/common/common_message_generator.cc",
- "//chrome/common/pref_names.cc",
- "//chrome/common/pref_names.h",
- "//chrome/common/spellcheck_bdict_language.h",
- "//chrome/common/spellcheck_common.cc",
- "//chrome/common/spellcheck_common.h",
- "//chrome/common/spellcheck_marker.h",
- "//chrome/common/spellcheck_messages.h",
- "//chrome/common/spellcheck_result.h",
- "//chrome/renderer/spellchecker/custom_dictionary_engine.cc",
- "//chrome/renderer/spellchecker/custom_dictionary_engine.h",
- "//chrome/renderer/spellchecker/hunspell_engine.cc",
- "//chrome/renderer/spellchecker/hunspell_engine.h",
- "//chrome/renderer/spellchecker/spellcheck.cc",
- "//chrome/renderer/spellchecker/spellcheck.h",
- "//chrome/renderer/spellchecker/spellcheck_language.cc",
- "//chrome/renderer/spellchecker/spellcheck_language.h",
- "//chrome/renderer/spellchecker/spellcheck_provider.cc",
- "//chrome/renderer/spellchecker/spellcheck_provider.h",
- "//chrome/renderer/spellchecker/spellcheck_worditerator.cc",
- "//chrome/renderer/spellchecker/spellcheck_worditerator.h",
- "//chrome/renderer/spellchecker/spelling_engine.h",
- ]
- include_dirs += [
- "//third_party/WebKit"
- ]
- deps += [
- "//third_party/icu",
- "//third_party/hunspell",
- "//chrome/tools/convert_dict"
- ]
-
- if (is_mac && use_browser_spellchecker) {
- sources += [
- "//chrome/browser/spellchecker/spellcheck_message_filter_platform.h",
- "//chrome/browser/spellchecker/spellcheck_message_filter_platform_mac.cc",
- ]
- }
- }
-
if (enable_basic_printing || enable_print_preview) {
sources += [
"//chrome/browser/printing/printer_query.cc",
diff --git a/src/core/render_widget_host_view_qt.cpp b/src/core/render_widget_host_view_qt.cpp
index 280a0475d..147fdb5bb 100644
--- a/src/core/render_widget_host_view_qt.cpp
+++ b/src/core/render_widget_host_view_qt.cpp
@@ -694,7 +694,7 @@ void RenderWidgetHostViewQt::OnSwapCompositorFrame(uint32_t output_surface_id, c
m_adapterClient->updateContentsSize(toQt(m_lastContentsSize));
}
-void RenderWidgetHostViewQt::GetScreenInfo(blink::WebScreenInfo* results)
+void RenderWidgetHostViewQt::GetScreenInfo(content::ScreenInfo* results)
{
QWindow* window = m_delegate->window();
if (!window)
@@ -702,7 +702,7 @@ void RenderWidgetHostViewQt::GetScreenInfo(blink::WebScreenInfo* results)
GetScreenInfoFromNativeWindow(window, results);
// Support experimental.viewport.devicePixelRatio
- results->deviceScaleFactor *= dpiScale();
+ results->device_scale_factor *= dpiScale();
}
gfx::Rect RenderWidgetHostViewQt::GetBoundsInRootWindow()
diff --git a/src/core/render_widget_host_view_qt.h b/src/core/render_widget_host_view_qt.h
index 2f5d97b67..8bc30f375 100644
--- a/src/core/render_widget_host_view_qt.h
+++ b/src/core/render_widget_host_view_qt.h
@@ -152,7 +152,7 @@ public:
virtual bool HasAcceleratedSurface(const gfx::Size&) Q_DECL_OVERRIDE;
virtual void OnSwapCompositorFrame(uint32_t output_surface_id, cc::CompositorFrame frame) Q_DECL_OVERRIDE;
- virtual void GetScreenInfo(blink::WebScreenInfo* results) Q_DECL_OVERRIDE;
+ void GetScreenInfo(content::ScreenInfo* results);
virtual gfx::Rect GetBoundsInRootWindow() Q_DECL_OVERRIDE;
virtual void ProcessAckedTouchEvent(const content::TouchEventWithLatencyInfo &touch, content::InputEventAckState ack_result) Q_DECL_OVERRIDE;
virtual void ClearCompositorFrame() Q_DECL_OVERRIDE;
diff --git a/src/core/renderer/content_renderer_client_qt.cpp b/src/core/renderer/content_renderer_client_qt.cpp
index 69f5bfefe..ee6ffe420 100644
--- a/src/core/renderer/content_renderer_client_qt.cpp
+++ b/src/core/renderer/content_renderer_client_qt.cpp
@@ -44,8 +44,8 @@
#include "base/strings/string_split.h"
#include "base/strings/utf_string_conversions.h"
#if defined(ENABLE_SPELLCHECK)
-#include "chrome/renderer/spellchecker/spellcheck.h"
-#include "chrome/renderer/spellchecker/spellcheck_provider.h"
+#include "components/spellcheck/renderer/spellcheck.h"
+#include "components/spellcheck/renderer/spellcheck_provider.h"
#endif
#include "components/cdm/renderer/widevine_key_system_properties.h"
#include "components/error_page/common/error_page_params.h"
@@ -75,6 +75,7 @@
#include "renderer/render_frame_observer_qt.h"
#include "renderer/render_view_observer_qt.h"
#include "renderer/user_resource_controller.h"
+#include "services/shell/public/cpp/interface_registry.h"
#include "components/grit/components_resources.h"
@@ -98,7 +99,8 @@ void ContentRendererClientQt::RenderThreadStarted()
content::RenderThread *renderThread = content::RenderThread::Get();
m_visitedLinkSlave.reset(new visitedlink::VisitedLinkSlave);
m_webCacheImpl.reset(new web_cache::WebCacheImpl());
- renderThread->AddObserver(m_visitedLinkSlave.data());
+ renderThread->GetInterfaceRegistry()->AddInterface(
+ m_visitedLinkSlave->GetBindCallback());
renderThread->AddObserver(UserResourceController::instance());
#if defined(ENABLE_SPELLCHECK)
diff --git a/src/core/renderer/user_resource_controller.cpp b/src/core/renderer/user_resource_controller.cpp
index 8c603b805..c89ad69ad 100644
--- a/src/core/renderer/user_resource_controller.cpp
+++ b/src/core/renderer/user_resource_controller.cpp
@@ -39,6 +39,7 @@
#include "user_resource_controller.h"
+#include "base/pending_task.h"
#include "base/strings/pattern.h"
#include "content/public/renderer/render_frame.h"
#include "content/public/renderer/render_view.h"
@@ -166,16 +167,16 @@ UserResourceController::RenderViewObserverHelper::RenderViewObserverHelper(conte
void UserResourceController::RenderViewObserverHelper::DidFinishDocumentLoad(blink::WebLocalFrame *frame)
{
m_pendingFrames.insert(frame);
- base::MessageLoop::current()->PostDelayedTask(FROM_HERE, base::Bind(&UserResourceController::RenderViewObserverHelper::runScripts,
- base::Unretained(this), UserScriptData::AfterLoad, frame),
- base::TimeDelta::FromMilliseconds(afterLoadTimeout));
+ base::ThreadTaskRunnerHandle::Get()->PostDelayedTask(FROM_HERE, base::Bind(&UserResourceController::RenderViewObserverHelper::runScripts,
+ base::Unretained(this), UserScriptData::AfterLoad, frame),
+ base::TimeDelta::FromMilliseconds(afterLoadTimeout));
}
void UserResourceController::RenderViewObserverHelper::DidFinishLoad(blink::WebLocalFrame *frame)
{
// DidFinishDocumentLoad always comes before this, so frame has already been marked as pending.
- base::MessageLoop::current()->PostTask(FROM_HERE, base::Bind(&UserResourceController::RenderViewObserverHelper::runScripts,
- base::Unretained(this), UserScriptData::AfterLoad, frame));
+ base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE, base::Bind(&UserResourceController::RenderViewObserverHelper::runScripts,
+ base::Unretained(this), UserScriptData::AfterLoad, frame));
}
void UserResourceController::RenderViewObserverHelper::DidStartProvisionalLoad(blink::WebLocalFrame *frame)
diff --git a/src/core/renderer_host/pepper/pepper_isolated_file_system_message_filter.cpp b/src/core/renderer_host/pepper/pepper_isolated_file_system_message_filter.cpp
index 7e8b2fdda..8ebc74486 100644
--- a/src/core/renderer_host/pepper/pepper_isolated_file_system_message_filter.cpp
+++ b/src/core/renderer_host/pepper/pepper_isolated_file_system_message_filter.cpp
@@ -83,7 +83,7 @@ scoped_refptr<base::TaskRunner> PepperIsolatedFileSystemMessageFilter::OverrideT
{
// In order to reach ExtensionSystem, we need to get ProfileManager first.
// ProfileManager lives in UI thread, so we need to do this in UI thread.
- return content::BrowserThread::GetMessageLoopProxyForThread(content::BrowserThread::UI);
+ return content::BrowserThread::GetTaskRunnerForThread(content::BrowserThread::UI);
}
int32_t PepperIsolatedFileSystemMessageFilter::OnResourceMessageReceived(const IPC::Message& msg, ppapi::host::HostMessageContext *context)
diff --git a/src/core/ssl_host_state_delegate_qt.cpp b/src/core/ssl_host_state_delegate_qt.cpp
index 506172aaa..72aec2bff 100644
--- a/src/core/ssl_host_state_delegate_qt.cpp
+++ b/src/core/ssl_host_state_delegate_qt.cpp
@@ -34,6 +34,8 @@
**
****************************************************************************/
+#include "base/callback.h"
+
#include "ssl_host_state_delegate_qt.h"
#include "type_conversion.h"
@@ -86,9 +88,21 @@ void SSLHostStateDelegateQt::AllowCert(const std::string &host, const net::X509C
}
// Clear all allow preferences.
-void SSLHostStateDelegateQt::Clear()
+void SSLHostStateDelegateQt::Clear(const base::Callback<bool(const std::string&)>& host_filter)
{
- m_certPolicyforHost.clear();
+ if (host_filter.is_null()) {
+ m_certPolicyforHost.clear();
+ return;
+ }
+
+ for (auto it = m_certPolicyforHost.begin(); it != m_certPolicyforHost.end();) {
+ auto next_it = std::next(it);
+
+ if (host_filter.Run(it->first))
+ m_certPolicyforHost.erase(it);
+
+ it = next_it;
+ }
}
// Queries whether |cert| is allowed for |host| and |error|. Returns true in
@@ -102,12 +116,12 @@ content::SSLHostStateDelegate::CertJudgment SSLHostStateDelegateQt::QueryPolicy(
}
// Records that a host has run insecure content.
-void SSLHostStateDelegateQt::HostRanInsecureContent(const std::string &host, int pid)
+void SSLHostStateDelegateQt::HostRanInsecureContent(const std::string &host, int pid, InsecureContentType content_type)
{
}
// Returns whether the specified host ran insecure content.
-bool SSLHostStateDelegateQt::DidHostRunInsecureContent(const std::string &host, int pid) const
+bool SSLHostStateDelegateQt::DidHostRunInsecureContent(const std::string &host, int pid, InsecureContentType content_type) const
{
return false;
}
diff --git a/src/core/ssl_host_state_delegate_qt.h b/src/core/ssl_host_state_delegate_qt.h
index 64a430094..7cc63b339 100644
--- a/src/core/ssl_host_state_delegate_qt.h
+++ b/src/core/ssl_host_state_delegate_qt.h
@@ -62,11 +62,11 @@ public:
// content::SSLHostStateDelegate implementation:
virtual void AllowCert(const std::string &, const net::X509Certificate &cert, net::CertStatus error) override;
- virtual void Clear() override;
+ virtual void Clear(const base::Callback<bool(const std::string&)>& host_filter) override;
virtual CertJudgment QueryPolicy(const std::string &host, const net::X509Certificate &cert,
net::CertStatus error,bool *expired_previous_decision) override;
- virtual void HostRanInsecureContent(const std::string &host, int pid) override;
- virtual bool DidHostRunInsecureContent(const std::string &host, int pid) const override;
+ virtual void HostRanInsecureContent(const std::string& host, int child_id, InsecureContentType content_type) override;
+ virtual bool DidHostRunInsecureContent(const std::string& host, int child_id, InsecureContentType content_type) const override;
virtual void RevokeUserAllowExceptions(const std::string &host) override;
virtual bool HasAllowException(const std::string &host) const override;
diff --git a/src/core/surface_factory_qt.cpp b/src/core/surface_factory_qt.cpp
index 97a304730..36c05ec5d 100644
--- a/src/core/surface_factory_qt.cpp
+++ b/src/core/surface_factory_qt.cpp
@@ -71,7 +71,7 @@ base::NativeLibrary LoadLibrary(const base::FilePath& filename) {
return library;
}
-bool SurfaceFactoryQt::LoadEGLGLES2Bindings(AddGLLibraryCallback add_gl_library, SetGLGetProcAddressProcCallback set_gl_get_proc_address)
+bool SurfaceFactoryQt::LoadEGLGLES2Bindings()
{
base::FilePath libEGLPath = QtWebEngineCore::toFilePath(QT_LIBDIR_EGL);
libEGLPath = libEGLPath.Append("libEGL.so.1");
diff --git a/src/core/surface_factory_qt.h b/src/core/surface_factory_qt.h
index d65680a4a..ad6018946 100644
--- a/src/core/surface_factory_qt.h
+++ b/src/core/surface_factory_qt.h
@@ -51,7 +51,7 @@ namespace QtWebEngineCore {
class SurfaceFactoryQt
: public ui::SurfaceFactoryOzone
{
- virtual bool LoadEGLGLES2Bindings(AddGLLibraryCallback add_gl_library, SetGLGetProcAddressProcCallback set_gl_get_proc_address) Q_DECL_OVERRIDE;
+ virtual bool LoadEGLGLES2Bindings() Q_DECL_OVERRIDE;
virtual intptr_t GetNativeDisplay() Q_DECL_OVERRIDE;
};
diff --git a/src/core/url_request_context_getter_qt.cpp b/src/core/url_request_context_getter_qt.cpp
index bf4661102..cabf44ac6 100644
--- a/src/core/url_request_context_getter_qt.cpp
+++ b/src/core/url_request_context_getter_qt.cpp
@@ -173,8 +173,8 @@ void URLRequestContextGetterQt::updateStorageSettings()
m_proxyConfigService =
new ProxyConfigServiceQt(
net::ProxyService::CreateSystemProxyConfigService(
- content::BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO),
- content::BrowserThread::GetMessageLoopProxyForThread(BrowserThread::FILE)
+ content::BrowserThread::GetTaskRunnerForThread(BrowserThread::IO),
+ content::BrowserThread::GetTaskRunnerForThread(BrowserThread::FILE)
));
if (m_contextInitialized)
content::BrowserThread::PostTask(content::BrowserThread::IO, FROM_HERE,
@@ -470,7 +470,7 @@ void URLRequestContextGetterQt::generateHttpCache()
net::CACHE_BACKEND_DEFAULT,
base::FilePath(),
m_httpCacheMaxSize,
- BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE)
+ BrowserThread::GetTaskRunnerForThread(BrowserThread::CACHE)
);
break;
case BrowserContextAdapter::DiskHttpCache:
@@ -480,7 +480,7 @@ void URLRequestContextGetterQt::generateHttpCache()
net::CACHE_BACKEND_DEFAULT,
toFilePath(m_httpCachePath),
m_httpCacheMaxSize,
- BrowserThread::GetMessageLoopProxyForThread(BrowserThread::CACHE)
+ BrowserThread::GetTaskRunnerForThread(BrowserThread::CACHE)
);
break;
case BrowserContextAdapter::NoCache:
@@ -593,7 +593,7 @@ void URLRequestContextGetterQt::regenerateJobFactory()
scoped_refptr<base::SingleThreadTaskRunner> URLRequestContextGetterQt::GetNetworkTaskRunner() const
{
- return content::BrowserThread::GetMessageLoopProxyForThread(content::BrowserThread::IO);
+ return content::BrowserThread::GetTaskRunnerForThread(content::BrowserThread::IO);
}
} // namespace QtWebEngineCore
diff --git a/src/core/url_request_qrc_job_qt.cpp b/src/core/url_request_qrc_job_qt.cpp
index 97460f0b7..b4e960921 100644
--- a/src/core/url_request_qrc_job_qt.cpp
+++ b/src/core/url_request_qrc_job_qt.cpp
@@ -41,6 +41,8 @@
#include "type_conversion.h"
+#include "base/pending_task.h"
+#include "base/threading/thread_task_runner_handle.h"
#include "net/base/net_errors.h"
#include "net/base/io_buffer.h"
@@ -67,7 +69,7 @@ URLRequestQrcJobQt::~URLRequestQrcJobQt()
void URLRequestQrcJobQt::Start()
{
- base::MessageLoop::current()->PostTask(FROM_HERE, base::Bind(&URLRequestQrcJobQt::startGetHead, m_weakFactory.GetWeakPtr()));
+ base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE, base::Bind(&URLRequestQrcJobQt::startGetHead, m_weakFactory.GetWeakPtr()));
}
void URLRequestQrcJobQt::Kill()
diff --git a/src/core/web_contents_adapter.cpp b/src/core/web_contents_adapter.cpp
index 2534286bf..f3a75ecff 100644
--- a/src/core/web_contents_adapter.cpp
+++ b/src/core/web_contents_adapter.cpp
@@ -372,7 +372,7 @@ QSharedPointer<WebContentsAdapter> WebContentsAdapter::createFromSerializedNavig
// Unlike WebCore, Chromium only supports Restoring to a new WebContents instance.
content::WebContents* newWebContents = createBlankWebContents(adapterClient, adapterClient->browserContextAdapter()->browserContext());
content::NavigationController &controller = newWebContents->GetController();
- controller.Restore(currentIndex, content::NavigationController::RESTORE_LAST_SESSION_EXITED_CLEANLY, &entries);
+ controller.Restore(currentIndex, content::RestoreType::LAST_SESSION_EXITED_CLEANLY, &entries);
if (controller.GetActiveEntry()) {
// Set up the file access rights for the selected navigation entry.
diff --git a/src/core/web_contents_adapter_client.h b/src/core/web_contents_adapter_client.h
index 3112e4484..d4b2974fc 100644
--- a/src/core/web_contents_adapter_client.h
+++ b/src/core/web_contents_adapter_client.h
@@ -254,16 +254,15 @@ public:
// This must match window_open_disposition_list.h.
enum WindowOpenDisposition {
UnknownDisposition = 0,
- SuppressOpenDisposition = 1,
- CurrentTabDisposition = 2,
- SingletonTabDisposition = 3,
- NewForegroundTabDisposition = 4,
- NewBackgroundTabDisposition = 5,
- NewPopupDisposition = 6,
- NewWindowDisposition = 7,
- SaveToDiskDisposition = 8,
- OffTheRecordDisposition = 9,
- IgnoreActionDisposition = 10,
+ CurrentTabDisposition = 1,
+ SingletonTabDisposition = 2,
+ NewForegroundTabDisposition = 3,
+ NewBackgroundTabDisposition = 4,
+ NewPopupDisposition = 5,
+ NewWindowDisposition = 6,
+ SaveToDiskDisposition = 7,
+ OffTheRecordDisposition = 8,
+ IgnoreActionDisposition = 9,
};
// Must match the values in javascript_message_type.h.
diff --git a/src/core/web_contents_delegate_qt.cpp b/src/core/web_contents_delegate_qt.cpp
index 87badc189..c7ad844a8 100644
--- a/src/core/web_contents_delegate_qt.cpp
+++ b/src/core/web_contents_delegate_qt.cpp
@@ -101,7 +101,7 @@ WebContentsDelegateQt::WebContentsDelegateQt(content::WebContents *webContents,
content::WebContents *WebContentsDelegateQt::OpenURLFromTab(content::WebContents *source, const content::OpenURLParams &params)
{
content::WebContents *target = source;
- if (params.disposition != CURRENT_TAB) {
+ if (params.disposition != WindowOpenDisposition::CURRENT_TAB) {
QSharedPointer<WebContentsAdapter> targetAdapter = createWindow(0, params.disposition, gfx::Rect(), params.user_gesture);
if (targetAdapter)
target = targetAdapter->webContents();
diff --git a/src/core/web_contents_view_qt.cpp b/src/core/web_contents_view_qt.cpp
index 24c4e198f..a8c6cca70 100644
--- a/src/core/web_contents_view_qt.cpp
+++ b/src/core/web_contents_view_qt.cpp
@@ -232,4 +232,11 @@ void WebContentsViewQt::TakeFocus(bool reverse)
m_client->passOnFocus(reverse);
}
+void WebContentsViewQt::GetScreenInfo(content::ScreenInfo* results) const
+{
+ if (auto rwhv = static_cast<RenderWidgetHostViewQt *>(m_webContents->GetRenderWidgetHostView()))
+ rwhv->GetScreenInfo(results);
+}
+
+
} // namespace QtWebEngineCore
diff --git a/src/core/web_contents_view_qt.h b/src/core/web_contents_view_qt.h
index 48532c0c5..8d7d7a032 100644
--- a/src/core/web_contents_view_qt.h
+++ b/src/core/web_contents_view_qt.h
@@ -117,6 +117,8 @@ public:
virtual void TakeFocus(bool reverse) Q_DECL_OVERRIDE;
+ virtual void GetScreenInfo(content::ScreenInfo* results) const Q_DECL_OVERRIDE;
+
#if defined(OS_MACOSX)
virtual void SetAllowOtherViews(bool allow) Q_DECL_OVERRIDE { m_allowOtherViews = allow; }
virtual bool GetAllowOtherViews() const Q_DECL_OVERRIDE { return m_allowOtherViews; }
diff --git a/src/core/web_event_factory.cpp b/src/core/web_event_factory.cpp
index 9681ad629..ff5cc99a8 100644
--- a/src/core/web_event_factory.cpp
+++ b/src/core/web_event_factory.cpp
@@ -1036,25 +1036,25 @@ static inline double currentTimeForEvent(const QInputEvent* event)
static WebMouseEvent::Button mouseButtonForEvent(QMouseEvent *event)
{
if (event->button() == Qt::LeftButton)
- return WebMouseEvent::ButtonLeft;
+ return WebMouseEvent::Button::Left;
else if (event->button() == Qt::RightButton)
- return WebMouseEvent::ButtonRight;
+ return WebMouseEvent::Button::Right;
else if (event->button() == Qt::MidButton)
- return WebMouseEvent::ButtonMiddle;
+ return WebMouseEvent::Button::Middle;
if (event->type() != QEvent::MouseMove)
- return WebMouseEvent::ButtonNone;
+ return WebMouseEvent::Button::NoButton;
// This is technically wrong, mouse move should always have ButtonNone,
// but it is consistent with aura and selection code depends on it:
if (event->buttons() & Qt::LeftButton)
- return WebMouseEvent::ButtonLeft;
+ return WebMouseEvent::Button::Left;
else if (event->buttons() & Qt::RightButton)
- return WebMouseEvent::ButtonRight;
+ return WebMouseEvent::Button::Right;
else if (event->buttons() & Qt::MidButton)
- return WebMouseEvent::ButtonMiddle;
+ return WebMouseEvent::Button::Middle;
- return WebMouseEvent::ButtonNone;
+ return WebMouseEvent::Button::NoButton;
}
template <typename T>
@@ -1247,7 +1247,6 @@ content::NativeWebKeyboardEvent WebEventFactory::toWebKeyboardEvent(QKeyEvent *e
webKitEvent.nativeKeyCode = ev->nativeVirtualKey();
webKitEvent.windowsKeyCode = windowsKeyCodeForKeyEvent(ev->key(), ev->modifiers() & Qt::KeypadModifier);
- webKitEvent.setKeyIdentifierFromWindowsKeyCode();
webKitEvent.domKey = getDomKeyFromQKeyEvent(ev);
ui::DomCode domCode = ui::DomCode::NONE;