Skip to content

Commit fe744dd

Browse files
GnorTechrogerwang
authored andcommitted
rebase to Chromium 63
1 parent 4c05ff0 commit fe744dd

25 files changed

+37
-147
lines changed

BUILD.gn

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ if (is_mac) {
55
#chrome_framework_name = chrome_product_full_name + " Framework"
66
}
77
import("//build/util/version.gni")
8+
import("//components/nacl/features.gni")
89

910
group("nwjs") {
1011
deps = [
@@ -14,6 +15,9 @@ group("nwjs") {
1415
if (is_mac) {
1516
deps += [ ":copy_ffmpeg" ]
1617
}
18+
if (is_linux) {
19+
deps += [ "//chrome:xdg_mime" ]
20+
}
1721
}
1822

1923
component("nw_base") {
@@ -318,7 +322,7 @@ if (is_win && !is_component_build) {
318322

319323
if (is_mac && !is_component_build) {
320324
group("dump") {
321-
deps = [ "//breakpad:dump_syms",
325+
deps = [ "//third_party/breakpad:dump_syms",
322326
"//chrome",
323327
":copy_node",
324328
":payload",
@@ -362,7 +366,7 @@ if (is_linux && !is_component_build) {
362366
inputs = [
363367
"$root_build_dir/dump_syms",
364368
]
365-
deps += [ "//breakpad:dump_syms" ]
369+
deps += [ "//third_party/breakpad:dump_syms" ]
366370
} else {
367371
inputs = [
368372
"tools/dump_syms",
@@ -411,7 +415,7 @@ if (!is_component_build) {
411415
]
412416
deps = [ "//components/resources:about_credits_nw" ]
413417
if (nwjs_sdk && (is_mac || is_linux)) {
414-
deps += [ "//breakpad:minidump_stackwalk" ]
418+
deps += [ "//third_party/breakpad:minidump_stackwalk" ]
415419
}
416420
}
417421
if (nwjs_sdk) {

patch/patches/ffmpeg.patch

Lines changed: 5 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -443,15 +443,6 @@ diff --git chromium/config/Chromium/win/ia32/config.h chromium/config/Chromium/w
443443
index 655f550aa5..5995f8091e 100644
444444
--- chromium/config/Chromium/win/ia32/config.h
445445
+++ chromium/config/Chromium/win/ia32/config.h
446-
@@ -1,7 +1,7 @@
447-
/* Automatically generated by configure - do not modify! */
448-
#ifndef FFMPEG_CONFIG_H
449-
#define FFMPEG_CONFIG_H
450-
-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/cygdrive/c/src/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --toolchain=msvc --cpu=opteron --enable-yasm --extra-cflags=-I/cygdrive/c/src/chromium/src/third_party/ffmpeg/chromium/include/win --cc='cygwin-wrapper cl' --ld='cygwin-wrapper link' --nm='cygwin-wrapper dumpbin -symbols' --ar='cygwin-wrapper lib'"
451-
+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac,mp3' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3' --enable-parser='opus,vorbis,flac,mpegaudio' --extra-cflags=-I/cygdrive/c/src/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --toolchain=msvc --cpu=opteron --enable-yasm --extra-cflags=-I/cygdrive/c/src/chromium/src/third_party/ffmpeg/chromium/include/win --cc='cygwin-wrapper cl' --ld='cygwin-wrapper link' --nm='cygwin-wrapper dumpbin -symbols' --ar='cygwin-wrapper lib'"
452-
#define FFMPEG_LICENSE "LGPL version 2.1 or later"
453-
#define CONFIG_THIS_YEAR 2017
454-
#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
455446
@@ -542,7 +542,7 @@
456447
#define CONFIG_FFPROBE 0
457448
#define CONFIG_FFSERVER 0
@@ -558,15 +549,6 @@ diff --git chromium/config/Chromium/win/x64/config.h chromium/config/Chromium/wi
558549
index 95202da1be..ef92b87e73 100644
559550
--- chromium/config/Chromium/win/x64/config.h
560551
+++ chromium/config/Chromium/win/x64/config.h
561-
@@ -1,7 +1,7 @@
562-
/* Automatically generated by configure - do not modify! */
563-
#ifndef FFMPEG_CONFIG_H
564-
#define FFMPEG_CONFIG_H
565-
-#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac' --enable-parser='opus,vorbis,flac' --extra-cflags=-I/cygdrive/c/src/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --toolchain=msvc --cpu=opteron --enable-yasm --extra-cflags=-I/cygdrive/c/src/chromium/src/third_party/ffmpeg/chromium/include/win --cc='cygwin-wrapper cl' --ld='cygwin-wrapper link' --nm='cygwin-wrapper dumpbin -symbols' --ar='cygwin-wrapper lib'"
566-
+#define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-fft --enable-rdft --enable-static --enable-libopus --disable-bzlib --disable-error-resilience --disable-iconv --disable-lzo --disable-network --disable-schannel --disable-sdl --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-d3d11va --disable-dxva2 --disable-vaapi --disable-vda --disable-vdpau --disable-videotoolbox --disable-nvenc --disable-cuda --disable-cuvid --enable-decoder='vorbis,libopus,flac,mp3' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3' --enable-parser='opus,vorbis,flac,mpegaudio' --extra-cflags=-I/cygdrive/c/src/chromium/src/third_party/opus/src/include --optflags='\"-O2\"' --enable-decoder='theora,vp8' --enable-parser='vp3,vp8' --toolchain=msvc --cpu=opteron --enable-yasm --extra-cflags=-I/cygdrive/c/src/chromium/src/third_party/ffmpeg/chromium/include/win --cc='cygwin-wrapper cl' --ld='cygwin-wrapper link' --nm='cygwin-wrapper dumpbin -symbols' --ar='cygwin-wrapper lib'"
567-
#define FFMPEG_LICENSE "LGPL version 2.1 or later"
568-
#define CONFIG_THIS_YEAR 2017
569-
#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
570552
@@ -542,7 +542,7 @@
571553
#define CONFIG_FFPROBE 0
572554
#define CONFIG_FFSERVER 0
@@ -661,18 +643,17 @@ index 8c016c7000..73869abae1 100644
661643
"libavformat/mux.c",
662644
"libavformat/oggdec.c",
663645
"libavformat/oggparsecelt.c",
664-
@@ -193,21 +205,10 @@ if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && curr
665-
"libavcodec/aactab.c",
646+
@@ -193,20 +205,9 @@ if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && curr
666647
"libavcodec/ac3tab.c",
667648
"libavcodec/autorename_libavcodec_aacdec.c",
649+
"libavcodec/autorename_libavcodec_mdct15.c",
668650
- "libavcodec/autorename_libavcodec_mpegaudiodsp.c",
669651
"libavcodec/autorename_libavcodec_sbrdsp.c",
670652
"libavcodec/cbrt_data.c",
671653
- "libavcodec/dct.c",
672654
- "libavcodec/dct32_fixed.c",
673655
- "libavcodec/dct32_float.c",
674656
"libavcodec/kbdwin.c",
675-
"libavcodec/mdct15.c",
676657
- "libavcodec/mpegaudio.c",
677658
- "libavcodec/mpegaudio_parser.c",
678659
- "libavcodec/mpegaudiodec_fixed.c",
@@ -709,11 +690,12 @@ index 8c016c7000..73869abae1 100644
709690
"libavcodec/x86/fft.asm",
710691
"libavcodec/x86/flacdsp.asm",
711692
"libavcodec/x86/vorbisdsp.asm",
712-
@@ -322,8 +326,6 @@ if ((is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_l
693+
@@ -322,9 +326,7 @@ if ((is_mac) || (is_win) || (use_linux_config && current_cpu == "x64") || (use_l
713694
if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") || (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (is_win && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "ChromeOS") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome") || (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "ChromeOS")) {
714695
ffmpeg_c_sources += [
715696
"libavcodec/x86/aacpsdsp_init.c",
716697
- "libavcodec/x86/dct_init.c",
698+
"libavcodec/x86/mdct15_init.c",
717699
- "libavcodec/x86/mpegaudiodsp.c",
718700
"libavcodec/x86/sbrdsp_init.c",
719701
]
@@ -724,6 +706,6 @@ index 8c016c7000..73869abae1 100644
724706
"libavcodec/x86/aacpsdsp.asm",
725707
- "libavcodec/x86/dct32.asm",
726708
- "libavcodec/x86/imdct36.asm",
709+
"libavcodec/x86/mdct15.asm",
727710
"libavcodec/x86/sbrdsp.asm",
728711
]
729-
}

src/api/nw_app_api.cc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include "chrome/browser/extensions/extension_service.h"
1010
#include "content/nw/src/api/nw_app.h"
1111
#include "content/nw/src/nw_base.h"
12+
#include "content/public/browser/render_frame_host.h"
1213
#include "content/public/browser/render_process_host.h"
1314
#include "content/public/browser/render_view_host.h"
1415
#include "content/public/browser/storage_partition.h"
@@ -173,7 +174,7 @@ bool NwAppSetProxyConfigFunction::RunNWSync(base::ListValue* response, std::stri
173174

174175
base::ThreadRestrictions::ScopedAllowWait allow_wait;
175176

176-
content::RenderProcessHost* render_process_host = GetSenderWebContents()->GetRenderProcessHost();
177+
content::RenderProcessHost* render_process_host = GetSenderWebContents()->GetMainFrame()->GetProcess();
177178
net::URLRequestContextGetter* context_getter =
178179
render_process_host->GetStoragePartition()->GetURLRequestContext();
179180

@@ -182,7 +183,7 @@ bool NwAppSetProxyConfigFunction::RunNWSync(base::ListValue* response, std::stri
182183
content::BrowserThread::PostTask(
183184
content::BrowserThread::IO, FROM_HERE,
184185
base::Bind(&SetProxyConfigCallback, &done,
185-
make_scoped_refptr(context_getter), config));
186+
base::WrapRefCounted(context_getter), config));
186187
done.Wait();
187188
return true;
188189
}

src/api/nw_window_api.cc

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@
33
#include "base/base64.h"
44
#include "base/strings/stringprintf.h"
55
#include "base/strings/utf_string_conversions.h"
6+
#include "base/task_scheduler/post_task.h"
67
#include "base/threading/sequenced_worker_pool.h"
78
#include "content/public/browser/render_widget_host.h"
89
#include "chrome/browser/devtools/devtools_window.h"
910
#include "chrome/browser/extensions/devtools_util.h"
10-
#include "chrome/browser/ui/webui/print_preview/printer_backend_proxy.h"
11+
//#include "chrome/browser/ui/webui/print_preview/printer_backend_proxy.h"
1112
#include "components/zoom/zoom_controller.h"
1213
#include "content/nw/src/api/menu/menu.h"
1314
#include "content/nw/src/api/object_manager.h"
@@ -89,8 +90,8 @@ static void SetDeskopEnvironment() {
8990

9091
namespace {
9192

92-
printing::PrinterList EnumeratePrintersOnBlockingPoolThread() {
93-
DCHECK(content::BrowserThread::GetBlockingPool()->RunsTasksInCurrentSequence());
93+
printing::PrinterList EnumeratePrintersAsync() {
94+
base::ThreadRestrictions::AssertIOAllowed();
9495

9596
scoped_refptr<printing::PrintBackend> print_backend(
9697
printing::PrintBackend::CreateInstance(nullptr));
@@ -637,9 +638,9 @@ bool NwCurrentWindowInternalSetTitleInternalFunction::RunNWSync(base::ListValue*
637638
bool NwCurrentWindowInternalGetPrintersFunction::RunAsync() {
638639
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
639640

640-
base::PostTaskAndReplyWithResult(
641-
content::BrowserThread::GetBlockingPool(), FROM_HERE,
642-
base::Bind(&EnumeratePrintersOnBlockingPoolThread),
641+
base::PostTaskWithTraitsAndReplyWithResult(
642+
FROM_HERE, {base::MayBlock(), base::TaskPriority::BACKGROUND},
643+
base::Bind(&EnumeratePrintersAsync),
643644
base::Bind(&NwCurrentWindowInternalGetPrintersFunction::OnGetPrinterList,
644645
this));
645646
return true;

src/browser/nw_chrome_browser_hooks.cc

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,9 @@
1818
#include "chrome/browser/io_thread.h"
1919
#include "chrome/browser/lifetime/application_lifetime.h"
2020
#include "chrome/browser/profiles/profile_manager.h"
21-
#include "chrome/browser/lifetime/keep_alive_registry.h"
22-
#include "chrome/browser/lifetime/keep_alive_types.h"
21+
#include "components/keep_alive_registry/keep_alive_types.h"
22+
#include "components/keep_alive_registry/scoped_keep_alive.h"
23+
#include "components/keep_alive_registry/keep_alive_registry.h"
2324
#include "chrome/common/chrome_constants.h"
2425
#include "chrome/common/chrome_paths.h"
2526

@@ -32,6 +33,7 @@
3233
#include "content/nw/src/common/shell_switches.h"
3334
#include "content/public/browser/browser_thread.h"
3435
#include "content/public/browser/child_process_security_policy.h"
36+
#include "content/public/browser/render_frame_host.h"
3537
#include "content/public/browser/render_process_host.h"
3638
#include "content/public/browser/web_contents.h"
3739
#include "content/public/common/result_codes.h"
@@ -140,7 +142,7 @@ void ShowDevtools(bool show, content::WebContents* web_contents, content::WebCon
140142
content::RenderFrameHost* rfh = web_contents->GetMainFrame();
141143
if (container) {
142144
scoped_refptr<DevToolsAgentHost> agent_host(DevToolsAgentHost::GetOrCreateFor(web_contents));
143-
g_cdt_process_id = container->GetRenderProcessHost()->GetID();
145+
g_cdt_process_id = container->GetMainFrame()->GetProcess()->GetID();
144146
content::ChildProcessSecurityPolicy::GetInstance()->GrantAll(g_cdt_process_id);
145147

146148
DevToolsWindow* window = DevToolsWindow::FindDevToolsWindow(agent_host.get());

src/nw_custom_bindings.cc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ void NWCustomBindings::EvalScript(
196196
if (frm->IsNull()) {
197197
web_frame = main_frame;
198198
}else{
199-
blink::HTMLIFrameElement* iframe = blink::V8HTMLIFrameElement::toImpl(frm);
199+
blink::HTMLIFrameElement* iframe = blink::V8HTMLIFrameElement::ToImpl(frm);
200200
web_frame = blink::WebFrame::FromFrame(iframe->ContentFrame());
201201
}
202202
#if defined(OS_WIN)
@@ -244,7 +244,7 @@ void NWCustomBindings::EvalNWBin(
244244
if (frm->IsNull()) {
245245
web_frame = main_frame;
246246
}else{
247-
blink::HTMLIFrameElement* iframe = blink::V8HTMLIFrameElement::toImpl(frm);
247+
blink::HTMLIFrameElement* iframe = blink::V8HTMLIFrameElement::ToImpl(frm);
248248
web_frame = blink::WebFrame::FromFrame(iframe->ContentFrame());
249249
}
250250
blink::WebLocalFrame* local_frame = web_frame->ToWebLocalFrame();
@@ -330,7 +330,7 @@ void NWCustomBindings::SetDevToolsJail(const v8::FunctionCallbackInfo<v8::Value>
330330
main_frame->setDevtoolsJail(NULL);
331331
}else{
332332
v8::Handle<v8::Object> frm = v8::Handle<v8::Object>::Cast(args[0]);
333-
blink::HTMLIFrameElement* iframe = blink::V8HTMLIFrameElement::toImpl(frm);
333+
blink::HTMLIFrameElement* iframe = blink::V8HTMLIFrameElement::ToImpl(frm);
334334
main_frame->setDevtoolsJail(blink::WebFrame::FromFrame(iframe->ContentFrame()));
335335
}
336336
args.GetReturnValue().Set(v8::Undefined(isolate));

src/nw_version.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@
2222
#define NW_VERSION_H
2323

2424
#define NW_MAJOR_VERSION 0
25-
#define NW_MINOR_VERSION 26
26-
#define NW_PATCH_VERSION 7
25+
#define NW_MINOR_VERSION 27
26+
#define NW_PATCH_VERSION 0
2727

28-
#define NW_VERSION_IS_RELEASE 1
28+
#define NW_VERSION_IS_RELEASE 0
2929

3030
#ifndef NW_STRINGIFY
3131
#define NW_STRINGIFY(n) NW_STRINGIFY_HELPER(n)

src/nwjs_browsertest.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -680,7 +680,7 @@ class NWWebViewTestBase : public extensions::PlatformAppBrowserTest {
680680
guest_observer.Wait();
681681
content::Source<content::NavigationController> source =
682682
guest_observer.source();
683-
EXPECT_TRUE(source->GetWebContents()->GetRenderProcessHost()->
683+
EXPECT_TRUE(source->GetWebContents()->GetRenderViewHost()->GetProcess()->
684684
IsForGuestsOnly());
685685

686686
content::WebContents* guest_web_contents = source->GetWebContents();
@@ -712,7 +712,7 @@ class NWWebViewTestBase : public extensions::PlatformAppBrowserTest {
712712
// Wait for interstitial page to be shown in guest.
713713
content::WebContents* guest_web_contents =
714714
GetGuestViewManager()->WaitForSingleGuestCreated();
715-
ASSERT_TRUE(guest_web_contents->GetRenderProcessHost()->IsForGuestsOnly());
715+
ASSERT_TRUE(guest_web_contents->GetRenderViewHost()->GetProcess()->IsForGuestsOnly());
716716
content::WaitForInterstitialAttach(guest_web_contents);
717717
}
718718

src/renderer/nw_extensions_renderer_hooks.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -453,8 +453,8 @@ void DocumentElementHook(blink::WebLocalFrame* frame,
453453
frame->GetDocument().GetSecurityOrigin().grantUniversalAccess();
454454
frame->setNodeJS(true);
455455
content::RenderFrameImpl* render_frame = content::RenderFrameImpl::FromWebFrame(frame);
456-
content::mojom::FrameHostAssociatedPtr frame_host_ptr = render_frame->GetFrameHost();
457-
frame_host_ptr->SetNodeJS(true);
456+
auto* frame_host = render_frame->GetFrameHost();
457+
frame_host->SetNodeJS(true);
458458
std::string path = effective_document_url.path();
459459
v8::Local<v8::Context> v8_context = frame->MainWorldScriptContext();
460460
std::string root_path = g_extension_root;

test/sanity/migrate-indexeddb/index.html

Lines changed: 0 additions & 10 deletions
This file was deleted.

0 commit comments

Comments
 (0)