Update to Chromium revision d3cf92ca (#310534).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@1963 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
parent
b5e8914bde
commit
ba198e9ef1
|
@ -7,5 +7,5 @@
|
|||
# https://code.google.com/p/chromiumembedded/wiki/BranchesAndBuilding
|
||||
|
||||
{
|
||||
'chromium_checkout': '8cb76f56a1d0e12b80006e8958187bc8148ea346',
|
||||
'chromium_checkout': 'd3cf92cac313434de99ae66f6e3e12d27ab536ef',
|
||||
}
|
||||
|
|
7
cef.gyp
7
cef.gyp
|
@ -781,11 +781,11 @@
|
|||
'action_name': 'make_pack_resources_header',
|
||||
'variables': {
|
||||
'header_inputs': [
|
||||
'<(SHARED_INTERMEDIATE_DIR)/blink/grit/devtools_resources.h',
|
||||
'<(SHARED_INTERMEDIATE_DIR)/blink/public/resources/grit/blink_resources.h',
|
||||
'<(SHARED_INTERMEDIATE_DIR)/content/grit/content_resources.h',
|
||||
'<(SHARED_INTERMEDIATE_DIR)/net/grit/net_resources.h',
|
||||
'<(SHARED_INTERMEDIATE_DIR)/ui/resources/grit/ui_resources.h',
|
||||
'<(SHARED_INTERMEDIATE_DIR)/webkit/grit/devtools_resources.h',
|
||||
'<(grit_out_dir)/grit/cef_resources.h',
|
||||
],
|
||||
},
|
||||
|
@ -825,7 +825,7 @@
|
|||
# Keep the devtools_resources.pak file separate.
|
||||
'destination': '<(PRODUCT_DIR)',
|
||||
'files': [
|
||||
'<(SHARED_INTERMEDIATE_DIR)/webkit/devtools_resources.pak',
|
||||
'<(SHARED_INTERMEDIATE_DIR)/blink/devtools_resources.pak',
|
||||
],
|
||||
},
|
||||
],
|
||||
|
@ -1132,13 +1132,10 @@
|
|||
'<(DEPTH)/chrome/browser/printing/printer_query.h',
|
||||
'<(DEPTH)/chrome/common/extensions/extension_constants.cc',
|
||||
'<(DEPTH)/chrome/common/extensions/extension_constants.h',
|
||||
'<(DEPTH)/chrome/common/prerender_messages.h',
|
||||
'<(DEPTH)/chrome/common/print_messages.cc',
|
||||
'<(DEPTH)/chrome/common/print_messages.h',
|
||||
'<(DEPTH)/chrome/renderer/pepper/chrome_pdf_print_client.cc',
|
||||
'<(DEPTH)/chrome/renderer/pepper/chrome_pdf_print_client.h',
|
||||
'<(DEPTH)/chrome/renderer/prerender/prerender_helper.cc',
|
||||
'<(DEPTH)/chrome/renderer/prerender/prerender_helper.h',
|
||||
'<(DEPTH)/chrome/renderer/printing/print_web_view_helper.cc',
|
||||
'<(DEPTH)/chrome/renderer/printing/print_web_view_helper.h',
|
||||
'<(DEPTH)/extensions/common/constants.cc',
|
||||
|
|
|
@ -57,10 +57,76 @@
|
|||
#pragma once
|
||||
|
||||
#if defined(BASE_TUPLE_H__)
|
||||
// Do nothing if the Chromium header has already been included.
|
||||
// The Chromium header has already been included.
|
||||
// This can happen in cases where Chromium code is used directly by the
|
||||
// client application. When using Chromium code directly always include
|
||||
// the Chromium header first to avoid type conflicts.
|
||||
|
||||
// For legacy compatibility, we name the first 8 tuple elements "a", "b", ...
|
||||
// TODO(cef): Remove this code when cef_runnable.h is deleted.
|
||||
|
||||
#define DEFINE_TUPLE_LEAF(N, x) \
|
||||
template <typename T> \
|
||||
struct TupleLeaf<N, T> { \
|
||||
TupleLeaf() {} \
|
||||
explicit TupleLeaf(typename TupleTraits<T>::ParamType x) : x(x) {} \
|
||||
\
|
||||
T& get() { return x; } \
|
||||
const T& get() const { return x; } \
|
||||
\
|
||||
T x; \
|
||||
}
|
||||
|
||||
DEFINE_TUPLE_LEAF(0, a);
|
||||
DEFINE_TUPLE_LEAF(1, b);
|
||||
DEFINE_TUPLE_LEAF(2, c);
|
||||
DEFINE_TUPLE_LEAF(3, d);
|
||||
DEFINE_TUPLE_LEAF(4, e);
|
||||
DEFINE_TUPLE_LEAF(5, f);
|
||||
DEFINE_TUPLE_LEAF(6, g);
|
||||
DEFINE_TUPLE_LEAF(7, h);
|
||||
|
||||
#undef DEFINE_TUPLE_LEAF
|
||||
|
||||
// Deprecated compat aliases
|
||||
// TODO(cef): Remove this code when cef_runnable.h is deleted.
|
||||
|
||||
using Tuple0 = Tuple<>;
|
||||
template <typename A>
|
||||
using Tuple1 = Tuple<A>;
|
||||
template <typename A, typename B>
|
||||
using Tuple2 = Tuple<A, B>;
|
||||
template <typename A, typename B, typename C>
|
||||
using Tuple3 = Tuple<A, B, C>;
|
||||
template <typename A, typename B, typename C, typename D>
|
||||
using Tuple4 = Tuple<A, B, C, D>;
|
||||
template <typename A, typename B, typename C, typename D, typename E>
|
||||
using Tuple5 = Tuple<A, B, C, D, E>;
|
||||
template <typename A,
|
||||
typename B,
|
||||
typename C,
|
||||
typename D,
|
||||
typename E,
|
||||
typename F>
|
||||
using Tuple6 = Tuple<A, B, C, D, E, F>;
|
||||
template <typename A,
|
||||
typename B,
|
||||
typename C,
|
||||
typename D,
|
||||
typename E,
|
||||
typename F,
|
||||
typename G>
|
||||
using Tuple7 = Tuple<A, B, C, D, E, F, G>;
|
||||
template <typename A,
|
||||
typename B,
|
||||
typename C,
|
||||
typename D,
|
||||
typename E,
|
||||
typename F,
|
||||
typename G,
|
||||
typename H>
|
||||
using Tuple8 = Tuple<A, B, C, D, E, F, G, H>;
|
||||
|
||||
#elif defined(BUILDING_CEF_SHARED)
|
||||
// When building CEF include the Chromium header directly.
|
||||
#include "base/tuple.h"
|
||||
|
|
|
@ -34,6 +34,13 @@
|
|||
#define CEF_INCLUDE_CEF_RUNNABLE_H_
|
||||
#pragma once
|
||||
|
||||
#if defined(BUILDING_CEF_SHARED)
|
||||
// The implementation of cef_runnable.h depends on an obsolete version of
|
||||
// base/tuple.h that is implemented by cef_tuple.h for client applications but
|
||||
// is not compatible with the version used when building Chromium/CEF.
|
||||
#error This header cannot be used when building Chromium/CEF.
|
||||
#endif
|
||||
|
||||
#include "include/base/cef_tuple.h"
|
||||
#include "include/cef_base.h"
|
||||
#include "include/cef_task.h"
|
||||
|
|
|
@ -2187,6 +2187,7 @@ bool CefBrowserHostImpl::CanDragEnter(
|
|||
bool CefBrowserHostImpl::ShouldCreateWebContents(
|
||||
content::WebContents* web_contents,
|
||||
int route_id,
|
||||
int main_frame_route_id,
|
||||
WindowContainerType window_container_type,
|
||||
const base::string16& frame_name,
|
||||
const GURL& target_url,
|
||||
|
@ -2297,8 +2298,9 @@ void CefBrowserHostImpl::RequestMediaAccessPermission(
|
|||
|
||||
content::MediaStreamDevices devices;
|
||||
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
if (!command_line.HasSwitch(switches::kEnableMediaStream)) {
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
if (!command_line->HasSwitch(switches::kEnableMediaStream)) {
|
||||
// Cancel the request.
|
||||
callback.Run(devices, content::MEDIA_DEVICE_PERMISSION_DENIED,
|
||||
scoped_ptr<content::MediaStreamUI>());
|
||||
|
|
|
@ -369,6 +369,7 @@ class CefBrowserHostImpl : public CefBrowserHost,
|
|||
bool ShouldCreateWebContents(
|
||||
content::WebContents* web_contents,
|
||||
int route_id,
|
||||
int main_frame_route_id,
|
||||
WindowContainerType window_container_type,
|
||||
const base::string16& frame_name,
|
||||
const GURL& target_url,
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
#import "ui/base/cocoa/underlay_opengl_hosting_window.h"
|
||||
#include "ui/base/l10n/l10n_util.h"
|
||||
#include "ui/events/keycodes/keyboard_codes_posix.h"
|
||||
#include "ui/gfx/rect.h"
|
||||
#include "ui/gfx/geometry/rect.h"
|
||||
|
||||
// Wrapper NSView for the native view. Necessary to destroy the browser when
|
||||
// the view is deleted.
|
||||
|
|
|
@ -140,10 +140,11 @@ void CefBrowserMainParts::PreMainMessageLoopRun() {
|
|||
// to CefURLRequestContextGetter::GetURLRequestContext() on the IO thread.
|
||||
global_request_context_ = global_browser_context_->GetRequestContext();
|
||||
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
if (command_line.HasSwitch(switches::kRemoteDebuggingPort)) {
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
if (command_line->HasSwitch(switches::kRemoteDebuggingPort)) {
|
||||
std::string port_str =
|
||||
command_line.GetSwitchValueASCII(switches::kRemoteDebuggingPort);
|
||||
command_line->GetSwitchValueASCII(switches::kRemoteDebuggingPort);
|
||||
int port;
|
||||
if (base::StringToInt(port_str, &port) && port > 0 && port < 65535) {
|
||||
devtools_delegate_ =
|
||||
|
|
|
@ -15,33 +15,34 @@
|
|||
// Set default preferences based on CEF command-line flags. Chromium command-
|
||||
// line flags should not exist for these preferences.
|
||||
void SetDefaults(content::WebPreferences& web) {
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
|
||||
if (command_line.HasSwitch(switches::kDefaultEncoding)) {
|
||||
if (command_line->HasSwitch(switches::kDefaultEncoding)) {
|
||||
web.default_encoding =
|
||||
command_line.GetSwitchValueASCII(switches::kDefaultEncoding);
|
||||
command_line->GetSwitchValueASCII(switches::kDefaultEncoding);
|
||||
}
|
||||
|
||||
web.javascript_can_open_windows_automatically =
|
||||
!command_line.HasSwitch(switches::kDisableJavascriptOpenWindows);
|
||||
!command_line->HasSwitch(switches::kDisableJavascriptOpenWindows);
|
||||
web.allow_scripts_to_close_windows =
|
||||
!command_line.HasSwitch(switches::kDisableJavascriptCloseWindows);
|
||||
!command_line->HasSwitch(switches::kDisableJavascriptCloseWindows);
|
||||
web.javascript_can_access_clipboard =
|
||||
!command_line.HasSwitch(switches::kDisableJavascriptAccessClipboard);
|
||||
!command_line->HasSwitch(switches::kDisableJavascriptAccessClipboard);
|
||||
web.dom_paste_enabled =
|
||||
!command_line.HasSwitch(switches::kDisableJavascriptDomPaste);
|
||||
!command_line->HasSwitch(switches::kDisableJavascriptDomPaste);
|
||||
web.caret_browsing_enabled =
|
||||
command_line.HasSwitch(switches::kEnableCaretBrowsing);
|
||||
command_line->HasSwitch(switches::kEnableCaretBrowsing);
|
||||
web.allow_universal_access_from_file_urls =
|
||||
command_line.HasSwitch(switches::kAllowUniversalAccessFromFileUrls);
|
||||
command_line->HasSwitch(switches::kAllowUniversalAccessFromFileUrls);
|
||||
web.loads_images_automatically =
|
||||
!command_line.HasSwitch(switches::kDisableImageLoading);
|
||||
!command_line->HasSwitch(switches::kDisableImageLoading);
|
||||
web.shrinks_standalone_images_to_fit =
|
||||
command_line.HasSwitch(switches::kImageShrinkStandaloneToFit);
|
||||
command_line->HasSwitch(switches::kImageShrinkStandaloneToFit);
|
||||
web.text_areas_are_resizable =
|
||||
!command_line.HasSwitch(switches::kDisableTextAreaResize);
|
||||
!command_line->HasSwitch(switches::kDisableTextAreaResize);
|
||||
web.tabs_to_links =
|
||||
!command_line.HasSwitch(switches::kDisableTabToLinks);
|
||||
!command_line->HasSwitch(switches::kDisableTabToLinks);
|
||||
}
|
||||
|
||||
// Helper macro for setting a WebPreferences variable based on the value of a
|
||||
|
|
|
@ -94,11 +94,11 @@ std::string GetOSType() {
|
|||
std::string GetCommandLine() {
|
||||
#if defined(OS_WIN)
|
||||
return base::WideToUTF8(
|
||||
CommandLine::ForCurrentProcess()->GetCommandLineString());
|
||||
base::CommandLine::ForCurrentProcess()->GetCommandLineString());
|
||||
#elif defined(OS_POSIX)
|
||||
std::string command_line = "";
|
||||
typedef std::vector<std::string> ArgvList;
|
||||
const ArgvList& argv = CommandLine::ForCurrentProcess()->argv();
|
||||
const ArgvList& argv = base::CommandLine::ForCurrentProcess()->argv();
|
||||
for (ArgvList::const_iterator iter = argv.begin(); iter != argv.end(); iter++)
|
||||
command_line += " " + *iter;
|
||||
// TODO(viettrungluu): |command_line| could really have any encoding, whereas
|
||||
|
|
|
@ -657,8 +657,8 @@ bool CefContentBrowserClient::IsHandledURL(const GURL& url) {
|
|||
|
||||
void CefContentBrowserClient::AppendExtraCommandLineSwitches(
|
||||
base::CommandLine* command_line, int child_process_id) {
|
||||
const base::CommandLine& browser_cmd =
|
||||
*base::CommandLine::ForCurrentProcess();
|
||||
const base::CommandLine* browser_cmd =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
|
||||
{
|
||||
// Propagate the following switches to all command lines (along with any
|
||||
|
@ -677,7 +677,7 @@ void CefContentBrowserClient::AppendExtraCommandLineSwitches(
|
|||
switches::kResourcesDirPath,
|
||||
switches::kUserAgent,
|
||||
};
|
||||
command_line->CopySwitchesFrom(browser_cmd, kSwitchNames,
|
||||
command_line->CopySwitchesFrom(*browser_cmd, kSwitchNames,
|
||||
arraysize(kSwitchNames));
|
||||
}
|
||||
|
||||
|
@ -693,16 +693,16 @@ void CefContentBrowserClient::AppendExtraCommandLineSwitches(
|
|||
switches::kEnableSpellingAutoCorrect,
|
||||
switches::kUncaughtExceptionStackSize,
|
||||
};
|
||||
command_line->CopySwitchesFrom(browser_cmd, kSwitchNames,
|
||||
command_line->CopySwitchesFrom(*browser_cmd, kSwitchNames,
|
||||
arraysize(kSwitchNames));
|
||||
}
|
||||
|
||||
#if defined(OS_LINUX)
|
||||
if (process_type == switches::kZygoteProcess &&
|
||||
browser_cmd.HasSwitch(switches::kBrowserSubprocessPath)) {
|
||||
browser_cmd->HasSwitch(switches::kBrowserSubprocessPath)) {
|
||||
// Force use of the sub-process executable path for the zygote process.
|
||||
const base::FilePath& subprocess_path =
|
||||
browser_cmd.GetSwitchValuePath(switches::kBrowserSubprocessPath);
|
||||
browser_cmd->GetSwitchValuePath(switches::kBrowserSubprocessPath);
|
||||
if (!subprocess_path.empty())
|
||||
command_line->SetProgram(subprocess_path);
|
||||
}
|
||||
|
|
|
@ -58,7 +58,7 @@ class CefForceShutdown {
|
|||
int CefExecuteProcess(const CefMainArgs& args,
|
||||
CefRefPtr<CefApp> application,
|
||||
void* windows_sandbox_info) {
|
||||
CommandLine command_line(CommandLine::NO_PROGRAM);
|
||||
base::CommandLine command_line(base::CommandLine::NO_PROGRAM);
|
||||
#if defined(OS_WIN)
|
||||
command_line.ParseFromString(::GetCommandLineW());
|
||||
#else
|
||||
|
|
|
@ -23,6 +23,14 @@
|
|||
#include "net/base/net_util.h"
|
||||
#include "third_party/skia/include/core/SkColor.h"
|
||||
|
||||
namespace {
|
||||
|
||||
// This constant should be in sync with
|
||||
// the constant at devtools_ui_bindings.cc.
|
||||
const size_t kMaxMessageChunkSize = IPC::Channel::kMaximumMessageSize / 4;
|
||||
|
||||
} // namespace
|
||||
|
||||
// static
|
||||
CefDevToolsFrontend* CefDevToolsFrontend::Show(
|
||||
CefRefPtr<CefBrowserHostImpl> inspected_browser,
|
||||
|
@ -148,12 +156,22 @@ void CefDevToolsFrontend::HandleMessageFromDevToolsFrontendToBackend(
|
|||
void CefDevToolsFrontend::DispatchProtocolMessage(
|
||||
content::DevToolsAgentHost* agent_host,
|
||||
const std::string& message) {
|
||||
base::StringValue message_value(message);
|
||||
std::string param;
|
||||
base::JSONWriter::Write(&message_value, ¶m);
|
||||
std::string code = "DevToolsAPI.dispatchMessage(" + param + ");";
|
||||
base::string16 javascript = base::UTF8ToUTF16(code);
|
||||
web_contents()->GetMainFrame()->ExecuteJavaScript(javascript);
|
||||
if (message.length() < kMaxMessageChunkSize) {
|
||||
base::string16 javascript = base::UTF8ToUTF16(
|
||||
"DevToolsAPI.dispatchMessage(" + message + ");");
|
||||
web_contents()->GetMainFrame()->ExecuteJavaScript(javascript);
|
||||
return;
|
||||
}
|
||||
|
||||
base::FundamentalValue total_size(static_cast<int>(message.length()));
|
||||
for (size_t pos = 0; pos < message.length(); pos += kMaxMessageChunkSize) {
|
||||
base::StringValue message_value(message.substr(pos, kMaxMessageChunkSize));
|
||||
std::string param;
|
||||
base::JSONWriter::Write(&message_value, ¶m);
|
||||
std::string code = "DevToolsAPI.dispatchMessageChunk(" + param + ");";
|
||||
base::string16 javascript = base::UTF8ToUTF16(code);
|
||||
web_contents()->GetMainFrame()->ExecuteJavaScript(javascript);
|
||||
}
|
||||
}
|
||||
|
||||
void CefDevToolsFrontend::AgentHostClosed(
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
#include "base/compiler_specific.h"
|
||||
#include "base/strings/string_util.h"
|
||||
#include "ui/aura/window.h"
|
||||
#include "ui/gfx/point.h"
|
||||
#include "ui/gfx/geometry/point.h"
|
||||
|
||||
CefMenuCreatorRunnerLinux::CefMenuCreatorRunnerLinux() {
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
#include "base/message_loop/message_loop.h"
|
||||
#include "ui/aura/window.h"
|
||||
#include "ui/gfx/point.h"
|
||||
#include "ui/gfx/geometry/point.h"
|
||||
#include "ui/views/controls/menu/menu_2.h"
|
||||
|
||||
CefMenuCreatorRunnerWin::CefMenuCreatorRunnerWin() {
|
||||
|
|
|
@ -263,10 +263,11 @@ void PrintingMessageFilter::OnGetDefaultPrintSettings(IPC::Message* reply_msg) {
|
|||
// Loads default settings. This is asynchronous, only the IPC message sender
|
||||
// will hang until the settings are retrieved.
|
||||
printer_query->GetSettings(
|
||||
PrinterQuery::DEFAULTS,
|
||||
PrinterQuery::GetSettingsAskParam::DEFAULTS,
|
||||
0,
|
||||
false,
|
||||
DEFAULT_MARGINS,
|
||||
false,
|
||||
base::Bind(&PrintingMessageFilter::OnGetDefaultPrintSettingsReply,
|
||||
this,
|
||||
printer_query,
|
||||
|
@ -307,10 +308,11 @@ void PrintingMessageFilter::OnScriptedPrint(
|
|||
queue_->CreatePrinterQuery(render_process_id_, reply_msg->routing_id());
|
||||
}
|
||||
printer_query->GetSettings(
|
||||
PrinterQuery::ASK_USER,
|
||||
PrinterQuery::GetSettingsAskParam::ASK_USER,
|
||||
params.expected_pages_count,
|
||||
params.has_selection,
|
||||
params.margin_type,
|
||||
params.is_scripted,
|
||||
base::Bind(&PrintingMessageFilter::OnScriptedPrintReply,
|
||||
this,
|
||||
printer_query,
|
||||
|
|
|
@ -38,9 +38,8 @@ class PrintingMessageFilter : public content::BrowserMessageFilter {
|
|||
explicit PrintingMessageFilter(int render_process_id);
|
||||
|
||||
// content::BrowserMessageFilter methods.
|
||||
void OverrideThreadForMessage(
|
||||
const IPC::Message& message,
|
||||
content::BrowserThread::ID* thread) override;
|
||||
void OverrideThreadForMessage(const IPC::Message& message,
|
||||
content::BrowserThread::ID* thread) override;
|
||||
bool OnMessageReceived(const IPC::Message& message) override;
|
||||
|
||||
private:
|
||||
|
|
|
@ -125,9 +125,10 @@ class CefSpeechRecognitionManagerDelegate::WebContentsWatcher
|
|||
|
||||
CefSpeechRecognitionManagerDelegate
|
||||
::CefSpeechRecognitionManagerDelegate() {
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
filter_profanities_ =
|
||||
command_line.HasSwitch(switches::kEnableProfanityFilter);
|
||||
command_line->HasSwitch(switches::kEnableProfanityFilter);
|
||||
}
|
||||
|
||||
CefSpeechRecognitionManagerDelegate
|
||||
|
|
|
@ -123,7 +123,8 @@ net::URLRequestContext* CefURLRequestContextGetter::GetURLRequestContext() {
|
|||
|
||||
if (!url_request_context_.get()) {
|
||||
const base::FilePath& cache_path = CefContext::Get()->cache_path();
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
const CefSettings& settings = CefContext::Get()->settings();
|
||||
|
||||
url_request_context_.reset(new net::URLRequestContext());
|
||||
|
@ -132,7 +133,7 @@ net::URLRequestContext* CefURLRequestContextGetter::GetURLRequestContext() {
|
|||
|
||||
bool persist_session_cookies =
|
||||
(settings.persist_session_cookies ||
|
||||
command_line.HasSwitch(switches::kPersistSessionCookies));
|
||||
command_line->HasSwitch(switches::kPersistSessionCookies));
|
||||
SetCookieStoragePath(cache_path, persist_session_cookies);
|
||||
|
||||
storage_->set_network_delegate(new CefNetworkDelegate);
|
||||
|
@ -154,7 +155,7 @@ net::URLRequestContext* CefURLRequestContextGetter::GetURLRequestContext() {
|
|||
url_request_context_.get(),
|
||||
url_request_context_->network_delegate(),
|
||||
CefContentBrowserClient::Get()->proxy_config_service().release(),
|
||||
command_line,
|
||||
*command_line,
|
||||
true));
|
||||
storage_->set_proxy_service(system_proxy_service.release());
|
||||
|
||||
|
@ -211,7 +212,7 @@ net::URLRequestContext* CefURLRequestContextGetter::GetURLRequestContext() {
|
|||
url_request_context_->http_server_properties();
|
||||
network_session_params.ignore_certificate_errors =
|
||||
(settings.ignore_certificate_errors ||
|
||||
command_line.HasSwitch(switches::kIgnoreCertificateErrors));
|
||||
command_line->HasSwitch(switches::kIgnoreCertificateErrors));
|
||||
|
||||
net::HttpCache* main_cache = new net::HttpCache(network_session_params,
|
||||
main_backend);
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
|
||||
#include "base/memory/weak_ptr.h"
|
||||
#include "ui/events/platform/platform_event_dispatcher.h"
|
||||
#include "ui/gfx/rect.h"
|
||||
#include "ui/gfx/geometry/rect.h"
|
||||
#include "ui/gfx/x/x11_atom_cache.h"
|
||||
|
||||
namespace views {
|
||||
|
|
|
@ -39,7 +39,7 @@ struct ParamTraits<net::UploadElement> {
|
|||
case net::UploadElement::TYPE_BYTES: {
|
||||
const char* data;
|
||||
int len;
|
||||
if (!m->ReadData(iter, &data, &len))
|
||||
if (!iter->ReadData(&data, &len))
|
||||
return false;
|
||||
r->SetToBytes(data, len);
|
||||
break;
|
||||
|
|
|
@ -213,7 +213,6 @@ struct ParamTraits<scoped_refptr<net::UploadData> > {
|
|||
|
||||
#endif // CEF_LIBCEF_COMMON_CEF_MESSAGES_H_
|
||||
|
||||
#include "chrome/common/prerender_messages.h"
|
||||
#include "chrome/common/print_messages.h"
|
||||
#include "chrome/common/spellcheck_messages.h"
|
||||
|
||||
|
|
|
@ -7,10 +7,10 @@
|
|||
#include "base/files/file_path.h"
|
||||
#include "base/logging.h"
|
||||
|
||||
CefCommandLineImpl::CefCommandLineImpl(CommandLine* value,
|
||||
CefCommandLineImpl::CefCommandLineImpl(base::CommandLine* value,
|
||||
bool will_delete,
|
||||
bool read_only)
|
||||
: CefValueBase<CefCommandLine, CommandLine>(
|
||||
: CefValueBase<CefCommandLine, base::CommandLine>(
|
||||
value, NULL, will_delete ? kOwnerWillDelete : kOwnerNoDelete,
|
||||
read_only, NULL) {
|
||||
}
|
||||
|
@ -26,7 +26,7 @@ bool CefCommandLineImpl::IsReadOnly() {
|
|||
CefRefPtr<CefCommandLine> CefCommandLineImpl::Copy() {
|
||||
CEF_VALUE_VERIFY_RETURN(false, NULL);
|
||||
return new CefCommandLineImpl(
|
||||
new CommandLine(const_value().argv()), true, false);
|
||||
new base::CommandLine(const_value().argv()), true, false);
|
||||
}
|
||||
|
||||
void CefCommandLineImpl::InitFromArgv(int argc, const char* const* argv) {
|
||||
|
@ -49,18 +49,18 @@ void CefCommandLineImpl::InitFromString(const CefString& command_line) {
|
|||
|
||||
void CefCommandLineImpl::Reset() {
|
||||
CEF_VALUE_VERIFY_RETURN_VOID(true);
|
||||
CommandLine::StringVector argv;
|
||||
base::CommandLine::StringVector argv;
|
||||
argv.push_back(mutable_value()->GetProgram().value());
|
||||
mutable_value()->InitFromArgv(argv);
|
||||
|
||||
const CommandLine::SwitchMap& map = mutable_value()->GetSwitches();
|
||||
const_cast<CommandLine::SwitchMap*>(&map)->clear();
|
||||
const base::CommandLine::SwitchMap& map = mutable_value()->GetSwitches();
|
||||
const_cast<base::CommandLine::SwitchMap*>(&map)->clear();
|
||||
}
|
||||
|
||||
void CefCommandLineImpl::GetArgv(std::vector<CefString>& argv) {
|
||||
CEF_VALUE_VERIFY_RETURN_VOID(false);
|
||||
const CommandLine::StringVector& cmd_argv = const_value().argv();
|
||||
CommandLine::StringVector::const_iterator it = cmd_argv.begin();
|
||||
const base::CommandLine::StringVector& cmd_argv = const_value().argv();
|
||||
base::CommandLine::StringVector::const_iterator it = cmd_argv.begin();
|
||||
for (; it != cmd_argv.end(); ++it)
|
||||
argv.push_back(*it);
|
||||
}
|
||||
|
@ -97,8 +97,8 @@ CefString CefCommandLineImpl::GetSwitchValue(const CefString& name) {
|
|||
|
||||
void CefCommandLineImpl::GetSwitches(SwitchMap& switches) {
|
||||
CEF_VALUE_VERIFY_RETURN_VOID(false);
|
||||
const CommandLine::SwitchMap& map = const_value().GetSwitches();
|
||||
CommandLine::SwitchMap::const_iterator it = map.begin();
|
||||
const base::CommandLine::SwitchMap& map = const_value().GetSwitches();
|
||||
base::CommandLine::SwitchMap::const_iterator it = map.begin();
|
||||
for (; it != map.end(); ++it)
|
||||
switches.insert(std::make_pair(it->first, it->second));
|
||||
}
|
||||
|
@ -121,8 +121,8 @@ bool CefCommandLineImpl::HasArguments() {
|
|||
|
||||
void CefCommandLineImpl::GetArguments(ArgumentList& arguments) {
|
||||
CEF_VALUE_VERIFY_RETURN_VOID(false);
|
||||
const CommandLine::StringVector& vec = const_value().GetArgs();
|
||||
CommandLine::StringVector::const_iterator it = vec.begin();
|
||||
const base::CommandLine::StringVector& vec = const_value().GetArgs();
|
||||
base::CommandLine::StringVector::const_iterator it = vec.begin();
|
||||
for (; it != vec.end(); ++it)
|
||||
arguments.push_back(*it);
|
||||
}
|
||||
|
@ -143,7 +143,7 @@ void CefCommandLineImpl::PrependWrapper(const CefString& wrapper) {
|
|||
// static
|
||||
CefRefPtr<CefCommandLine> CefCommandLine::CreateCommandLine() {
|
||||
return new CefCommandLineImpl(
|
||||
new CommandLine(CommandLine::NO_PROGRAM), true, false);
|
||||
new base::CommandLine(base::CommandLine::NO_PROGRAM), true, false);
|
||||
}
|
||||
|
||||
// static
|
||||
|
@ -151,7 +151,7 @@ CefRefPtr<CefCommandLine> CefCommandLine::GetGlobalCommandLine() {
|
|||
// Uses a singleton reference object.
|
||||
static CefRefPtr<CefCommandLineImpl> commandLinePtr;
|
||||
if (!commandLinePtr.get()) {
|
||||
CommandLine* command_line = CommandLine::ForCurrentProcess();
|
||||
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
|
||||
if (command_line)
|
||||
commandLinePtr = new CefCommandLineImpl(command_line, false, true);
|
||||
}
|
||||
|
|
|
@ -12,9 +12,10 @@
|
|||
#include "base/command_line.h"
|
||||
|
||||
// CefCommandLine implementation
|
||||
class CefCommandLineImpl : public CefValueBase<CefCommandLine, CommandLine> {
|
||||
class CefCommandLineImpl :
|
||||
public CefValueBase<CefCommandLine, base::CommandLine> {
|
||||
public:
|
||||
CefCommandLineImpl(CommandLine* value,
|
||||
CefCommandLineImpl(base::CommandLine* value,
|
||||
bool will_delete,
|
||||
bool read_only);
|
||||
|
||||
|
@ -42,7 +43,7 @@ class CefCommandLineImpl : public CefValueBase<CefCommandLine, CommandLine> {
|
|||
void PrependWrapper(const CefString& wrapper) override;
|
||||
|
||||
// Must hold the controller lock while using this value.
|
||||
const CommandLine& command_line() { return const_value(); }
|
||||
const base::CommandLine& command_line() { return const_value(); }
|
||||
|
||||
DISALLOW_COPY_AND_ASSIGN(CefCommandLineImpl);
|
||||
};
|
||||
|
|
|
@ -113,13 +113,14 @@ void CefContentClient::AddAdditionalSchemes(
|
|||
std::string CefContentClient::GetUserAgent() const {
|
||||
std::string product_version;
|
||||
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
if (command_line.HasSwitch(switches::kUserAgent))
|
||||
return command_line.GetSwitchValueASCII(switches::kUserAgent);
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
if (command_line->HasSwitch(switches::kUserAgent))
|
||||
return command_line->GetSwitchValueASCII(switches::kUserAgent);
|
||||
|
||||
if (command_line.HasSwitch(switches::kProductVersion)) {
|
||||
if (command_line->HasSwitch(switches::kProductVersion)) {
|
||||
product_version =
|
||||
command_line.GetSwitchValueASCII(switches::kProductVersion);
|
||||
command_line->GetSwitchValueASCII(switches::kProductVersion);
|
||||
} else {
|
||||
product_version = base::StringPrintf("Chrome/%d.%d.%d.%d",
|
||||
CHROME_VERSION_MAJOR, CHROME_VERSION_MINOR, CHROME_VERSION_BUILD,
|
||||
|
|
|
@ -51,10 +51,11 @@ base::FilePath CefCrashReporterClient::GetReporterLogFilename() {
|
|||
|
||||
bool CefCrashReporterClient::GetCrashDumpLocation(base::FilePath* crash_dir) {
|
||||
#if !defined(OS_WIN)
|
||||
if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kCrashDumpsDir))
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
if (!command_line->HasSwitch(switches::kCrashDumpsDir))
|
||||
return false;
|
||||
*crash_dir = CommandLine::ForCurrentProcess()->GetSwitchValuePath(
|
||||
switches::kCrashDumpsDir);
|
||||
*crash_dir = command_line->GetSwitchValuePath(switches::kCrashDumpsDir);
|
||||
return true;
|
||||
#else
|
||||
NOTREACHED();
|
||||
|
|
|
@ -199,7 +199,7 @@ bool CefMainDelegate::BasicStartupComplete(int* exit_code) {
|
|||
OverrideFrameworkBundlePath();
|
||||
#endif
|
||||
|
||||
CommandLine* command_line = CommandLine::ForCurrentProcess();
|
||||
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
|
||||
std::string process_type =
|
||||
command_line->GetSwitchValueASCII(switches::kProcessType);
|
||||
|
||||
|
@ -209,12 +209,12 @@ bool CefMainDelegate::BasicStartupComplete(int* exit_code) {
|
|||
|
||||
if (settings.command_line_args_disabled) {
|
||||
// Remove any existing command-line arguments.
|
||||
CommandLine::StringVector argv;
|
||||
base::CommandLine::StringVector argv;
|
||||
argv.push_back(command_line->GetProgram().value());
|
||||
command_line->InitFromArgv(argv);
|
||||
|
||||
const CommandLine::SwitchMap& map = command_line->GetSwitches();
|
||||
const_cast<CommandLine::SwitchMap*>(&map)->clear();
|
||||
const base::CommandLine::SwitchMap& map = command_line->GetSwitches();
|
||||
const_cast<base::CommandLine::SwitchMap*>(&map)->clear();
|
||||
}
|
||||
|
||||
if (settings.single_process)
|
||||
|
@ -387,11 +387,12 @@ bool CefMainDelegate::BasicStartupComplete(int* exit_code) {
|
|||
}
|
||||
|
||||
void CefMainDelegate::PreSandboxStartup() {
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
const std::string& process_type =
|
||||
command_line.GetSwitchValueASCII(switches::kProcessType);
|
||||
command_line->GetSwitchValueASCII(switches::kProcessType);
|
||||
|
||||
if (command_line.HasSwitch(switches::kEnableCrashReporter)) {
|
||||
if (command_line->HasSwitch(switches::kEnableCrashReporter)) {
|
||||
crash_reporter::SetCrashReporterClient(g_crash_reporter_client.Pointer());
|
||||
#if defined(OS_MACOSX)
|
||||
base::mac::DisableOSCrashDumps();
|
||||
|
@ -409,7 +410,7 @@ void CefMainDelegate::PreSandboxStartup() {
|
|||
#endif
|
||||
}
|
||||
|
||||
if (!command_line.HasSwitch(switches::kProcessType)) {
|
||||
if (!command_line->HasSwitch(switches::kProcessType)) {
|
||||
// Only these paths when executing the main process.
|
||||
#if defined(OS_MACOSX)
|
||||
OverrideChildProcessPath();
|
||||
|
@ -430,7 +431,7 @@ void CefMainDelegate::PreSandboxStartup() {
|
|||
|
||||
OverridePdfPluginPath();
|
||||
|
||||
if (command_line.HasSwitch(switches::kDisablePackLoading))
|
||||
if (command_line->HasSwitch(switches::kDisablePackLoading))
|
||||
content_client_.set_pack_loading_disabled(true);
|
||||
|
||||
InitializeResourceBundle();
|
||||
|
@ -481,9 +482,10 @@ void CefMainDelegate::ProcessExiting(const std::string& process_type) {
|
|||
|
||||
#if defined(OS_POSIX) && !defined(OS_ANDROID) && !defined(OS_MACOSX)
|
||||
void CefMainDelegate::ZygoteForked() {
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
if (command_line.HasSwitch(switches::kEnableCrashReporter)) {
|
||||
const std::string& process_type = command_line.GetSwitchValueASCII(
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
if (command_line->HasSwitch(switches::kEnableCrashReporter)) {
|
||||
const std::string& process_type = command_line->GetSwitchValueASCII(
|
||||
switches::kProcessType);
|
||||
breakpad::InitCrashReporter(process_type);
|
||||
}
|
||||
|
@ -519,15 +521,16 @@ void CefMainDelegate::ShutdownBrowser() {
|
|||
}
|
||||
|
||||
void CefMainDelegate::InitializeResourceBundle() {
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
base::FilePath cef_pak_file, cef_100_percent_pak_file,
|
||||
cef_200_percent_pak_file, devtools_pak_file, locales_dir;
|
||||
|
||||
if (!content_client_.pack_loading_disabled()) {
|
||||
base::FilePath resources_dir;
|
||||
if (command_line.HasSwitch(switches::kResourcesDirPath)) {
|
||||
if (command_line->HasSwitch(switches::kResourcesDirPath)) {
|
||||
resources_dir =
|
||||
command_line.GetSwitchValuePath(switches::kResourcesDirPath);
|
||||
command_line->GetSwitchValuePath(switches::kResourcesDirPath);
|
||||
}
|
||||
if (resources_dir.empty())
|
||||
resources_dir = GetResourcesFilePath();
|
||||
|
@ -542,14 +545,14 @@ void CefMainDelegate::InitializeResourceBundle() {
|
|||
resources_dir.Append(FILE_PATH_LITERAL("devtools_resources.pak"));
|
||||
}
|
||||
|
||||
if (command_line.HasSwitch(switches::kLocalesDirPath))
|
||||
locales_dir = command_line.GetSwitchValuePath(switches::kLocalesDirPath);
|
||||
if (command_line->HasSwitch(switches::kLocalesDirPath))
|
||||
locales_dir = command_line->GetSwitchValuePath(switches::kLocalesDirPath);
|
||||
|
||||
if (!locales_dir.empty())
|
||||
PathService::Override(ui::DIR_LOCALES, locales_dir);
|
||||
}
|
||||
|
||||
std::string locale = command_line.GetSwitchValueASCII(switches::kLang);
|
||||
std::string locale = command_line->GetSwitchValueASCII(switches::kLang);
|
||||
DCHECK(!locale.empty());
|
||||
|
||||
const std::string loaded_locale =
|
||||
|
|
|
@ -62,6 +62,7 @@ MSVC_POP_WARNING();
|
|||
#include "third_party/WebKit/public/platform/WebURL.h"
|
||||
#include "third_party/WebKit/public/platform/WebWorkerRunLoop.h"
|
||||
#include "third_party/WebKit/public/web/WebDocument.h"
|
||||
#include "third_party/WebKit/public/web/WebElement.h"
|
||||
#include "third_party/WebKit/public/web/WebFrame.h"
|
||||
#include "third_party/WebKit/public/web/WebLocalFrame.h"
|
||||
#include "third_party/WebKit/public/web/WebKit.h"
|
||||
|
@ -150,6 +151,24 @@ class CefWebWorkerTaskRunner : public base::SequencedTaskRunner,
|
|||
int worker_id_;
|
||||
};
|
||||
|
||||
class CefPrintWebViewHelperDelegate :
|
||||
public printing::PrintWebViewHelper::Delegate {
|
||||
public:
|
||||
CefPrintWebViewHelperDelegate() {}
|
||||
|
||||
bool CancelPrerender(content::RenderView* render_view,
|
||||
int routing_id) override {
|
||||
return false;
|
||||
}
|
||||
|
||||
blink::WebElement GetPdfElement(blink::WebLocalFrame* frame) override {
|
||||
return blink::WebElement();
|
||||
}
|
||||
|
||||
private:
|
||||
DISALLOW_COPY_AND_ASSIGN(CefPrintWebViewHelperDelegate);
|
||||
};
|
||||
|
||||
#if defined(OS_WIN)
|
||||
static base::win::IATPatchFunction g_iat_patch_createdca;
|
||||
HDC WINAPI CreateDCAPatch(LPCSTR driver_name,
|
||||
|
@ -244,7 +263,8 @@ void CefContentRendererClient::OnBrowserDestroyed(CefBrowserImpl* browser) {
|
|||
}
|
||||
|
||||
void CefContentRendererClient::WebKitInitialized() {
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
|
||||
// Create global objects associated with the default Isolate.
|
||||
CefV8IsolateCreated();
|
||||
|
@ -305,10 +325,11 @@ void CefContentRendererClient::WebKitInitialized() {
|
|||
}
|
||||
|
||||
// The number of stack trace frames to capture for uncaught exceptions.
|
||||
if (command_line.HasSwitch(switches::kUncaughtExceptionStackSize)) {
|
||||
if (command_line->HasSwitch(switches::kUncaughtExceptionStackSize)) {
|
||||
int uncaught_exception_stack_size = 0;
|
||||
base::StringToInt(
|
||||
command_line.GetSwitchValueASCII(switches::kUncaughtExceptionStackSize),
|
||||
command_line->GetSwitchValueASCII(
|
||||
switches::kUncaughtExceptionStackSize),
|
||||
&uncaught_exception_stack_size);
|
||||
|
||||
if (uncaught_exception_stack_size > 0) {
|
||||
|
@ -760,7 +781,12 @@ void CefContentRendererClient::BrowserCreated(
|
|||
browsers_.insert(std::make_pair(render_view, browser));
|
||||
|
||||
new CefPrerendererClient(render_view);
|
||||
new printing::PrintWebViewHelper(render_view);
|
||||
new printing::PrintWebViewHelper(
|
||||
render_view,
|
||||
false,
|
||||
true,
|
||||
make_scoped_ptr<printing::PrintWebViewHelper::Delegate>(
|
||||
new CefPrintWebViewHelperDelegate()));
|
||||
|
||||
if (!command_line->HasSwitch(switches::kDisableSpellChecking))
|
||||
new SpellCheckProvider(render_view, spellcheck_.get());
|
||||
|
|
|
@ -63,9 +63,10 @@ class CefV8IsolateManager {
|
|||
DCHECK(isolate_);
|
||||
DCHECK(task_runner_.get());
|
||||
|
||||
const CommandLine& command_line = *CommandLine::ForCurrentProcess();
|
||||
if (command_line.HasSwitch(switches::kContextSafetyImplementation)) {
|
||||
std::string value = command_line.GetSwitchValueASCII(
|
||||
const base::CommandLine* command_line =
|
||||
base::CommandLine::ForCurrentProcess();
|
||||
if (command_line->HasSwitch(switches::kContextSafetyImplementation)) {
|
||||
std::string value = command_line->GetSwitchValueASCII(
|
||||
switches::kContextSafetyImplementation);
|
||||
int mode;
|
||||
if (base::StringToInt(value, &mode)) {
|
||||
|
|
|
@ -79,6 +79,14 @@ patches = [
|
|||
'name': 'browser_web_contents_1257',
|
||||
'path': '../content/browser/web_contents/',
|
||||
},
|
||||
{
|
||||
# Allow specification of a custom WebContentsView.
|
||||
# This change is required due to chrome_browser_process_stub.h indirectly
|
||||
# including chrome/browser/ui/browser.h on OS X.
|
||||
# http://code.google.com/p/chromiumembedded/issues/detail?id=1257
|
||||
'name': 'chrome_browser_1257',
|
||||
'path': '../chrome/browser/',
|
||||
},
|
||||
{
|
||||
# Allow customization of the WebView background color.
|
||||
# http://code.google.com/p/chromiumembedded/issues/detail?id=1161
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
diff --git web_contents_impl.cc web_contents_impl.cc
|
||||
index ca9112a..80e2b75 100644
|
||||
index 0326fe5..5daf313 100644
|
||||
--- web_contents_impl.cc
|
||||
+++ web_contents_impl.cc
|
||||
@@ -1152,22 +1152,29 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
|
||||
@@ -1164,22 +1164,29 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
|
||||
params.browser_context, params.site_instance, params.routing_id,
|
||||
params.main_frame_routing_id);
|
||||
|
||||
|
@ -48,7 +48,7 @@ index ca9112a..80e2b75 100644
|
|||
}
|
||||
CHECK(render_view_host_delegate_view_);
|
||||
CHECK(view_.get());
|
||||
@@ -1502,6 +1509,9 @@ void WebContentsImpl::CreateNewWindow(
|
||||
@@ -1517,6 +1524,9 @@ void WebContentsImpl::CreateNewWindow(
|
||||
static_cast<SessionStorageNamespaceImpl*>(session_storage_namespace);
|
||||
CHECK(session_storage_namespace_impl->IsFromContext(dom_storage_context));
|
||||
|
||||
|
@ -58,7 +58,7 @@ index ca9112a..80e2b75 100644
|
|||
if (delegate_ &&
|
||||
!delegate_->ShouldCreateWebContents(this,
|
||||
route_id,
|
||||
@@ -1509,7 +1519,9 @@ void WebContentsImpl::CreateNewWindow(
|
||||
@@ -1525,7 +1535,9 @@ void WebContentsImpl::CreateNewWindow(
|
||||
params.frame_name,
|
||||
params.target_url,
|
||||
partition_id,
|
||||
|
@ -69,7 +69,7 @@ index ca9112a..80e2b75 100644
|
|||
if (route_id != MSG_ROUTING_NONE &&
|
||||
!RenderViewHost::FromID(render_process_id, route_id)) {
|
||||
// If the embedder didn't create a WebContents for this route, we need to
|
||||
@@ -1529,6 +1541,8 @@ void WebContentsImpl::CreateNewWindow(
|
||||
@@ -1545,6 +1557,8 @@ void WebContentsImpl::CreateNewWindow(
|
||||
create_params.main_frame_routing_id = main_frame_route_id;
|
||||
create_params.opener = this;
|
||||
create_params.opener_suppressed = params.opener_suppressed;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
diff --git common.gypi common.gypi
|
||||
index c899e14..435bfb5 100644
|
||||
index 83a3df6..a0a0b60 100644
|
||||
--- common.gypi
|
||||
+++ common.gypi
|
||||
@@ -9,6 +9,9 @@
|
||||
|
|
|
@ -0,0 +1,30 @@
|
|||
diff --git ui/browser.cc ui/browser.cc
|
||||
index 6c926b9..a809f0f 100644
|
||||
--- ui/browser.cc
|
||||
+++ ui/browser.cc
|
||||
@@ -1567,7 +1567,9 @@ bool Browser::ShouldCreateWebContents(
|
||||
const base::string16& frame_name,
|
||||
const GURL& target_url,
|
||||
const std::string& partition_id,
|
||||
- content::SessionStorageNamespace* session_storage_namespace) {
|
||||
+ content::SessionStorageNamespace* session_storage_namespace,
|
||||
+ content::WebContentsView** view,
|
||||
+ content::RenderViewHostDelegateView** delegate_view) {
|
||||
if (window_container_type == WINDOW_CONTAINER_TYPE_BACKGROUND) {
|
||||
// If a BackgroundContents is created, suppress the normal WebContents.
|
||||
return !MaybeCreateBackgroundContents(route_id,
|
||||
diff --git ui/browser.h ui/browser.h
|
||||
index c9aad25..b682e4e 100644
|
||||
--- ui/browser.h
|
||||
+++ ui/browser.h
|
||||
@@ -587,7 +587,9 @@ class Browser : public TabStripModelObserver,
|
||||
const base::string16& frame_name,
|
||||
const GURL& target_url,
|
||||
const std::string& partition_id,
|
||||
- content::SessionStorageNamespace* session_storage_namespace) override;
|
||||
+ content::SessionStorageNamespace* session_storage_namespace,
|
||||
+ content::WebContentsView** view,
|
||||
+ content::RenderViewHostDelegateView** delegate_view) override;
|
||||
void WebContentsCreated(content::WebContents* source_contents,
|
||||
int opener_render_frame_id,
|
||||
const base::string16& frame_name,
|
|
@ -1,5 +1,5 @@
|
|||
diff --git content/browser/compositor/gpu_process_transport_factory.cc content/browser/compositor/gpu_process_transport_factory.cc
|
||||
index 33b3aa0..801598c 100644
|
||||
index c7c867e..5b0ea66 100644
|
||||
--- content/browser/compositor/gpu_process_transport_factory.cc
|
||||
+++ content/browser/compositor/gpu_process_transport_factory.cc
|
||||
@@ -106,6 +106,13 @@ GpuProcessTransportFactory::CreateOffscreenCommandBufferContext() {
|
||||
|
@ -17,7 +17,7 @@ index 33b3aa0..801598c 100644
|
|||
return scoped_ptr<cc::SoftwareOutputDevice>(new SoftwareOutputDeviceWin(
|
||||
compositor));
|
||||
diff --git ui/compositor/compositor.h ui/compositor/compositor.h
|
||||
index 5d9d793..da20f14 100644
|
||||
index 94cd1a91..b13e64fb 100644
|
||||
--- ui/compositor/compositor.h
|
||||
+++ ui/compositor/compositor.h
|
||||
@@ -13,6 +13,7 @@
|
||||
|
@ -56,7 +56,7 @@ index 5d9d793..da20f14 100644
|
|||
// Sets the root of the layer tree drawn by this Compositor. The root layer
|
||||
// must have no parent. The compositor's root layer is reset if the root layer
|
||||
// is destroyed. NULL can be passed to reset the root layer, in which case the
|
||||
@@ -304,6 +319,8 @@ class COMPOSITOR_EXPORT Compositor
|
||||
@@ -310,6 +325,8 @@ class COMPOSITOR_EXPORT Compositor
|
||||
|
||||
ui::ContextFactory* context_factory_;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
diff --git public/renderer/content_renderer_client.cc public/renderer/content_renderer_client.cc
|
||||
index c4df640..6de25db 100644
|
||||
index 489ee14..caa083e 100644
|
||||
--- public/renderer/content_renderer_client.cc
|
||||
+++ public/renderer/content_renderer_client.cc
|
||||
@@ -99,7 +99,6 @@ bool ContentRendererClient::AllowPopup() {
|
||||
|
@ -19,7 +19,7 @@ index c4df640..6de25db 100644
|
|||
bool ContentRendererClient::ShouldFork(blink::WebFrame* frame,
|
||||
const GURL& url,
|
||||
diff --git public/renderer/content_renderer_client.h public/renderer/content_renderer_client.h
|
||||
index 9a6c695..c29b83a 100644
|
||||
index bc82ce6..b112107 100644
|
||||
--- public/renderer/content_renderer_client.h
|
||||
+++ public/renderer/content_renderer_client.h
|
||||
@@ -195,7 +195,6 @@ class CONTENT_EXPORT ContentRendererClient {
|
||||
|
@ -39,10 +39,10 @@ index 9a6c695..c29b83a 100644
|
|||
// Returns true if we should fork a new process for the given navigation.
|
||||
// If |send_referrer| is set to false (which is the default), no referrer
|
||||
diff --git renderer/render_frame_impl.cc renderer/render_frame_impl.cc
|
||||
index fa041b7..28b4a04 100644
|
||||
index 473b185..2d082b5 100644
|
||||
--- renderer/render_frame_impl.cc
|
||||
+++ renderer/render_frame_impl.cc
|
||||
@@ -3748,7 +3748,6 @@ void RenderFrameImpl::OnCommitNavigation(
|
||||
@@ -3798,7 +3798,6 @@ void RenderFrameImpl::OnCommitNavigation(
|
||||
WebNavigationPolicy RenderFrameImpl::DecidePolicyForNavigation(
|
||||
RenderFrame* render_frame,
|
||||
const NavigationPolicyInfo& info) {
|
||||
|
@ -50,7 +50,7 @@ index fa041b7..28b4a04 100644
|
|||
// The handlenavigation API is deprecated and will be removed once
|
||||
// crbug.com/325351 is resolved.
|
||||
if (info.urlRequest.url() != GURL(kSwappedOutURL) &&
|
||||
@@ -3763,7 +3762,6 @@ WebNavigationPolicy RenderFrameImpl::DecidePolicyForNavigation(
|
||||
@@ -3813,7 +3812,6 @@ WebNavigationPolicy RenderFrameImpl::DecidePolicyForNavigation(
|
||||
info.isRedirect)) {
|
||||
return blink::WebNavigationPolicyIgnore;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
diff --git resource_ids resource_ids
|
||||
index 42cc710..0feaec2 100644
|
||||
index efd5760..62dd7b0 100644
|
||||
--- resource_ids
|
||||
+++ resource_ids
|
||||
@@ -14,6 +14,12 @@
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
diff --git message_loop.cc message_loop.cc
|
||||
index 2f4a03c..ea7d505 100644
|
||||
index 8180733..927f755 100644
|
||||
--- message_loop.cc
|
||||
+++ message_loop.cc
|
||||
@@ -160,7 +160,6 @@ MessageLoop::MessageLoop(scoped_ptr<MessagePump> pump)
|
||||
@@ -148,7 +148,6 @@ MessageLoop::MessageLoop(scoped_ptr<MessagePump> pump)
|
||||
MessageLoop::~MessageLoop() {
|
||||
DCHECK_EQ(this, current());
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
diff --git public/common/common_param_traits_macros.h public/common/common_param_traits_macros.h
|
||||
index 85e98ce..46b7fb3 100644
|
||||
index a064d53..8abea71 100644
|
||||
--- public/common/common_param_traits_macros.h
|
||||
+++ public/common/common_param_traits_macros.h
|
||||
@@ -186,6 +186,7 @@ IPC_STRUCT_TRAITS_BEGIN(content::WebPreferences)
|
||||
@@ -188,6 +188,7 @@ IPC_STRUCT_TRAITS_BEGIN(content::WebPreferences)
|
||||
IPC_STRUCT_TRAITS_MEMBER(main_frame_resizes_are_orientation_changes)
|
||||
IPC_STRUCT_TRAITS_MEMBER(initialize_at_minimum_page_scale)
|
||||
IPC_STRUCT_TRAITS_MEMBER(smart_insert_delete_enabled)
|
||||
|
@ -11,10 +11,10 @@ index 85e98ce..46b7fb3 100644
|
|||
IPC_STRUCT_TRAITS_MEMBER(navigate_on_drag_drop)
|
||||
IPC_STRUCT_TRAITS_MEMBER(spatial_navigation_enabled)
|
||||
diff --git public/common/web_preferences.cc public/common/web_preferences.cc
|
||||
index 17bf9dc..b76213c 100644
|
||||
index a5574d3..8e9e391 100644
|
||||
--- public/common/web_preferences.cc
|
||||
+++ public/common/web_preferences.cc
|
||||
@@ -178,6 +178,7 @@ WebPreferences::WebPreferences()
|
||||
@@ -179,6 +179,7 @@ WebPreferences::WebPreferences()
|
||||
rubber_banding_on_compositor_thread(false),
|
||||
use_solid_color_scrollbars(false),
|
||||
navigate_on_drag_drop(true),
|
||||
|
@ -23,10 +23,10 @@ index 17bf9dc..b76213c 100644
|
|||
v8_script_streaming_enabled(false),
|
||||
v8_script_streaming_mode(V8_SCRIPT_STREAMING_MODE_ALL),
|
||||
diff --git public/common/web_preferences.h public/common/web_preferences.h
|
||||
index c850133..1cfb3cc 100644
|
||||
index 78559f2..028a94e 100644
|
||||
--- public/common/web_preferences.h
|
||||
+++ public/common/web_preferences.h
|
||||
@@ -165,6 +165,7 @@ struct CONTENT_EXPORT WebPreferences {
|
||||
@@ -169,6 +169,7 @@ struct CONTENT_EXPORT WebPreferences {
|
||||
bool rubber_banding_on_compositor_thread;
|
||||
bool use_solid_color_scrollbars;
|
||||
bool navigate_on_drag_drop;
|
||||
|
@ -35,10 +35,10 @@ index c850133..1cfb3cc 100644
|
|||
bool v8_script_streaming_enabled;
|
||||
V8ScriptStreamingMode v8_script_streaming_mode;
|
||||
diff --git renderer/render_view_impl.cc renderer/render_view_impl.cc
|
||||
index 61f4c88..6772f2d 100644
|
||||
index 623cb14..5d21fc5 100644
|
||||
--- renderer/render_view_impl.cc
|
||||
+++ renderer/render_view_impl.cc
|
||||
@@ -974,6 +974,8 @@ void RenderView::ApplyWebPreferences(const WebPreferences& prefs,
|
||||
@@ -958,6 +958,8 @@ void RenderView::ApplyWebPreferences(const WebPreferences& prefs,
|
||||
|
||||
settings->setJavaEnabled(prefs.java_enabled);
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
diff --git content_browser_client.cc content_browser_client.cc
|
||||
index c5c672f..dd84884 100644
|
||||
index 91c8a4d..10c3b28 100644
|
||||
--- content_browser_client.cc
|
||||
+++ content_browser_client.cc
|
||||
@@ -273,6 +273,10 @@ bool ContentBrowserClient::IsFastShutdownPossible() {
|
||||
@@ -278,6 +278,10 @@ bool ContentBrowserClient::IsFastShutdownPossible() {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -14,18 +14,18 @@ index c5c672f..dd84884 100644
|
|||
return base::FilePath();
|
||||
}
|
||||
diff --git content_browser_client.h content_browser_client.h
|
||||
index 0934c9a..035ac1b 100644
|
||||
index 627353d..e1805f4 100644
|
||||
--- content_browser_client.h
|
||||
+++ content_browser_client.h
|
||||
@@ -29,6 +29,7 @@
|
||||
@@ -28,6 +28,7 @@
|
||||
#include "net/url_request/url_request_interceptor.h"
|
||||
#include "net/url_request/url_request_job_factory.h"
|
||||
#include "storage/browser/fileapi/file_system_context.h"
|
||||
+#include "third_party/skia/include/core/SkColor.h"
|
||||
#include "third_party/WebKit/public/platform/WebNotificationPermission.h"
|
||||
#include "ui/base/window_open_disposition.h"
|
||||
|
||||
@@ -514,6 +515,9 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
#if defined(OS_POSIX) && !defined(OS_MACOSX)
|
||||
@@ -499,6 +500,9 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
// Clears browser cookies.
|
||||
virtual void ClearCookies(RenderViewHost* rvh) {}
|
||||
|
||||
|
@ -62,7 +62,7 @@ index 7afc338..c014439 100644
|
|||
WebContents::CreateParams::~CreateParams() {
|
||||
}
|
||||
diff --git web_contents.h web_contents.h
|
||||
index 5478a37..d34c1da 100644
|
||||
index 87becd6..b66d3fb 100644
|
||||
--- web_contents.h
|
||||
+++ web_contents.h
|
||||
@@ -52,9 +52,11 @@ class PageState;
|
||||
|
@ -77,7 +77,7 @@ index 5478a37..d34c1da 100644
|
|||
struct CustomContextMenuContext;
|
||||
struct DropData;
|
||||
struct Manifest;
|
||||
@@ -118,6 +120,10 @@ class WebContents : public PageNavigator,
|
||||
@@ -122,6 +124,10 @@ class WebContents : public PageNavigator,
|
||||
// Used to specify the location context which display the new view should
|
||||
// belong. This can be NULL if not needed.
|
||||
gfx::NativeView context;
|
||||
|
@ -89,10 +89,10 @@ index 5478a37..d34c1da 100644
|
|||
|
||||
// Creates a new WebContents.
|
||||
diff --git web_contents_delegate.cc web_contents_delegate.cc
|
||||
index eefb8ab..b4646f8 100644
|
||||
index e846041..da3c9e6 100644
|
||||
--- web_contents_delegate.cc
|
||||
+++ web_contents_delegate.cc
|
||||
@@ -136,7 +136,9 @@ bool WebContentsDelegate::ShouldCreateWebContents(
|
||||
@@ -137,7 +137,9 @@ bool WebContentsDelegate::ShouldCreateWebContents(
|
||||
const base::string16& frame_name,
|
||||
const GURL& target_url,
|
||||
const std::string& partition_id,
|
||||
|
@ -104,7 +104,7 @@ index eefb8ab..b4646f8 100644
|
|||
}
|
||||
|
||||
diff --git web_contents_delegate.h web_contents_delegate.h
|
||||
index 17bed7f..64181d0 100644
|
||||
index 344fbaf..adaa39d 100644
|
||||
--- web_contents_delegate.h
|
||||
+++ web_contents_delegate.h
|
||||
@@ -36,9 +36,11 @@ class DownloadItem;
|
||||
|
@ -119,7 +119,7 @@ index 17bed7f..64181d0 100644
|
|||
struct ColorSuggestion;
|
||||
struct ContextMenuParams;
|
||||
struct DropData;
|
||||
@@ -313,7 +315,9 @@ class CONTENT_EXPORT WebContentsDelegate {
|
||||
@@ -314,7 +316,9 @@ class CONTENT_EXPORT WebContentsDelegate {
|
||||
const base::string16& frame_name,
|
||||
const GURL& target_url,
|
||||
const std::string& partition_id,
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
diff --git core/frame/FrameView.cpp core/frame/FrameView.cpp
|
||||
index d8b6105..33abf9d 100644
|
||||
index 61cf629..f734ee9 100644
|
||||
--- core/frame/FrameView.cpp
|
||||
+++ core/frame/FrameView.cpp
|
||||
@@ -145,8 +145,10 @@ FrameView::FrameView(LocalFrame* frame)
|
||||
@@ -144,8 +144,10 @@ FrameView::FrameView(LocalFrame* frame)
|
||||
if (!m_frame->isMainFrame())
|
||||
return;
|
||||
|
||||
|
|
|
@ -12,10 +12,10 @@ index a8e088c..838b6a0 100644
|
|||
return host ? host->GetAcceleratedWidget() : NULL;
|
||||
}
|
||||
diff --git desktop_aura/desktop_window_tree_host_win.cc desktop_aura/desktop_window_tree_host_win.cc
|
||||
index 3752373..f588160 100644
|
||||
index 1e8d67d..34b535a 100644
|
||||
--- desktop_aura/desktop_window_tree_host_win.cc
|
||||
+++ desktop_aura/desktop_window_tree_host_win.cc
|
||||
@@ -131,7 +131,9 @@ void DesktopWindowTreeHostWin::Init(aura::Window* content_window,
|
||||
@@ -133,7 +133,9 @@ void DesktopWindowTreeHostWin::Init(aura::Window* content_window,
|
||||
native_widget_delegate_);
|
||||
|
||||
HWND parent_hwnd = NULL;
|
||||
|
@ -26,7 +26,7 @@ index 3752373..f588160 100644
|
|||
parent_hwnd = params.parent->GetHost()->GetAcceleratedWidget();
|
||||
|
||||
message_handler_->set_remove_standard_frame(params.remove_standard_frame);
|
||||
@@ -818,6 +820,7 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() {
|
||||
@@ -820,6 +822,7 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() {
|
||||
|
||||
void DesktopWindowTreeHostWin::HandleNativeFocus(HWND last_focused_window) {
|
||||
// TODO(beng): inform the native_widget_delegate_.
|
||||
|
@ -34,7 +34,7 @@ index 3752373..f588160 100644
|
|||
InputMethod* input_method = GetInputMethod();
|
||||
if (input_method)
|
||||
input_method->OnFocus();
|
||||
@@ -825,6 +828,7 @@ void DesktopWindowTreeHostWin::HandleNativeFocus(HWND last_focused_window) {
|
||||
@@ -827,6 +830,7 @@ void DesktopWindowTreeHostWin::HandleNativeFocus(HWND last_focused_window) {
|
||||
|
||||
void DesktopWindowTreeHostWin::HandleNativeBlur(HWND focused_window) {
|
||||
// TODO(beng): inform the native_widget_delegate_.
|
||||
|
@ -43,10 +43,10 @@ index 3752373..f588160 100644
|
|||
if (input_method)
|
||||
input_method->OnBlur();
|
||||
diff --git desktop_aura/desktop_window_tree_host_x11.cc desktop_aura/desktop_window_tree_host_x11.cc
|
||||
index dd8aa40..5d2a63d 100644
|
||||
index 54d67ad..13e5163 100644
|
||||
--- desktop_aura/desktop_window_tree_host_x11.cc
|
||||
+++ desktop_aura/desktop_window_tree_host_x11.cc
|
||||
@@ -150,7 +150,8 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11(
|
||||
@@ -152,7 +152,8 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11(
|
||||
window_shape_(NULL),
|
||||
custom_window_shape_(false),
|
||||
urgency_hint_set_(false),
|
||||
|
@ -56,7 +56,7 @@ index dd8aa40..5d2a63d 100644
|
|||
}
|
||||
|
||||
DesktopWindowTreeHostX11::~DesktopWindowTreeHostX11() {
|
||||
@@ -353,7 +354,8 @@ void DesktopWindowTreeHostX11::CloseNow() {
|
||||
@@ -355,7 +356,8 @@ void DesktopWindowTreeHostX11::CloseNow() {
|
||||
// Actually free our native resources.
|
||||
if (ui::PlatformEventSource::GetInstance())
|
||||
ui::PlatformEventSource::GetInstance()->RemovePlatformEventDispatcher(this);
|
||||
|
@ -66,7 +66,7 @@ index dd8aa40..5d2a63d 100644
|
|||
xwindow_ = None;
|
||||
|
||||
desktop_native_widget_aura_->OnHostClosed();
|
||||
@@ -447,6 +449,8 @@ void DesktopWindowTreeHostX11::GetWindowPlacement(
|
||||
@@ -449,6 +451,8 @@ void DesktopWindowTreeHostX11::GetWindowPlacement(
|
||||
}
|
||||
|
||||
gfx::Rect DesktopWindowTreeHostX11::GetWindowBoundsInScreen() const {
|
||||
|
@ -75,7 +75,7 @@ index dd8aa40..5d2a63d 100644
|
|||
return bounds_;
|
||||
}
|
||||
|
||||
@@ -459,6 +463,8 @@ gfx::Rect DesktopWindowTreeHostX11::GetClientAreaBoundsInScreen() const {
|
||||
@@ -461,6 +465,8 @@ gfx::Rect DesktopWindowTreeHostX11::GetClientAreaBoundsInScreen() const {
|
||||
// Attempts to calculate the rect by asking the NonClientFrameView what it
|
||||
// thought its GetBoundsForClientView() were broke combobox drop down
|
||||
// placement.
|
||||
|
@ -84,7 +84,7 @@ index dd8aa40..5d2a63d 100644
|
|||
return bounds_;
|
||||
}
|
||||
|
||||
@@ -882,6 +888,8 @@ void DesktopWindowTreeHostX11::Hide() {
|
||||
@@ -884,6 +890,8 @@ void DesktopWindowTreeHostX11::Hide() {
|
||||
}
|
||||
|
||||
gfx::Rect DesktopWindowTreeHostX11::GetBounds() const {
|
||||
|
@ -93,7 +93,7 @@ index dd8aa40..5d2a63d 100644
|
|||
return bounds_;
|
||||
}
|
||||
|
||||
@@ -937,6 +945,8 @@ void DesktopWindowTreeHostX11::SetBounds(const gfx::Rect& requested_bounds) {
|
||||
@@ -939,6 +947,8 @@ void DesktopWindowTreeHostX11::SetBounds(const gfx::Rect& requested_bounds) {
|
||||
}
|
||||
|
||||
gfx::Point DesktopWindowTreeHostX11::GetLocationOnNativeScreen() const {
|
||||
|
@ -102,7 +102,7 @@ index dd8aa40..5d2a63d 100644
|
|||
return bounds_.origin();
|
||||
}
|
||||
|
||||
@@ -1056,10 +1066,14 @@ void DesktopWindowTreeHostX11::InitX11Window(
|
||||
@@ -1058,10 +1068,14 @@ void DesktopWindowTreeHostX11::InitX11Window(
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -118,7 +118,7 @@ index dd8aa40..5d2a63d 100644
|
|||
bounds_.x(), bounds_.y(),
|
||||
bounds_.width(), bounds_.height(),
|
||||
0, // border width
|
||||
@@ -1696,6 +1710,10 @@ uint32_t DesktopWindowTreeHostX11::DispatchEvent(
|
||||
@@ -1698,6 +1712,10 @@ uint32_t DesktopWindowTreeHostX11::DispatchEvent(
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -130,7 +130,7 @@ index dd8aa40..5d2a63d 100644
|
|||
if (xev->xfocus.mode != NotifyGrab) {
|
||||
ReleaseCapture();
|
||||
diff --git desktop_aura/desktop_window_tree_host_x11.h desktop_aura/desktop_window_tree_host_x11.h
|
||||
index 1a4f725..c7ad0148 100644
|
||||
index d6b5cc8..bf20d4c 100644
|
||||
--- desktop_aura/desktop_window_tree_host_x11.h
|
||||
+++ desktop_aura/desktop_window_tree_host_x11.h
|
||||
@@ -85,6 +85,8 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
|
||||
|
@ -163,7 +163,7 @@ index 1a4f725..c7ad0148 100644
|
|||
};
|
||||
|
||||
diff --git widget.cc widget.cc
|
||||
index 7f649c0..5352f6a 100644
|
||||
index a24f781..52a1755 100644
|
||||
--- widget.cc
|
||||
+++ widget.cc
|
||||
@@ -109,6 +109,7 @@ Widget::InitParams::InitParams()
|
||||
|
@ -206,7 +206,7 @@ index 7f649c0..5352f6a 100644
|
|||
// This must come after SetContentsView() or it might not be able to find
|
||||
// the correct NativeTheme (on Linux). See http://crbug.com/384492
|
||||
diff --git widget.h widget.h
|
||||
index e208d5f..89c9cac 100644
|
||||
index e0f6180..25f557f 100644
|
||||
--- widget.h
|
||||
+++ widget.h
|
||||
@@ -235,6 +235,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
diff --git Source/web/ChromeClientImpl.cpp Source/web/ChromeClientImpl.cpp
|
||||
index d98ab12..57c2e70 100644
|
||||
index 781c45a..0fda8bf 100644
|
||||
--- Source/web/ChromeClientImpl.cpp
|
||||
+++ Source/web/ChromeClientImpl.cpp
|
||||
@@ -726,7 +726,7 @@ bool ChromeClientImpl::hasOpenedPopup() const
|
||||
@@ -741,7 +741,7 @@ bool ChromeClientImpl::hasOpenedPopup() const
|
||||
|
||||
PassRefPtrWillBeRawPtr<PopupMenu> ChromeClientImpl::createPopupMenu(LocalFrame& frame, PopupMenuClient* client) const
|
||||
PassRefPtrWillBeRawPtr<PopupMenu> ChromeClientImpl::createPopupMenu(LocalFrame& frame, PopupMenuClient* client)
|
||||
{
|
||||
- if (WebViewImpl::useExternalPopupMenus())
|
||||
+ if (m_webView->useExternalPopupMenus())
|
||||
|
@ -12,10 +12,10 @@ index d98ab12..57c2e70 100644
|
|||
|
||||
return adoptRefWillBeNoop(new PopupMenuChromium(frame, client));
|
||||
diff --git Source/web/WebViewImpl.cpp Source/web/WebViewImpl.cpp
|
||||
index 3626eac..91b1d66 100644
|
||||
index 8ee7335..4e2384d 100644
|
||||
--- Source/web/WebViewImpl.cpp
|
||||
+++ Source/web/WebViewImpl.cpp
|
||||
@@ -386,6 +386,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client)
|
||||
@@ -379,6 +379,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client)
|
||||
, m_fakePageScaleAnimationPageScaleFactor(0)
|
||||
, m_fakePageScaleAnimationUseAnchor(false)
|
||||
, m_contextMenuAllowed(false)
|
||||
|
@ -23,7 +23,7 @@ index 3626eac..91b1d66 100644
|
|||
, m_doingDragAndDrop(false)
|
||||
, m_ignoreInputEvents(false)
|
||||
, m_compositorDeviceScaleFactorOverride(0)
|
||||
@@ -3986,9 +3987,14 @@ void WebViewImpl::deviceOrPageScaleFactorChanged()
|
||||
@@ -3974,9 +3975,14 @@ void WebViewImpl::deviceOrPageScaleFactorChanged()
|
||||
m_page->inspectorController().deviceOrPageScaleFactorChanged();
|
||||
}
|
||||
|
||||
|
@ -40,10 +40,10 @@ index 3626eac..91b1d66 100644
|
|||
|
||||
void WebViewImpl::startDragging(LocalFrame* frame,
|
||||
diff --git Source/web/WebViewImpl.h Source/web/WebViewImpl.h
|
||||
index 8229f02..d22bb85 100644
|
||||
index 5264cf5..f49be43 100644
|
||||
--- Source/web/WebViewImpl.h
|
||||
+++ Source/web/WebViewImpl.h
|
||||
@@ -380,7 +380,8 @@ public:
|
||||
@@ -370,7 +370,8 @@ public:
|
||||
|
||||
// Returns true if popup menus should be rendered by the browser, false if
|
||||
// they should be rendered by WebKit (which is the default).
|
||||
|
@ -53,7 +53,7 @@ index 8229f02..d22bb85 100644
|
|||
|
||||
bool contextMenuAllowed() const
|
||||
{
|
||||
@@ -672,6 +673,8 @@ private:
|
||||
@@ -662,6 +663,8 @@ private:
|
||||
|
||||
bool m_contextMenuAllowed;
|
||||
|
||||
|
@ -63,10 +63,10 @@ index 8229f02..d22bb85 100644
|
|||
|
||||
bool m_ignoreInputEvents;
|
||||
diff --git public/web/WebView.h public/web/WebView.h
|
||||
index e6c4924..6df09db 100644
|
||||
index dd5fa13..84a1e5e 100644
|
||||
--- public/web/WebView.h
|
||||
+++ public/web/WebView.h
|
||||
@@ -407,6 +407,7 @@ public:
|
||||
@@ -405,6 +405,7 @@ public:
|
||||
|
||||
// Sets whether select popup menus should be rendered by the browser.
|
||||
BLINK_EXPORT static void setUseExternalPopupMenus(bool);
|
||||
|
|
|
@ -91,6 +91,7 @@ const CefRect kSelectRect(461, 21, 87, 26);
|
|||
const CefRect kExpandedSelectRect(465, 42, 80, 262);
|
||||
const CefRect kDropDivRect(9, 330, 52, 52);
|
||||
const CefRect kDragDivRect(60, 330, 52, 52);
|
||||
const int kVerticalScrollbarWidth = 15;
|
||||
#elif defined(OS_LINUX)
|
||||
const CefRect kEditBoxRect(434, 246, 60, 20);
|
||||
const CefRect kNavigateButtonRect(380, 271, 140, 22);
|
||||
|
@ -642,8 +643,19 @@ class OSRTestHandler : public RoutingTestHandler,
|
|||
browser->GetHost()->SendMouseWheelEvent(mouse_event, 0, - deltaY);
|
||||
} else {
|
||||
EXPECT_EQ(dirtyRects.size(), 1U);
|
||||
EXPECT_EQ(dirtyRects[0],
|
||||
GetScaledRect(CefRect(0, 0, kOsrWidth, kOsrHeight)));
|
||||
#if defined(OS_MACOSX)
|
||||
const CefRect& expected_rect1 =
|
||||
GetScaledRect(CefRect(0, 0, kOsrWidth, kOsrHeight));
|
||||
const CefRect& expected_rect2 =
|
||||
GetScaledRect(CefRect(0, 0, kOsrWidth - kVerticalScrollbarWidth,
|
||||
kOsrHeight));
|
||||
EXPECT_TRUE(dirtyRects[0] == expected_rect1 ||
|
||||
dirtyRects[0] == expected_rect2);
|
||||
#else
|
||||
const CefRect& expected_rect =
|
||||
GetScaledRect(CefRect(0, 0, kOsrWidth, kOsrHeight));
|
||||
EXPECT_EQ(expected_rect, dirtyRects[0]);
|
||||
#endif
|
||||
DestroySucceededTestSoon();
|
||||
}
|
||||
break;
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
|
||||
#include "tests/cefclient/client_switches.h"
|
||||
|
||||
CommandLine* CefTestSuite::commandline_ = NULL;
|
||||
base::CommandLine* CefTestSuite::commandline_ = NULL;
|
||||
|
||||
CefTestSuite::CefTestSuite(int argc, char** argv)
|
||||
: TestSuite(argc, argv) {
|
||||
|
@ -36,7 +36,7 @@ void CefTestSuite::InitCommandLine(int argc, const char* const* argv) {
|
|||
return;
|
||||
}
|
||||
|
||||
commandline_ = new CommandLine(CommandLine::NO_PROGRAM);
|
||||
commandline_ = new base::CommandLine(base::CommandLine::NO_PROGRAM);
|
||||
#if defined(OS_WIN)
|
||||
commandline_->ParseFromString(::GetCommandLineW());
|
||||
#elif defined(OS_POSIX)
|
||||
|
@ -109,7 +109,8 @@ void CefTestSuite::Initialize() {
|
|||
|
||||
// In some cases, we do not want to see standard error dialogs.
|
||||
if (!base::debug::BeingDebugged() &&
|
||||
!CommandLine::ForCurrentProcess()->HasSwitch("show-error-dialogs")) {
|
||||
!base::CommandLine::ForCurrentProcess()->HasSwitch(
|
||||
"show-error-dialogs")) {
|
||||
SuppressErrorDialogs();
|
||||
base::debug::SetSuppressDebugUI(true);
|
||||
logging::SetLogAssertHandler(UnitTestAssertHandler);
|
||||
|
|
Loading…
Reference in New Issue