mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Update to Chromium revision 237081.
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1532 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
@ -17,5 +17,5 @@
|
||||
|
||||
{
|
||||
'chromium_url': 'http://src.chromium.org/svn/trunk/src',
|
||||
'chromium_revision': '234212',
|
||||
'chromium_revision': '237081',
|
||||
}
|
||||
|
2
cef.gyp
2
cef.gyp
@ -559,7 +559,7 @@
|
||||
'<(DEPTH)/content/browser/tracing/tracing_resources.gyp:tracing_resources',
|
||||
'<(DEPTH)/content/content_resources.gyp:content_resources',
|
||||
'<(DEPTH)/net/net.gyp:net_resources',
|
||||
'<(DEPTH)/ui/ui.gyp:ui_resources',
|
||||
'<(DEPTH)/ui/resources/ui_resources.gyp:ui_resources',
|
||||
'<(DEPTH)/webkit/webkit_resources.gyp:webkit_resources',
|
||||
'cef_locales',
|
||||
'cef_resources',
|
||||
|
@ -70,7 +70,7 @@ int CefBrowserMainParts::PreCreateThreads() {
|
||||
// Initialize user preferences.
|
||||
pref_store_ = new CefBrowserPrefStore();
|
||||
pref_store_->SetInitializationCompleted();
|
||||
pref_service_.reset(pref_store_->CreateService());
|
||||
pref_service_ = pref_store_->CreateService().Pass();
|
||||
|
||||
// Create a v8::Isolate for the current thread if it doesn't already exist.
|
||||
if (!v8::Isolate::GetCurrent()) {
|
||||
|
@ -6,7 +6,8 @@
|
||||
#include "libcef/browser/media_capture_devices_dispatcher.h"
|
||||
|
||||
#include "base/command_line.h"
|
||||
#include "base/prefs/pref_service_builder.h"
|
||||
#include "base/prefs/pref_service.h"
|
||||
#include "base/prefs/pref_service_factory.h"
|
||||
#include "base/prefs/pref_registry_simple.h"
|
||||
#include "base/values.h"
|
||||
#include "chrome/browser/net/pref_proxy_config_tracker_impl.h"
|
||||
@ -17,11 +18,11 @@
|
||||
CefBrowserPrefStore::CefBrowserPrefStore() {
|
||||
}
|
||||
|
||||
PrefService* CefBrowserPrefStore::CreateService() {
|
||||
PrefServiceBuilder builder;
|
||||
builder.WithCommandLinePrefs(
|
||||
scoped_ptr<PrefService> CefBrowserPrefStore::CreateService() {
|
||||
base::PrefServiceFactory factory;
|
||||
factory.set_command_line_prefs(
|
||||
new CommandLinePrefStore(CommandLine::ForCurrentProcess()));
|
||||
builder.WithUserPrefs(this);
|
||||
factory.set_user_prefs(this);
|
||||
|
||||
scoped_refptr<PrefRegistrySimple> registry(new PrefRegistrySimple());
|
||||
|
||||
@ -31,7 +32,7 @@ PrefService* CefBrowserPrefStore::CreateService() {
|
||||
|
||||
registry->RegisterBooleanPref(prefs::kPrintingEnabled, true);
|
||||
|
||||
return builder.Create(registry);
|
||||
return factory.Create(registry);
|
||||
}
|
||||
|
||||
CefBrowserPrefStore::~CefBrowserPrefStore() {
|
||||
|
@ -5,6 +5,7 @@
|
||||
#ifndef CEF_LIBCEF_BROWSER_BROWSER_PREF_STORE_H_
|
||||
#define CEF_LIBCEF_BROWSER_BROWSER_PREF_STORE_H_
|
||||
|
||||
#include "base/memory/scoped_ptr.h"
|
||||
#include "base/prefs/testing_pref_store.h"
|
||||
|
||||
class PrefService;
|
||||
@ -13,7 +14,7 @@ class CefBrowserPrefStore : public TestingPrefStore {
|
||||
public:
|
||||
CefBrowserPrefStore();
|
||||
|
||||
PrefService* CreateService();
|
||||
scoped_ptr<PrefService> CreateService();
|
||||
|
||||
protected:
|
||||
virtual ~CefBrowserPrefStore();
|
||||
|
@ -12,7 +12,7 @@
|
||||
#include "content/browser/renderer_host/render_widget_host_impl.h"
|
||||
#include "content/public/browser/content_browser_client.h"
|
||||
#include "content/public/browser/render_view_host.h"
|
||||
#include "third_party/WebKit/public/web/WebScreenInfo.h"
|
||||
#include "third_party/WebKit/public/platform/WebScreenInfo.h"
|
||||
#include "webkit/common/cursors/webcursor.h"
|
||||
|
||||
namespace {
|
||||
|
@ -52,6 +52,12 @@ patches = [
|
||||
'name': 'underlay_1051',
|
||||
'path': '../ui/base/cocoa/',
|
||||
},
|
||||
{
|
||||
# Fix compile error when building without aura support on Windows.
|
||||
# https://codereview.chromium.org/86313003/
|
||||
'name': 'webplugin_win',
|
||||
'path': '../content/child/npapi/',
|
||||
},
|
||||
{
|
||||
# Disable scollbar bounce and overlay on OS X.
|
||||
# http://code.google.com/p/chromiumembedded/issues/detail?id=364
|
||||
|
@ -1,8 +1,8 @@
|
||||
Index: message_loop.cc
|
||||
===================================================================
|
||||
--- message_loop.cc (revision 233896)
|
||||
--- message_loop.cc (revision 237081)
|
||||
+++ message_loop.cc (working copy)
|
||||
@@ -208,7 +208,7 @@
|
||||
@@ -166,7 +166,7 @@
|
||||
MessageLoop::~MessageLoop() {
|
||||
DCHECK_EQ(this, current());
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
Index: public/web/WebView.h
|
||||
===================================================================
|
||||
--- public/web/WebView.h (revision 161696)
|
||||
--- public/web/WebView.h (revision 162607)
|
||||
+++ public/web/WebView.h (working copy)
|
||||
@@ -441,6 +441,7 @@
|
||||
|
||||
@ -12,9 +12,9 @@ Index: public/web/WebView.h
|
||||
// Visited link state --------------------------------------------------
|
||||
Index: Source/web/ChromeClientImpl.cpp
|
||||
===================================================================
|
||||
--- Source/web/ChromeClientImpl.cpp (revision 161696)
|
||||
--- Source/web/ChromeClientImpl.cpp (revision 162607)
|
||||
+++ Source/web/ChromeClientImpl.cpp (working copy)
|
||||
@@ -871,7 +871,7 @@
|
||||
@@ -866,7 +866,7 @@
|
||||
|
||||
PassRefPtr<PopupMenu> ChromeClientImpl::createPopupMenu(Frame& frame, PopupMenuClient* client) const
|
||||
{
|
||||
@ -25,9 +25,9 @@ Index: Source/web/ChromeClientImpl.cpp
|
||||
return adoptRef(new PopupMenuChromium(frame, client));
|
||||
Index: Source/web/WebViewImpl.cpp
|
||||
===================================================================
|
||||
--- Source/web/WebViewImpl.cpp (revision 161696)
|
||||
--- Source/web/WebViewImpl.cpp (revision 162607)
|
||||
+++ Source/web/WebViewImpl.cpp (working copy)
|
||||
@@ -390,6 +390,7 @@
|
||||
@@ -392,6 +392,7 @@
|
||||
, m_fakePageScaleAnimationPageScaleFactor(0)
|
||||
, m_fakePageScaleAnimationUseAnchor(false)
|
||||
, m_contextMenuAllowed(false)
|
||||
@ -35,7 +35,7 @@ Index: Source/web/WebViewImpl.cpp
|
||||
, m_doingDragAndDrop(false)
|
||||
, m_ignoreInputEvents(false)
|
||||
, m_compositorDeviceScaleFactorOverride(0)
|
||||
@@ -3693,9 +3694,14 @@
|
||||
@@ -3686,9 +3687,14 @@
|
||||
updateLayerTreeViewport();
|
||||
}
|
||||
|
||||
@ -53,9 +53,9 @@ Index: Source/web/WebViewImpl.cpp
|
||||
void WebViewImpl::startDragging(Frame* frame,
|
||||
Index: Source/web/WebViewImpl.h
|
||||
===================================================================
|
||||
--- Source/web/WebViewImpl.h (revision 161696)
|
||||
--- Source/web/WebViewImpl.h (revision 162607)
|
||||
+++ Source/web/WebViewImpl.h (working copy)
|
||||
@@ -414,7 +414,8 @@
|
||||
@@ -416,7 +416,8 @@
|
||||
|
||||
// Returns true if popup menus should be rendered by the browser, false if
|
||||
// they should be rendered by WebKit (which is the default).
|
||||
@ -65,7 +65,7 @@ Index: Source/web/WebViewImpl.h
|
||||
|
||||
bool contextMenuAllowed() const
|
||||
{
|
||||
@@ -710,6 +711,8 @@
|
||||
@@ -713,6 +714,8 @@
|
||||
|
||||
bool m_contextMenuAllowed;
|
||||
|
||||
|
41
patch/patches/webplugin_win.patch
Normal file
41
patch/patches/webplugin_win.patch
Normal file
@ -0,0 +1,41 @@
|
||||
Index: webplugin_delegate_impl_win.cc
|
||||
===================================================================
|
||||
--- webplugin_delegate_impl_win.cc (revision 237081)
|
||||
+++ webplugin_delegate_impl_win.cc (working copy)
|
||||
@@ -88,8 +88,10 @@
|
||||
base::LazyInstance<base::win::IATPatchFunction> g_iat_patch_get_proc_address =
|
||||
LAZY_INSTANCE_INITIALIZER;
|
||||
|
||||
+#if defined(USE_AURA)
|
||||
base::LazyInstance<base::win::IATPatchFunction> g_iat_patch_window_from_point =
|
||||
LAZY_INSTANCE_INITIALIZER;
|
||||
+#endif
|
||||
|
||||
// http://crbug.com/16114
|
||||
// Enforces providing a valid device context in NPWindow, so that NPP_SetWindow
|
||||
@@ -420,12 +422,14 @@
|
||||
GetProcAddressPatch);
|
||||
}
|
||||
|
||||
+#if defined(USE_AURA)
|
||||
if (windowless_ && !g_iat_patch_window_from_point.Pointer()->is_patched() &&
|
||||
(quirks_ & PLUGIN_QUIRK_FAKE_WINDOW_FROM_POINT)) {
|
||||
g_iat_patch_window_from_point.Pointer()->Patch(
|
||||
GetPluginPath().value().c_str(), "user32.dll", "WindowFromPoint",
|
||||
WebPluginDelegateImpl::WindowFromPointPatch);
|
||||
}
|
||||
+#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -447,8 +451,10 @@
|
||||
if (g_iat_patch_reg_enum_key_ex_w.Pointer()->is_patched())
|
||||
g_iat_patch_reg_enum_key_ex_w.Pointer()->Unpatch();
|
||||
|
||||
+#if defined(USE_AURA)
|
||||
if (g_iat_patch_window_from_point.Pointer()->is_patched())
|
||||
g_iat_patch_window_from_point.Pointer()->Unpatch();
|
||||
+#endif
|
||||
|
||||
if (mouse_hook_) {
|
||||
UnhookWindowsHookEx(mouse_hook_);
|
@ -1278,11 +1278,11 @@ TEST(SchemeHandlerTest, HttpXHRDifferentOriginWithHeaderAsync) {
|
||||
// Test that a custom standard scheme can generate cross-domain XSS requests
|
||||
// when using document.domain.
|
||||
TEST(SchemeHandlerTest, CustomStandardXSSDifferentOriginWithDomain) {
|
||||
RegisterTestScheme("customstd", "a.test");
|
||||
RegisterTestScheme("customstd", "b.test");
|
||||
SetUpXSS("customstd://a.test/run.html",
|
||||
"customstd://b.test/iframe.html",
|
||||
"test");
|
||||
RegisterTestScheme("customstd", "a.test.com");
|
||||
RegisterTestScheme("customstd", "b.test.com");
|
||||
SetUpXSS("customstd://a.test.com/run.html",
|
||||
"customstd://b.test.com/iframe.html",
|
||||
"test.com");
|
||||
|
||||
CefRefPtr<TestSchemeHandler> handler = new TestSchemeHandler(&g_TestResults);
|
||||
handler->ExecuteTest();
|
||||
@ -1300,11 +1300,11 @@ TEST(SchemeHandlerTest, CustomStandardXSSDifferentOriginWithDomain) {
|
||||
// Test that an HTTP scheme can generate cross-domain XSS requests when using
|
||||
// document.domain.
|
||||
TEST(SchemeHandlerTest, HttpXSSDifferentOriginWithDomain) {
|
||||
RegisterTestScheme("http", "a.test");
|
||||
RegisterTestScheme("http", "b.test");
|
||||
SetUpXSS("http://a.test/run.html",
|
||||
"http://b.test/iframe.html",
|
||||
"test");
|
||||
RegisterTestScheme("http", "a.test.com");
|
||||
RegisterTestScheme("http", "b.test.com");
|
||||
SetUpXSS("http://a.test.com/run.html",
|
||||
"http://b.test.com/iframe.html",
|
||||
"test.com");
|
||||
|
||||
CefRefPtr<TestSchemeHandler> handler = new TestSchemeHandler(&g_TestResults);
|
||||
handler->ExecuteTest();
|
||||
|
Reference in New Issue
Block a user