mirror of
https://github.com/electron/electron.git
synced 2026-02-26 03:01:17 -05:00
Compare commits
32 Commits
v6.0.0-bet
...
v6.0.0-bet
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
adffa99e05 | ||
|
|
51f03033a4 | ||
|
|
733251866c | ||
|
|
41a7d9e42b | ||
|
|
ddbbf34433 | ||
|
|
6f65dec6a2 | ||
|
|
a66657112c | ||
|
|
f5c3394930 | ||
|
|
84bae64def | ||
|
|
4185b93abb | ||
|
|
b1e9f50fad | ||
|
|
6bd901d9ca | ||
|
|
1c2b8f8d9a | ||
|
|
cb9b288d8b | ||
|
|
69fe33a2b1 | ||
|
|
52b42546ed | ||
|
|
8a285f29ed | ||
|
|
92df6cc36c | ||
|
|
ab91656148 | ||
|
|
1fb1e5b2b2 | ||
|
|
54908b56e5 | ||
|
|
48bc247ef7 | ||
|
|
19d9955125 | ||
|
|
24d79d9e5c | ||
|
|
27d0a4d33d | ||
|
|
48226f71ad | ||
|
|
a4acc16e10 | ||
|
|
d8dd94e3a3 | ||
|
|
eb48dcf0a3 | ||
|
|
adfe537e32 | ||
|
|
0d5d54cbae | ||
|
|
988ad92415 |
@@ -35,6 +35,7 @@ env-debug-build: &env-debug-build
|
||||
|
||||
env-testing-build: &env-testing-build
|
||||
GN_CONFIG: //electron/build/args/testing.gn
|
||||
CHECK_DIST_MANIFEST: '1'
|
||||
|
||||
env-release-build: &env-release-build
|
||||
GN_CONFIG: //electron/build/args/release.gn
|
||||
@@ -279,6 +280,28 @@ step-electron-dist-build: &step-electron-dist-build
|
||||
command: |
|
||||
cd src
|
||||
ninja -C out/Default electron:electron_dist_zip
|
||||
if [ "$CHECK_DIST_MANIFEST" == "1" ]; then
|
||||
if [ "`uname`" == "Darwin" ]; then
|
||||
target_os=mac
|
||||
target_cpu=x64
|
||||
if [ x"$MAS_BUILD" == x"true" ]; then
|
||||
target_os=mac_mas
|
||||
fi
|
||||
elif [ "`uname`" == "Linux" ]; then
|
||||
target_os=linux
|
||||
if [ x"$TARGET_ARCH" == x ]; then
|
||||
target_cpu=x64
|
||||
elif [ "$TARGET_ARCH" == "ia32" ]; then
|
||||
target_cpu=x86
|
||||
else
|
||||
target_cpu="$TARGET_ARCH"
|
||||
fi
|
||||
else
|
||||
echo "Unknown system: `uname`"
|
||||
exit 1
|
||||
fi
|
||||
electron/script/zip_manifests/check-zip-manifest.py out/Default/dist.zip electron/script/zip_manifests/dist_zip.$target_os.$target_cpu.manifest
|
||||
fi
|
||||
|
||||
step-electron-dist-store: &step-electron-dist-store
|
||||
store_artifacts:
|
||||
@@ -427,25 +450,13 @@ step-mksnapshot-store: &step-mksnapshot-store
|
||||
path: src/out/Default/mksnapshot.zip
|
||||
destination: mksnapshot.zip
|
||||
|
||||
step-maybe-build-dump-syms: &step-maybe-build-dump-syms
|
||||
run:
|
||||
name: Build dump_syms binary
|
||||
command: |
|
||||
if [ "$GENERATE_SYMBOLS" == "true" ]; then
|
||||
cd src
|
||||
# Build needed dump_syms executable
|
||||
ninja -C out/Default third_party/breakpad:dump_syms
|
||||
fi
|
||||
|
||||
step-maybe-generate-breakpad-symbols: &step-maybe-generate-breakpad-symbols
|
||||
run:
|
||||
name: Generate breakpad symbols
|
||||
command: |
|
||||
if [ "$GENERATE_SYMBOLS" == "true" ]; then
|
||||
cd src
|
||||
export BUILD_PATH="$PWD/out/Default"
|
||||
export DEST_PATH="$BUILD_PATH/breakpad_symbols"
|
||||
electron/script/dump-symbols.py -b $BUILD_PATH -d $DEST_PATH -v
|
||||
ninja -C out/Default electron:electron_symbols
|
||||
fi
|
||||
|
||||
step-maybe-zip-symbols: &step-maybe-zip-symbols
|
||||
@@ -653,7 +664,6 @@ steps-electron-build-for-tests: &steps-electron-build-for-tests
|
||||
# Save all data needed for a further tests run.
|
||||
- *step-persist-data-for-tests
|
||||
|
||||
- *step-maybe-build-dump-syms
|
||||
- *step-maybe-generate-breakpad-symbols
|
||||
- *step-maybe-zip-symbols
|
||||
|
||||
@@ -679,7 +689,6 @@ steps-electron-build-for-publish: &steps-electron-build-for-publish
|
||||
- *step-maybe-electron-dist-strip
|
||||
- *step-electron-dist-build
|
||||
- *step-electron-dist-store
|
||||
- *step-maybe-build-dump-syms
|
||||
- *step-maybe-generate-breakpad-symbols
|
||||
- *step-maybe-zip-symbols
|
||||
|
||||
@@ -792,7 +801,7 @@ steps-tests: &steps-tests
|
||||
name: Run Electron tests
|
||||
environment:
|
||||
MOCHA_REPORTER: mocha-multi-reporters
|
||||
MOCHA_FILE: junit/test-results.xml
|
||||
ELECTRON_TEST_RESULTS_DIR: junit
|
||||
MOCHA_MULTI_REPORTERS: mocha-junit-reporter, tap
|
||||
ELECTRON_DISABLE_SECURITY_WARNINGS: 1
|
||||
command: |
|
||||
@@ -802,15 +811,13 @@ steps-tests: &steps-tests
|
||||
- run:
|
||||
name: Check test results existence
|
||||
command: |
|
||||
MOCHA_FILE='src/junit/test-results-remote.xml'
|
||||
# Check if it exists and not empty.
|
||||
if [ ! -s "$MOCHA_FILE" ]; then
|
||||
cd src
|
||||
|
||||
# Check if test results exist and are not empty.
|
||||
if [ ! -s "junit/test-results-remote.xml" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
MOCHA_FILE='src/junit/test-results-main.xml'
|
||||
# Check if it exists and not empty.
|
||||
if [ ! -s "$MOCHA_FILE" ]; then
|
||||
if [ ! -s "junit/test-results-main.xml" ]; then
|
||||
exit 1
|
||||
fi
|
||||
- store_test_results:
|
||||
|
||||
116
BUILD.gn
116
BUILD.gn
@@ -10,6 +10,7 @@ import("//tools/grit/repack.gni")
|
||||
import("//tools/v8_context_snapshot/v8_context_snapshot.gni")
|
||||
import("//v8/gni/snapshot_toolchain.gni")
|
||||
import("build/asar.gni")
|
||||
import("build/extract_symbols.gni")
|
||||
import("build/js_wrap.gni")
|
||||
import("build/npm.gni")
|
||||
import("build/tsc.gni")
|
||||
@@ -712,6 +713,7 @@ if (is_mac) {
|
||||
electron_helper_name = "$electron_product_name Helper"
|
||||
electron_login_helper_name = "$electron_product_name Login Helper"
|
||||
electron_framework_version = "A"
|
||||
electron_version = read_file("ELECTRON_VERSION", "trim string")
|
||||
|
||||
mac_xib_bundle_data("electron_xibs") {
|
||||
sources = [
|
||||
@@ -840,7 +842,6 @@ if (is_mac) {
|
||||
}
|
||||
info_plist = "atom/common/resources/mac/Info.plist"
|
||||
|
||||
electron_version = read_file("ELECTRON_VERSION", "trim string")
|
||||
extra_substitutions = [
|
||||
"ATOM_BUNDLE_ID=$electron_mac_bundle_id.framework",
|
||||
"ELECTRON_VERSION=$electron_version",
|
||||
@@ -1014,6 +1015,76 @@ if (is_mac) {
|
||||
"@executable_path/../Frameworks",
|
||||
]
|
||||
}
|
||||
|
||||
if (enable_dsyms) {
|
||||
extract_symbols("electron_framework_syms") {
|
||||
binary = "$root_out_dir/$electron_framework_name.framework/Versions/$electron_framework_version/$electron_framework_name"
|
||||
symbol_dir = "$root_out_dir/breakpad_symbols"
|
||||
dsym_file = "$root_out_dir/$electron_framework_name.dSYM/Contents/Resources/DWARF/$electron_framework_name"
|
||||
deps = [
|
||||
":electron_framework",
|
||||
]
|
||||
}
|
||||
|
||||
extract_symbols("electron_helper_syms") {
|
||||
binary = "$root_out_dir/$electron_helper_name.app/Contents/MacOS/$electron_helper_name"
|
||||
symbol_dir = "$root_out_dir/breakpad_symbols"
|
||||
dsym_file = "$root_out_dir/$electron_helper_name.dSYM/Contents/Resources/DWARF/$electron_helper_name"
|
||||
deps = [
|
||||
":electron_helper_app",
|
||||
]
|
||||
}
|
||||
|
||||
extract_symbols("electron_app_syms") {
|
||||
binary = "$root_out_dir/$electron_product_name.app/Contents/MacOS/$electron_product_name"
|
||||
symbol_dir = "$root_out_dir/breakpad_symbols"
|
||||
dsym_file = "$root_out_dir/$electron_product_name.dSYM/Contents/Resources/DWARF/$electron_product_name"
|
||||
deps = [
|
||||
":electron_app",
|
||||
]
|
||||
}
|
||||
|
||||
extract_symbols("swiftshader_egl_syms") {
|
||||
binary = "$root_out_dir/libswiftshader_libEGL.dylib"
|
||||
symbol_dir = "$root_out_dir/breakpad_symbols"
|
||||
dsym_file = "$root_out_dir/libswiftshader_libEGL.dylib.dSYM/Contents/Resources/DWARF/libswiftshader_libEGL.dylib"
|
||||
deps = [
|
||||
"//third_party/swiftshader/src/OpenGL/libEGL:swiftshader_libEGL",
|
||||
]
|
||||
}
|
||||
|
||||
extract_symbols("swiftshader_gles_syms") {
|
||||
binary = "$root_out_dir/libswiftshader_libGLESv2.dylib"
|
||||
symbol_dir = "$root_out_dir/breakpad_symbols"
|
||||
dsym_file = "$root_out_dir/libswiftshader_libGLESv2.dylib.dSYM/Contents/Resources/DWARF/libswiftshader_libGLESv2.dylib"
|
||||
deps = [
|
||||
"//third_party/swiftshader/src/OpenGL/libGLESv2:swiftshader_libGLESv2",
|
||||
]
|
||||
}
|
||||
|
||||
extract_symbols("crashpad_handler_syms") {
|
||||
binary = "$root_out_dir/crashpad_handler"
|
||||
symbol_dir = "$root_out_dir/breakpad_symbols"
|
||||
dsym_file = "$root_out_dir/crashpad_handler.dSYM/Contents/Resources/DWARF/crashpad_handler"
|
||||
deps = [
|
||||
"//third_party/crashpad/crashpad/handler:crashpad_handler",
|
||||
]
|
||||
}
|
||||
|
||||
group("electron_symbols") {
|
||||
deps = [
|
||||
":crashpad_handler_syms",
|
||||
":electron_app_syms",
|
||||
":electron_framework_syms",
|
||||
":electron_helper_syms",
|
||||
":swiftshader_egl_syms",
|
||||
":swiftshader_gles_syms",
|
||||
]
|
||||
}
|
||||
} else {
|
||||
group("electron_symbols") {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
windows_manifest("electron_app_manifest") {
|
||||
sources = [
|
||||
@@ -1102,6 +1173,49 @@ if (is_mac) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (is_official_build) {
|
||||
if (is_linux) {
|
||||
_target_executable_suffix = ""
|
||||
_target_shared_library_suffix = ".so"
|
||||
} else if (is_win) {
|
||||
_target_executable_suffix = ".exe"
|
||||
_target_shared_library_suffix = ".dll"
|
||||
}
|
||||
|
||||
extract_symbols("electron_app_symbols") {
|
||||
binary = "$root_out_dir/$electron_project_name$_target_executable_suffix"
|
||||
symbol_dir = "$root_out_dir/breakpad_symbols"
|
||||
deps = [
|
||||
":electron_app",
|
||||
]
|
||||
}
|
||||
|
||||
extract_symbols("swiftshader_egl_symbols") {
|
||||
binary = "$root_out_dir/swiftshader/libEGL$_target_shared_library_suffix"
|
||||
symbol_dir = "$root_out_dir/breakpad_symbols"
|
||||
deps = [
|
||||
"//third_party/swiftshader/src/OpenGL/libEGL:swiftshader_libEGL",
|
||||
]
|
||||
}
|
||||
|
||||
extract_symbols("swiftshader_gles_symbols") {
|
||||
binary =
|
||||
"$root_out_dir/swiftshader/libGLESv2$_target_shared_library_suffix"
|
||||
symbol_dir = "$root_out_dir/breakpad_symbols"
|
||||
deps = [
|
||||
"//third_party/swiftshader/src/OpenGL/libGLESv2:swiftshader_libGLESv2",
|
||||
]
|
||||
}
|
||||
|
||||
group("electron_symbols") {
|
||||
deps = [
|
||||
":electron_app_symbols",
|
||||
":swiftshader_egl_symbols",
|
||||
":swiftshader_gles_symbols",
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
template("dist_zip") {
|
||||
|
||||
2
DEPS
2
DEPS
@@ -10,7 +10,7 @@ gclient_gn_args = [
|
||||
|
||||
vars = {
|
||||
'chromium_version':
|
||||
'76.0.3809.42',
|
||||
'76.0.3809.60',
|
||||
'node_version':
|
||||
'0a300f60bce0c8f0cb3d846fcb0e1f55f26013ee',
|
||||
|
||||
|
||||
@@ -1 +1 @@
|
||||
6.0.0-beta.11
|
||||
6.0.0-beta.13
|
||||
@@ -72,14 +72,16 @@ build_script:
|
||||
- appveyor PushArtifact out/ffmpeg/ffmpeg.zip
|
||||
- ps: >-
|
||||
if ($env:GN_CONFIG -eq 'release') {
|
||||
ninja -C out/Default third_party/breakpad:dump_syms
|
||||
# Needed for msdia140.dll on 64-bit windows
|
||||
$env:Path += ";$pwd\third_party\llvm-build\Release+Asserts\bin"
|
||||
ninja -C out/Default electron:electron_symbols
|
||||
}
|
||||
- if "%GN_CONFIG%"=="release" ( python electron\script\dump-symbols.py -d %cd%\out\Default\breakpad_symbols -v)
|
||||
- ps: >-
|
||||
if ($env:GN_CONFIG -eq 'release') {
|
||||
python electron\script\zip-symbols.py
|
||||
appveyor PushArtifact out/Default/symbols.zip
|
||||
}
|
||||
- python electron/script/zip_manifests/check-zip-manifest.py out/Default/dist.zip electron/script/zip_manifests/dist_zip.win.%TARGET_ARCH%.manifest
|
||||
test_script:
|
||||
# Workaround for https://github.com/appveyor/ci/issues/2420
|
||||
- set "PATH=%PATH%;C:\Program Files\Git\mingw64\libexec\git-core"
|
||||
|
||||
@@ -51,6 +51,19 @@ std::vector<std::string> MetricsToArray(uint32_t metrics) {
|
||||
return array;
|
||||
}
|
||||
|
||||
void DelayEmit(Screen* screen,
|
||||
const base::StringPiece& name,
|
||||
const display::Display& display) {
|
||||
screen->Emit(name, display);
|
||||
}
|
||||
|
||||
void DelayEmitWithMetrics(Screen* screen,
|
||||
const base::StringPiece& name,
|
||||
const display::Display& display,
|
||||
const std::vector<std::string>& metrics) {
|
||||
screen->Emit(name, display, metrics);
|
||||
}
|
||||
|
||||
} // namespace
|
||||
|
||||
Screen::Screen(v8::Isolate* isolate, display::Screen* screen)
|
||||
@@ -100,16 +113,23 @@ static gfx::Rect DIPToScreenRect(atom::NativeWindow* window,
|
||||
#endif
|
||||
|
||||
void Screen::OnDisplayAdded(const display::Display& new_display) {
|
||||
Emit("display-added", new_display);
|
||||
base::ThreadTaskRunnerHandle::Get()->PostNonNestableTask(
|
||||
FROM_HERE, base::Bind(&DelayEmit, base::Unretained(this), "display-added",
|
||||
new_display));
|
||||
}
|
||||
|
||||
void Screen::OnDisplayRemoved(const display::Display& old_display) {
|
||||
Emit("display-removed", old_display);
|
||||
base::ThreadTaskRunnerHandle::Get()->PostNonNestableTask(
|
||||
FROM_HERE, base::Bind(&DelayEmit, base::Unretained(this),
|
||||
"display-removed", old_display));
|
||||
}
|
||||
|
||||
void Screen::OnDisplayMetricsChanged(const display::Display& display,
|
||||
uint32_t changed_metrics) {
|
||||
Emit("display-metrics-changed", display, MetricsToArray(changed_metrics));
|
||||
base::ThreadTaskRunnerHandle::Get()->PostNonNestableTask(
|
||||
FROM_HERE, base::Bind(&DelayEmitWithMetrics, base::Unretained(this),
|
||||
"display-metrics-changed", display,
|
||||
MetricsToArray(changed_metrics)));
|
||||
}
|
||||
|
||||
// static
|
||||
|
||||
@@ -625,7 +625,7 @@ void SystemPreferences::RemoveUserDefault(const std::string& name) {
|
||||
}
|
||||
|
||||
bool SystemPreferences::IsDarkMode() {
|
||||
if (@available(macOS 10.14, *)) {
|
||||
if (@available(macOS 10.15, *)) {
|
||||
return [[NSApplication sharedApplication].effectiveAppearance.name
|
||||
isEqualToString:NSAppearanceNameDarkAqua];
|
||||
}
|
||||
|
||||
@@ -17,9 +17,9 @@
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>electron.icns</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>6.0.0-beta.11</string>
|
||||
<string>6.0.0-beta.13</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>6.0.0-beta.11</string>
|
||||
<string>6.0.0-beta.13</string>
|
||||
<key>LSApplicationCategoryType</key>
|
||||
<string>public.app-category.developer-tools</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
|
||||
@@ -50,8 +50,8 @@ END
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 6,0,0,11
|
||||
PRODUCTVERSION 6,0,0,11
|
||||
FILEVERSION 6,0,0,13
|
||||
PRODUCTVERSION 6,0,0,13
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
|
||||
@@ -84,11 +84,11 @@
|
||||
return frame;
|
||||
}
|
||||
|
||||
- (void)windowDidBecomeMain:(NSNotification*)notification {
|
||||
- (void)windowDidBecomeKey:(NSNotification*)notification {
|
||||
shell_->NotifyWindowFocus();
|
||||
}
|
||||
|
||||
- (void)windowDidResignMain:(NSNotification*)notification {
|
||||
- (void)windowDidResignKey:(NSNotification*)notification {
|
||||
shell_->NotifyWindowBlur();
|
||||
}
|
||||
|
||||
|
||||
@@ -30,6 +30,7 @@ class TrayIconCocoa : public TrayIcon, public AtomMenuModel::Observer {
|
||||
void SetHighlightMode(TrayIcon::HighlightMode mode) override;
|
||||
void SetIgnoreDoubleClickEvents(bool ignore) override;
|
||||
bool GetIgnoreDoubleClickEvents() override;
|
||||
void PopUpOnUI(AtomMenuModel* menu_model);
|
||||
void PopUpContextMenu(const gfx::Point& pos,
|
||||
AtomMenuModel* menu_model) override;
|
||||
void SetContextMenu(AtomMenuModel* menu_model) override;
|
||||
@@ -49,6 +50,8 @@ class TrayIconCocoa : public TrayIcon, public AtomMenuModel::Observer {
|
||||
// Used for unregistering observer.
|
||||
AtomMenuModel* menu_model_ = nullptr; // weak ref.
|
||||
|
||||
base::WeakPtrFactory<TrayIconCocoa> weak_factory_;
|
||||
|
||||
DISALLOW_COPY_AND_ASSIGN(TrayIconCocoa);
|
||||
};
|
||||
|
||||
|
||||
@@ -8,7 +8,11 @@
|
||||
#include "atom/browser/ui/cocoa/NSString+ANSI.h"
|
||||
#include "atom/browser/ui/cocoa/atom_menu_controller.h"
|
||||
#include "base/mac/sdk_forward_declarations.h"
|
||||
#include "base/message_loop/message_loop.h"
|
||||
#include "base/strings/sys_string_conversions.h"
|
||||
#include "base/task/post_task.h"
|
||||
#include "content/public/browser/browser_task_traits.h"
|
||||
#include "content/public/browser/browser_thread.h"
|
||||
#include "ui/display/screen.h"
|
||||
#include "ui/events/cocoa/cocoa_event_utils.h"
|
||||
#include "ui/gfx/image/image.h"
|
||||
@@ -145,7 +149,7 @@ const CGFloat kVerticalTitleMargin = 2;
|
||||
}
|
||||
|
||||
- (BOOL)isDarkMode {
|
||||
if (@available(macOS 10.14, *)) {
|
||||
if (@available(macOS 10.15, *)) {
|
||||
return [[NSApplication sharedApplication].effectiveAppearance.name
|
||||
isEqualToString:NSAppearanceNameDarkAqua];
|
||||
}
|
||||
@@ -330,6 +334,9 @@ const CGFloat kVerticalTitleMargin = 2;
|
||||
}
|
||||
|
||||
- (void)popUpContextMenu:(atom::AtomMenuModel*)menu_model {
|
||||
// Make sure events can be pumped while the menu is up.
|
||||
base::MessageLoopCurrent::ScopedNestableTaskAllower allow;
|
||||
|
||||
// Show a custom menu.
|
||||
if (menu_model) {
|
||||
base::scoped_nsobject<AtomMenuController> menuController(
|
||||
@@ -337,6 +344,7 @@ const CGFloat kVerticalTitleMargin = 2;
|
||||
useDefaultAccelerator:NO]);
|
||||
forceHighlight_ = YES; // Should highlight when showing menu.
|
||||
[self setNeedsDisplay:YES];
|
||||
|
||||
[statusItem_ popUpStatusItemMenu:[menuController menu]];
|
||||
forceHighlight_ = NO;
|
||||
[self setNeedsDisplay:YES];
|
||||
@@ -344,8 +352,12 @@ const CGFloat kVerticalTitleMargin = 2;
|
||||
}
|
||||
|
||||
if (menuController_ && ![menuController_ isMenuOpen]) {
|
||||
// Ensure the UI can update while the menu is fading out.
|
||||
base::ScopedPumpMessagesInPrivateModes pump_private;
|
||||
|
||||
// Redraw the tray icon to show highlight if it is enabled.
|
||||
[self setNeedsDisplay:YES];
|
||||
|
||||
[statusItem_ popUpStatusItemMenu:[menuController_ menu]];
|
||||
// The popUpStatusItemMenu returns only after the showing menu is closed.
|
||||
// When it returns, we need to redraw the tray icon to not show highlight.
|
||||
@@ -443,7 +455,7 @@ const CGFloat kVerticalTitleMargin = 2;
|
||||
|
||||
namespace atom {
|
||||
|
||||
TrayIconCocoa::TrayIconCocoa() {
|
||||
TrayIconCocoa::TrayIconCocoa() : weak_factory_(this) {
|
||||
status_item_view_.reset([[StatusItemView alloc] initWithIcon:this]);
|
||||
}
|
||||
|
||||
@@ -485,9 +497,16 @@ bool TrayIconCocoa::GetIgnoreDoubleClickEvents() {
|
||||
return [status_item_view_ getIgnoreDoubleClickEvents];
|
||||
}
|
||||
|
||||
void TrayIconCocoa::PopUpOnUI(AtomMenuModel* menu_model) {
|
||||
[status_item_view_ popUpContextMenu:menu_model];
|
||||
}
|
||||
|
||||
void TrayIconCocoa::PopUpContextMenu(const gfx::Point& pos,
|
||||
AtomMenuModel* menu_model) {
|
||||
[status_item_view_ popUpContextMenu:menu_model];
|
||||
base::PostTaskWithTraits(
|
||||
FROM_HERE, {content::BrowserThread::UI},
|
||||
base::BindOnce(&TrayIconCocoa::PopUpOnUI, weak_factory_.GetWeakPtr(),
|
||||
base::Unretained(menu_model)));
|
||||
}
|
||||
|
||||
void TrayIconCocoa::SetContextMenu(AtomMenuModel* menu_model) {
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#define ATOM_MINOR_VERSION 0
|
||||
#define ATOM_PATCH_VERSION 0
|
||||
// clang-format off
|
||||
#define ATOM_PRE_RELEASE_VERSION -beta.11
|
||||
#define ATOM_PRE_RELEASE_VERSION -beta.13
|
||||
// clang-format on
|
||||
|
||||
#ifndef ATOM_STRINGIFY
|
||||
|
||||
@@ -200,8 +200,11 @@ void AtomRendererClient::SetupMainWorldOverrides(
|
||||
node::FIXED_ONE_BYTE_STRING(isolate, "nodeProcess"),
|
||||
node::FIXED_ONE_BYTE_STRING(isolate, "isolatedWorld")};
|
||||
|
||||
auto* env = GetEnvironment(render_frame);
|
||||
DCHECK(env);
|
||||
|
||||
std::vector<v8::Local<v8::Value>> isolated_bundle_args = {
|
||||
GetEnvironment(render_frame)->process_object(),
|
||||
env->process_object(),
|
||||
GetContext(render_frame->GetWebFrame(), isolate)->Global()};
|
||||
|
||||
node::per_process::native_module_loader.CompileAndCall(
|
||||
@@ -220,8 +223,12 @@ void AtomRendererClient::SetupExtensionWorldOverrides(
|
||||
node::FIXED_ONE_BYTE_STRING(isolate, "isolatedWorld"),
|
||||
node::FIXED_ONE_BYTE_STRING(isolate, "worldId")};
|
||||
|
||||
auto* env = GetEnvironment(render_frame);
|
||||
if (!env)
|
||||
return;
|
||||
|
||||
std::vector<v8::Local<v8::Value>> isolated_bundle_args = {
|
||||
GetEnvironment(render_frame)->process_object(),
|
||||
env->process_object(),
|
||||
GetContext(render_frame->GetWebFrame(), isolate)->Global(),
|
||||
v8::Integer::New(isolate, world_id)};
|
||||
|
||||
|
||||
52
build/dump_syms.py
Normal file
52
build/dump_syms.py
Normal file
@@ -0,0 +1,52 @@
|
||||
from __future__ import print_function
|
||||
|
||||
import collections
|
||||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
import errno
|
||||
|
||||
# The BINARY_INFO tuple describes a binary as dump_syms identifies it.
|
||||
BINARY_INFO = collections.namedtuple('BINARY_INFO',
|
||||
['platform', 'arch', 'hash', 'name'])
|
||||
|
||||
def get_module_info(header_info):
|
||||
# header info is of the form "MODULE $PLATFORM $ARCH $HASH $BINARY"
|
||||
info_split = header_info.strip().split(' ', 4)
|
||||
if len(info_split) != 5 or info_split[0] != 'MODULE':
|
||||
return None
|
||||
return BINARY_INFO(*info_split[1:])
|
||||
|
||||
def get_symbol_path(symbol_data):
|
||||
module_info = get_module_info(symbol_data[:symbol_data.index('\n')])
|
||||
if not module_info:
|
||||
raise Exception("Couldn't get module info for binary '{}'".format(binary))
|
||||
return os.path.join(module_info.name, module_info.hash, module_info.name + ".sym")
|
||||
|
||||
def mkdir_p(path):
|
||||
"""Simulates mkdir -p."""
|
||||
try:
|
||||
os.makedirs(path)
|
||||
except OSError as e:
|
||||
if e.errno == errno.EEXIST and os.path.isdir(path):
|
||||
pass
|
||||
else: raise
|
||||
|
||||
def main(dump_syms, binary, out_dir, stamp_file, dsym_file=None):
|
||||
args = [dump_syms]
|
||||
if dsym_file:
|
||||
args += ["-g", dsym_file]
|
||||
args += [binary]
|
||||
|
||||
symbol_data = subprocess.check_output(args)
|
||||
symbol_path = os.path.join(out_dir, get_symbol_path(symbol_data))
|
||||
mkdir_p(os.path.dirname(symbol_path))
|
||||
|
||||
with open(symbol_path, 'w') as out:
|
||||
out.write(symbol_data)
|
||||
|
||||
with open(stamp_file, 'w'):
|
||||
pass
|
||||
|
||||
if __name__ == '__main__':
|
||||
main(*sys.argv[1:])
|
||||
55
build/extract_symbols.gni
Normal file
55
build/extract_symbols.gni
Normal file
@@ -0,0 +1,55 @@
|
||||
import("//build/toolchain/toolchain.gni")
|
||||
|
||||
# Extracts symbols from a binary into a symbol file using dump_syms.
|
||||
#
|
||||
# Args:
|
||||
# binary: Path to the binary containing symbols to extract, e.g.:
|
||||
# "$root_out_dir/electron"
|
||||
# symbol_dir: Desired output directory for symbols, e.g.:
|
||||
# "$root_out_dir/breakpad_symbols"
|
||||
|
||||
if (host_os == "win") {
|
||||
_host_executable_suffix = ".exe"
|
||||
} else {
|
||||
_host_executable_suffix = ""
|
||||
}
|
||||
|
||||
template("extract_symbols") {
|
||||
action(target_name) {
|
||||
forward_variables_from(invoker,
|
||||
[
|
||||
"deps",
|
||||
"testonly",
|
||||
])
|
||||
assert(defined(invoker.binary), "Need binary to dump")
|
||||
assert(defined(invoker.symbol_dir), "Need directory for symbol output")
|
||||
|
||||
dump_syms_label = "//third_party/breakpad:dump_syms($host_toolchain)"
|
||||
dump_syms_binary = get_label_info(dump_syms_label, "root_out_dir") +
|
||||
"/dump_syms$_host_executable_suffix"
|
||||
|
||||
script = "//electron/build/dump_syms.py"
|
||||
inputs = [
|
||||
invoker.binary,
|
||||
dump_syms_binary,
|
||||
]
|
||||
stamp_file = "${target_gen_dir}/${target_name}.stamp"
|
||||
outputs = [
|
||||
stamp_file,
|
||||
]
|
||||
args = [
|
||||
"./" + rebase_path(dump_syms_binary, root_build_dir),
|
||||
rebase_path(invoker.binary, root_build_dir),
|
||||
rebase_path(invoker.symbol_dir, root_build_dir),
|
||||
rebase_path(stamp_file, root_build_dir),
|
||||
]
|
||||
if (defined(invoker.dsym_file)) {
|
||||
args += [ rebase_path(invoker.dsym_file, root_build_dir) ]
|
||||
}
|
||||
|
||||
if (!defined(deps)) {
|
||||
deps = []
|
||||
}
|
||||
deps += [ dump_syms_label ]
|
||||
}
|
||||
}
|
||||
@@ -94,10 +94,6 @@ powerMonitor.querySystemIdleTime(callback)
|
||||
const idleTime = getSystemIdleTime()
|
||||
```
|
||||
|
||||
## Preload scripts outside of app path are not allowed
|
||||
|
||||
For security reasons, preload scripts can only be loaded from a subpath of the [app path](app.md#appgetapppath).
|
||||
|
||||
# Planned Breaking API Changes (5.0)
|
||||
|
||||
## `new BrowserWindow({ webPreferences })`
|
||||
@@ -122,7 +118,7 @@ const w = new BrowserWindow({
|
||||
|
||||
### `nativeWindowOpen`
|
||||
|
||||
Child windows opened with the `nativeWindowOpen` option will always have Node.js integration disabled.
|
||||
Child windows opened with the `nativeWindowOpen` option will always have Node.js integration disabled, unless `nodeIntegrationInSubFrames` is `true.
|
||||
|
||||
## Privileged Schemes Registration
|
||||
|
||||
|
||||
@@ -256,7 +256,7 @@ It creates a new `BrowserWindow` with native properties as set by the `options`.
|
||||
enabled in web workers. Default is `false`. More about this can be found
|
||||
in [Multithreading](../tutorial/multithreading.md).
|
||||
* `nodeIntegrationInSubFrames` Boolean (optional) - Experimental option for
|
||||
enabling NodeJS support in sub-frames such as iframes. All your preloads will load for
|
||||
enabling Node.js support in sub-frames such as iframes and child windows. All your preloads will load for
|
||||
every iframe, you can use `process.isMainFrame` to determine if you are
|
||||
in the main frame or not.
|
||||
* `preload` String (optional) - Specifies a script that will be loaded before other
|
||||
@@ -266,8 +266,6 @@ It creates a new `BrowserWindow` with native properties as set by the `options`.
|
||||
When node integration is turned off, the preload script can reintroduce
|
||||
Node global symbols back to the global scope. See example
|
||||
[here](process.md#event-loaded).
|
||||
**Note:** For security reasons, preload scripts can only be loaded from
|
||||
a subpath of the [app path](app.md#appgetapppath).
|
||||
* `sandbox` Boolean (optional) - If set, this will sandbox the renderer
|
||||
associated with the window, making it compatible with the Chromium
|
||||
OS-level sandbox and disabling the Node.js engine. This is not the same as
|
||||
@@ -355,7 +353,7 @@ It creates a new `BrowserWindow` with native properties as set by the `options`.
|
||||
Console tab.
|
||||
* `nativeWindowOpen` Boolean (optional) - Whether to use native
|
||||
`window.open()`. Defaults to `false`. Child windows will always have node
|
||||
integration disabled. **Note:** This option is currently
|
||||
integration disabled unless `nodeIntegrationInSubFrames` is true. **Note:** This option is currently
|
||||
experimental.
|
||||
* `webviewTag` Boolean (optional) - Whether to enable the [`<webview>` tag](webview-tag.md).
|
||||
Defaults to `false`. **Note:** The
|
||||
|
||||
@@ -59,7 +59,7 @@ Emitted as soon as the systems screen is unlocked.
|
||||
|
||||
The `powerMonitor` module has the following methods:
|
||||
|
||||
#### `powerMonitor.querySystemIdleState(idleThreshold, callback)` _(Deprecated)_
|
||||
### `powerMonitor.querySystemIdleState(idleThreshold, callback)` _(Deprecated)_
|
||||
|
||||
* `idleThreshold` Integer
|
||||
* `callback` Function
|
||||
@@ -70,14 +70,14 @@ before considered idle. `callback` will be called synchronously on some systems
|
||||
and with an `idleState` argument that describes the system's state. `locked` is
|
||||
available on supported systems only.
|
||||
|
||||
#### `powerMonitor.querySystemIdleTime(callback)` _(Deprecated)_
|
||||
### `powerMonitor.querySystemIdleTime(callback)` _(Deprecated)_
|
||||
|
||||
* `callback` Function
|
||||
* `idleTime` Integer - Idle time in seconds
|
||||
|
||||
Calculate system idle time in seconds.
|
||||
|
||||
#### `powerMonitor.getSystemIdleState(idleThreshold)`
|
||||
### `powerMonitor.getSystemIdleState(idleThreshold)`
|
||||
|
||||
* `idleThreshold` Integer
|
||||
|
||||
@@ -86,7 +86,7 @@ Returns `String` - The system's current state. Can be `active`, `idle`, `locked`
|
||||
Calculate the system idle state. `idleThreshold` is the amount of time (in seconds)
|
||||
before considered idle. `locked` is available on supported systems only.
|
||||
|
||||
#### `powerMonitor.getSystemIdleTime()`
|
||||
### `powerMonitor.getSystemIdleTime()`
|
||||
|
||||
Returns `Integer` - Idle time in seconds
|
||||
|
||||
|
||||
@@ -569,8 +569,6 @@ Returns `Promise<void>` - resolves when the session’s HTTP authentication cach
|
||||
Adds scripts that will be executed on ALL web contents that are associated with
|
||||
this session just before normal `preload` scripts run.
|
||||
|
||||
**Note:** For security reasons, preload scripts can only be loaded from a subpath of the [app path](app.md#appgetapppath).
|
||||
|
||||
#### `ses.getPreloads()`
|
||||
|
||||
Returns `String[]` an array of paths to preload scripts that have been
|
||||
|
||||
@@ -41,14 +41,6 @@ Returns:
|
||||
* `event` Event
|
||||
* `highContrastColorScheme` Boolean - `true` if a high contrast theme is being used, `false` otherwise.
|
||||
|
||||
### Event: 'appearance-changed' _macOS_
|
||||
|
||||
Returns:
|
||||
|
||||
* `newAppearance` String - Can be `dark` or `light`
|
||||
|
||||
**NOTE:** This event is only emitted after you have called `startAppLevelAppearanceTrackingOS`
|
||||
|
||||
## Methods
|
||||
|
||||
### `systemPreferences.isDarkMode()` _macOS_
|
||||
|
||||
@@ -162,9 +162,6 @@ When the guest page doesn't have node integration this script will still have
|
||||
access to all Node APIs, but global objects injected by Node will be deleted
|
||||
after this script has finished executing.
|
||||
|
||||
**Note:** For security reasons, preload scripts can only be loaded from
|
||||
a subpath of the [app path](app.md#appgetapppath).
|
||||
|
||||
**Note:** This option will be appear as `preloadURL` (not `preload`) in
|
||||
the `webPreferences` specified to the `will-attach-webview` event.
|
||||
|
||||
|
||||
@@ -61,7 +61,6 @@ filenames = {
|
||||
"lib/common/error-utils.js",
|
||||
"lib/common/init.ts",
|
||||
"lib/common/parse-features-string.js",
|
||||
"lib/common/path-utils.ts",
|
||||
"lib/common/reset-search-paths.ts",
|
||||
"lib/common/web-view-methods.js",
|
||||
"lib/renderer/callbacks-registry.js",
|
||||
|
||||
@@ -156,20 +156,27 @@ const getGuestWindow = function (guestContents) {
|
||||
return guestWindow
|
||||
}
|
||||
|
||||
const isChildWindow = function (sender, target) {
|
||||
return target.getLastWebPreferences().openerId === sender.id
|
||||
}
|
||||
|
||||
const isRelatedWindow = function (sender, target) {
|
||||
return isChildWindow(sender, target) || isChildWindow(target, sender)
|
||||
}
|
||||
|
||||
const isScriptableWindow = function (sender, target) {
|
||||
return isRelatedWindow(sender, target) && isSameOrigin(sender.getURL(), target.getURL())
|
||||
}
|
||||
|
||||
const isNodeIntegrationEnabled = function (sender) {
|
||||
return sender.getLastWebPreferences().nodeIntegration === true
|
||||
}
|
||||
|
||||
// Checks whether |sender| can access the |target|:
|
||||
// 1. Check whether |sender| is the parent of |target|.
|
||||
// 2. Check whether |sender| has node integration, if so it is allowed to
|
||||
// do anything it wants.
|
||||
// 3. Check whether the origins match.
|
||||
//
|
||||
// However it allows a child window without node integration but with same
|
||||
// origin to do anything it wants, when its opener window has node integration.
|
||||
// The W3C does not have anything on this, but from my understanding of the
|
||||
// security model of |window.opener|, this should be fine.
|
||||
const canAccessWindow = function (sender, target) {
|
||||
return (target.getLastWebPreferences().openerId === sender.id) ||
|
||||
(sender.getLastWebPreferences().nodeIntegration === true) ||
|
||||
isSameOrigin(sender.getURL(), target.getURL())
|
||||
return isChildWindow(sender, target) ||
|
||||
isScriptableWindow(sender, target) ||
|
||||
isNodeIntegrationEnabled(sender)
|
||||
}
|
||||
|
||||
// Routed window.open messages with raw options
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
const electron = require('electron')
|
||||
const { EventEmitter } = require('events')
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const util = require('util')
|
||||
|
||||
const v8Util = process.electronBinding('v8_util')
|
||||
@@ -20,7 +19,6 @@ const guestViewManager = require('@electron/internal/browser/guest-view-manager'
|
||||
const bufferUtils = require('@electron/internal/common/buffer-utils')
|
||||
const errorUtils = require('@electron/internal/common/error-utils')
|
||||
const clipboardUtils = require('@electron/internal/common/clipboard-utils')
|
||||
const { isParentDir } = require('@electron/internal/common/path-utils')
|
||||
|
||||
const hasProp = {}.hasOwnProperty
|
||||
|
||||
@@ -500,24 +498,12 @@ ipcMainUtils.handle('ELECTRON_BROWSER_CLIPBOARD', function (event, method, ...ar
|
||||
})
|
||||
|
||||
const readFile = util.promisify(fs.readFile)
|
||||
const realpath = util.promisify(fs.realpath)
|
||||
|
||||
let absoluteAppPath
|
||||
const getAppPath = async function () {
|
||||
if (absoluteAppPath === undefined) {
|
||||
absoluteAppPath = await realpath(electron.app.getAppPath())
|
||||
}
|
||||
return absoluteAppPath
|
||||
}
|
||||
|
||||
const getPreloadScript = async function (preloadPath) {
|
||||
let preloadSrc = null
|
||||
let preloadError = null
|
||||
if (preloadPath) {
|
||||
try {
|
||||
if (!isParentDir(await getAppPath(), await realpath(preloadPath))) {
|
||||
throw new Error('Preload scripts outside of app path are not allowed')
|
||||
}
|
||||
preloadSrc = (await readFile(preloadPath)).toString()
|
||||
} catch (err) {
|
||||
preloadError = errorUtils.serialize(err)
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
import * as path from 'path'
|
||||
|
||||
export const isParentDir = function (parent: string, dir: string) {
|
||||
const relative = path.relative(parent, dir)
|
||||
return !!relative && !relative.startsWith('..') && !path.isAbsolute(relative)
|
||||
}
|
||||
@@ -1,5 +1,4 @@
|
||||
import { EventEmitter } from 'events'
|
||||
import * as fs from 'fs'
|
||||
import * as path from 'path'
|
||||
|
||||
const Module = require('module')
|
||||
@@ -188,22 +187,10 @@ if (nodeIntegration) {
|
||||
}
|
||||
|
||||
const errorUtils = require('@electron/internal/common/error-utils')
|
||||
const { isParentDir } = require('@electron/internal/common/path-utils')
|
||||
|
||||
let absoluteAppPath: string
|
||||
const getAppPath = function () {
|
||||
if (absoluteAppPath === undefined) {
|
||||
absoluteAppPath = fs.realpathSync(appPath!)
|
||||
}
|
||||
return absoluteAppPath
|
||||
}
|
||||
|
||||
// Load the preload scripts.
|
||||
for (const preloadScript of preloadScripts) {
|
||||
try {
|
||||
if (!isParentDir(getAppPath(), fs.realpathSync(preloadScript))) {
|
||||
throw new Error('Preload scripts outside of app path are not allowed')
|
||||
}
|
||||
require(preloadScript)
|
||||
} catch (error) {
|
||||
console.error(`Unable to load preload script: ${preloadScript}`)
|
||||
|
||||
@@ -14,9 +14,9 @@ ipcRendererInternal.sendSync = function (channel, ...args) {
|
||||
}
|
||||
|
||||
ipcRendererInternal.sendTo = function (webContentsId, channel, ...args) {
|
||||
return binding.sendTo(internal, false, webContentsId, channel, args)
|
||||
return binding.ipc.sendTo(internal, false, webContentsId, channel, args)
|
||||
}
|
||||
|
||||
ipcRendererInternal.sendToAll = function (webContentsId, channel, ...args) {
|
||||
return binding.sendTo(internal, true, webContentsId, channel, args)
|
||||
return binding.ipc.sendTo(internal, true, webContentsId, channel, args)
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "electron",
|
||||
"version": "6.0.0-beta.11",
|
||||
"version": "6.0.0-beta.13",
|
||||
"repository": "https://github.com/electron/electron",
|
||||
"description": "Build cross platform desktop apps with JavaScript, HTML, and CSS",
|
||||
"devDependencies": {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: blink_world_context.patch
|
||||
|
||||
|
||||
diff --git a/third_party/blink/public/web/web_local_frame.h b/third_party/blink/public/web/web_local_frame.h
|
||||
index 82fb3fdfe6bfa8c8d885ee133270b6f2564325a8..f3bad71eab608d3b9ac0e08446c9e520f47e9b10 100644
|
||||
index 3159bc7b495003292a7122f7097c7b80cd67d5f8..7409627f0c1faa977807566da702068bf5061715 100644
|
||||
--- a/third_party/blink/public/web/web_local_frame.h
|
||||
+++ b/third_party/blink/public/web/web_local_frame.h
|
||||
@@ -355,6 +355,9 @@ class WebLocalFrame : public WebFrame {
|
||||
@@ -19,10 +19,10 @@ index 82fb3fdfe6bfa8c8d885ee133270b6f2564325a8..f3bad71eab608d3b9ac0e08446c9e520
|
||||
// that the script evaluated to with callback. Script execution can be
|
||||
// suspend.
|
||||
diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
|
||||
index b12520bc8d2f49d3bd03e4e9d228902e98785e3a..50fdbeec3d01cd16aa7a9f597fb4e6eb8451dffb 100644
|
||||
index 290973c5aea619fbe1ea8c736535b40f5db28e2b..4a787e86dac8bd07563cd1b37afeb051901860eb 100644
|
||||
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
|
||||
@@ -873,6 +873,13 @@ v8::Local<v8::Object> WebLocalFrameImpl::GlobalProxy() const {
|
||||
@@ -867,6 +867,13 @@ v8::Local<v8::Object> WebLocalFrameImpl::GlobalProxy() const {
|
||||
return MainWorldScriptContext()->Global();
|
||||
}
|
||||
|
||||
@@ -37,10 +37,10 @@ index b12520bc8d2f49d3bd03e4e9d228902e98785e3a..50fdbeec3d01cd16aa7a9f597fb4e6eb
|
||||
return BindingSecurity::ShouldAllowAccessToFrame(
|
||||
CurrentDOMWindow(V8PerIsolateData::MainThreadIsolate()),
|
||||
diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.h b/third_party/blink/renderer/core/frame/web_local_frame_impl.h
|
||||
index b503bf7cef554dfb35c2123cba51c0fba7402c7e..2d38c4cebcd4040bbd417d4ae9189da954d9cfce 100644
|
||||
index 96a8b2d9375524985a99c5d36fe9ba5c58db9a78..e9b95ef4e60c4f40c4fcbdb87996a86be5372ba8 100644
|
||||
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.h
|
||||
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.h
|
||||
@@ -146,6 +146,8 @@ class CORE_EXPORT WebLocalFrameImpl final
|
||||
@@ -145,6 +145,8 @@ class CORE_EXPORT WebLocalFrameImpl final
|
||||
int argc,
|
||||
v8::Local<v8::Value> argv[]) override;
|
||||
v8::Local<v8::Context> MainWorldScriptContext() const override;
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: can_create_window.patch
|
||||
|
||||
|
||||
diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc
|
||||
index bb48cb8d0ffe91df3e10e6bd5012a27acb3b37af..d766218e114c229da401a67503e24bcc524b752e 100644
|
||||
index a68f8d369cc661b93780d1ac47456bc51ee8a194..b069caa25093ba92b1fa3fbf1287d8e86ae6c4d2 100644
|
||||
--- a/content/browser/frame_host/render_frame_host_impl.cc
|
||||
+++ b/content/browser/frame_host/render_frame_host_impl.cc
|
||||
@@ -3717,6 +3717,7 @@ void RenderFrameHostImpl::CreateNewWindow(
|
||||
@@ -3761,6 +3761,7 @@ void RenderFrameHostImpl::CreateNewWindow(
|
||||
last_committed_origin_, params->window_container_type,
|
||||
params->target_url, params->referrer.To<Referrer>(),
|
||||
params->frame_name, params->disposition, *params->features,
|
||||
|
||||
@@ -88,7 +88,7 @@ index 392cf3d58c64c088596e8d321a2ce37b0ec60b6e..43e30f47240dc10a3a9b950255d4e487
|
||||
ui::Accelerator accelerator(
|
||||
ui::KeyboardCodeFromXKeyEvent(x_event), modifiers);
|
||||
diff --git a/ui/base/accelerators/media_keys_listener_mac.mm b/ui/base/accelerators/media_keys_listener_mac.mm
|
||||
index 71b417ee8b64aa2ff7f1b2390851668ec1dcd7cf..1768af408d4cc3075e5bae046649e4955cc400b3 100644
|
||||
index f4e3126a4efd66f05c4f13e40ba23db10b8cca96..bb4c1a891dd13855227b39a0e582fd4dbc342ec9 100644
|
||||
--- a/ui/base/accelerators/media_keys_listener_mac.mm
|
||||
+++ b/ui/base/accelerators/media_keys_listener_mac.mm
|
||||
@@ -33,6 +33,12 @@ KeyboardCode MediaKeyCodeToKeyboardCode(int key_code) {
|
||||
@@ -104,7 +104,7 @@ index 71b417ee8b64aa2ff7f1b2390851668ec1dcd7cf..1768af408d4cc3075e5bae046649e495
|
||||
}
|
||||
return VKEY_UNKNOWN;
|
||||
}
|
||||
@@ -192,7 +198,10 @@ static CGEventRef EventTapCallback(CGEventTapProxy proxy,
|
||||
@@ -193,7 +199,10 @@ static CGEventRef EventTapCallback(CGEventTapProxy proxy,
|
||||
int key_code = (data1 & 0xFFFF0000) >> 16;
|
||||
if (key_code != NX_KEYTYPE_PLAY && key_code != NX_KEYTYPE_NEXT &&
|
||||
key_code != NX_KEYTYPE_PREVIOUS && key_code != NX_KEYTYPE_FAST &&
|
||||
|
||||
@@ -235,10 +235,10 @@ index c09ee4ccb619327a8723b389b758d200bf49a45c..40d6675f3f7901fc76bbcc2a4854de0a
|
||||
network::switches::kExplicitlyAllowedPorts,
|
||||
service_manager::switches::kDisableInProcessStackTraces,
|
||||
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
|
||||
index 33817ba20ae6cbfec8a28313092df9c10b1bf966..ea1a574c1f6d2a0f880391b21397c2cb342cbc77 100644
|
||||
index a450561913e274b36ece94c22bae7b14930db36e..3b9a0a5cef0ec2fc02d4e2d1b0e4e1da8ad5b05e 100644
|
||||
--- a/content/renderer/render_widget.cc
|
||||
+++ b/content/renderer/render_widget.cc
|
||||
@@ -2810,6 +2810,9 @@ cc::LayerTreeSettings RenderWidget::GenerateLayerTreeSettings(
|
||||
@@ -2822,6 +2822,9 @@ cc::LayerTreeSettings RenderWidget::GenerateLayerTreeSettings(
|
||||
settings.main_frame_before_activation_enabled =
|
||||
cmd.HasSwitch(cc::switches::kEnableMainFrameBeforeActivation);
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: disable_user_gesture_requirement_for_beforeunload_dialogs.patch
|
||||
See https://github.com/electron/electron/issues/10754
|
||||
|
||||
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
|
||||
index 7be135720a40d819bf19afddce77670d721cfe59..1ceaf378636e16d5e93f5acc6ff42019fc87f680 100644
|
||||
index 8e56cae5da0a5973c14a218e9207edc56511f245..aa82630fa95515c30e5084ee757d6d3df52a094c 100644
|
||||
--- a/third_party/blink/renderer/core/dom/document.cc
|
||||
+++ b/third_party/blink/renderer/core/dom/document.cc
|
||||
@@ -3653,7 +3653,9 @@ bool Document::DispatchBeforeUnloadEvent(ChromeClient* chrome_client,
|
||||
@@ -3637,7 +3637,9 @@ bool Document::DispatchBeforeUnloadEvent(ChromeClient* chrome_client,
|
||||
"frame that never had a user gesture since its load. "
|
||||
"https://www.chromestatus.com/feature/5082396709879808";
|
||||
Intervention::GenerateReport(frame_, "BeforeUnloadNoGesture", message);
|
||||
|
||||
@@ -353,10 +353,18 @@ index 1802034a6e15a6ad8b0d9591cfb79ba5873dc982..a827091facdb4f6b1d74ce826c3492ce
|
||||
// Like PrintMsg_PrintPages, but using the print preview document's frame/node.
|
||||
IPC_MESSAGE_ROUTED0(PrintMsg_PrintForSystemDialog)
|
||||
diff --git a/components/printing/renderer/print_render_frame_helper.cc b/components/printing/renderer/print_render_frame_helper.cc
|
||||
index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2af6d9e047 100644
|
||||
index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..d842180c0d69b993971b50d5a1dcf8ad336dd7a9 100644
|
||||
--- a/components/printing/renderer/print_render_frame_helper.cc
|
||||
+++ b/components/printing/renderer/print_render_frame_helper.cc
|
||||
@@ -1115,7 +1115,9 @@ void PrintRenderFrameHelper::ScriptedPrint(bool user_initiated) {
|
||||
@@ -37,6 +37,7 @@
|
||||
#include "net/base/registry_controlled_domains/registry_controlled_domain.h"
|
||||
#include "printing/buildflags/buildflags.h"
|
||||
#include "printing/metafile_skia.h"
|
||||
+#include "printing/print_settings.h"
|
||||
#include "printing/units.h"
|
||||
#include "third_party/blink/public/common/frame/frame_owner_element_type.h"
|
||||
#include "third_party/blink/public/common/frame/sandbox_flags.h"
|
||||
@@ -1115,7 +1116,9 @@ void PrintRenderFrameHelper::ScriptedPrint(bool user_initiated) {
|
||||
web_frame->DispatchBeforePrintEvent();
|
||||
if (!weak_this)
|
||||
return;
|
||||
@@ -367,7 +375,7 @@ index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2a
|
||||
if (weak_this)
|
||||
web_frame->DispatchAfterPrintEvent();
|
||||
}
|
||||
@@ -1163,7 +1165,10 @@ void PrintRenderFrameHelper::OnDestruct() {
|
||||
@@ -1163,7 +1166,10 @@ void PrintRenderFrameHelper::OnDestruct() {
|
||||
delete this;
|
||||
}
|
||||
|
||||
@@ -379,7 +387,7 @@ index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2a
|
||||
if (ipc_nesting_level_ > 1)
|
||||
return;
|
||||
|
||||
@@ -1176,7 +1181,8 @@ void PrintRenderFrameHelper::OnPrintPages() {
|
||||
@@ -1176,7 +1182,8 @@ void PrintRenderFrameHelper::OnPrintPages() {
|
||||
// If we are printing a PDF extension frame, find the plugin node and print
|
||||
// that instead.
|
||||
auto plugin = delegate_->GetPdfElement(frame);
|
||||
@@ -389,7 +397,7 @@ index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2a
|
||||
if (weak_this)
|
||||
frame->DispatchAfterPrintEvent();
|
||||
// WARNING: |this| may be gone at this point. Do not do any more work here and
|
||||
@@ -1193,7 +1199,7 @@ void PrintRenderFrameHelper::OnPrintForSystemDialog() {
|
||||
@@ -1193,7 +1200,7 @@ void PrintRenderFrameHelper::OnPrintForSystemDialog() {
|
||||
}
|
||||
auto weak_this = weak_ptr_factory_.GetWeakPtr();
|
||||
Print(frame, print_preview_context_.source_node(),
|
||||
@@ -398,7 +406,7 @@ index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2a
|
||||
if (weak_this)
|
||||
frame->DispatchAfterPrintEvent();
|
||||
// WARNING: |this| may be gone at this point. Do not do any more work here and
|
||||
@@ -1229,6 +1235,8 @@ void PrintRenderFrameHelper::OnPrintPreview(
|
||||
@@ -1229,6 +1236,8 @@ void PrintRenderFrameHelper::OnPrintPreview(
|
||||
if (ipc_nesting_level_ > 1)
|
||||
return;
|
||||
|
||||
@@ -407,7 +415,7 @@ index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2a
|
||||
print_preview_context_.OnPrintPreview();
|
||||
|
||||
UMA_HISTOGRAM_ENUMERATION("PrintPreview.PreviewEvent",
|
||||
@@ -1621,7 +1629,10 @@ void PrintRenderFrameHelper::PrintNode(const blink::WebNode& node) {
|
||||
@@ -1621,7 +1630,10 @@ void PrintRenderFrameHelper::PrintNode(const blink::WebNode& node) {
|
||||
|
||||
auto self = weak_ptr_factory_.GetWeakPtr();
|
||||
Print(duplicate_node.GetDocument().GetFrame(), duplicate_node,
|
||||
@@ -419,7 +427,7 @@ index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2a
|
||||
// Check if |this| is still valid.
|
||||
if (!self)
|
||||
return;
|
||||
@@ -1632,7 +1643,10 @@ void PrintRenderFrameHelper::PrintNode(const blink::WebNode& node) {
|
||||
@@ -1632,7 +1644,10 @@ void PrintRenderFrameHelper::PrintNode(const blink::WebNode& node) {
|
||||
|
||||
void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame,
|
||||
const blink::WebNode& node,
|
||||
@@ -431,7 +439,7 @@ index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2a
|
||||
// If still not finished with earlier print request simply ignore.
|
||||
if (prep_frame_view_)
|
||||
return;
|
||||
@@ -1640,7 +1654,7 @@ void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame,
|
||||
@@ -1640,7 +1655,7 @@ void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame,
|
||||
FrameReference frame_ref(frame);
|
||||
|
||||
int expected_page_count = 0;
|
||||
@@ -440,19 +448,21 @@ index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2a
|
||||
DidFinishPrinting(FAIL_PRINT_INIT);
|
||||
return; // Failed to init print page settings.
|
||||
}
|
||||
@@ -1660,8 +1674,9 @@ void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame,
|
||||
@@ -1660,8 +1675,11 @@ void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame,
|
||||
|
||||
PrintMsg_PrintPages_Params print_settings;
|
||||
auto self = weak_ptr_factory_.GetWeakPtr();
|
||||
- GetPrintSettingsFromUser(frame_ref.GetFrame(), node, expected_page_count,
|
||||
- print_request_type, &print_settings);
|
||||
+ if (!silent)
|
||||
+ if (silent)
|
||||
+ print_settings = *print_pages_params_.get();
|
||||
+ else
|
||||
+ GetPrintSettingsFromUser(frame_ref.GetFrame(), node, expected_page_count,
|
||||
+ print_request_type, &print_settings);
|
||||
// Check if |this| is still valid.
|
||||
if (!self)
|
||||
return;
|
||||
@@ -1671,6 +1686,7 @@ void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame,
|
||||
@@ -1671,6 +1689,7 @@ void PrintRenderFrameHelper::Print(blink::WebLocalFrame* frame,
|
||||
? blink::kWebPrintScalingOptionSourceSize
|
||||
: scaling_option;
|
||||
SetPrintPagesParams(print_settings);
|
||||
@@ -460,7 +470,7 @@ index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2a
|
||||
if (print_settings.params.dpi.IsEmpty() ||
|
||||
!print_settings.params.document_cookie) {
|
||||
DidFinishPrinting(OK); // Release resources and fail silently on failure.
|
||||
@@ -1859,10 +1875,24 @@ std::vector<int> PrintRenderFrameHelper::GetPrintedPages(
|
||||
@@ -1859,10 +1878,24 @@ std::vector<int> PrintRenderFrameHelper::GetPrintedPages(
|
||||
return printed_pages;
|
||||
}
|
||||
|
||||
@@ -488,7 +498,7 @@ index 74f26daa76a22c749007f06a7f4eeeafb8bb297b..5c54aad4e874d723dd4b9e5733449d2a
|
||||
// Check if the printer returned any settings, if the settings is empty, we
|
||||
// can safely assume there are no printer drivers configured. So we safely
|
||||
// terminate.
|
||||
@@ -1882,12 +1912,14 @@ bool PrintRenderFrameHelper::InitPrintSettings(bool fit_to_paper_size) {
|
||||
@@ -1882,12 +1915,14 @@ bool PrintRenderFrameHelper::InitPrintSettings(bool fit_to_paper_size) {
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ index a2902adc59b6b4083334130f3a8e29fca0c440d2..34673d9ab62311c458a581f98865014f
|
||||
const blink::WebMouseEvent& event,
|
||||
const ui::LatencyInfo& latency) {
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_view_base.h b/content/browser/renderer_host/render_widget_host_view_base.h
|
||||
index 903131f45d4fa82af9a6315227505b54ee0f1560..6450a05a4829731d3dc2338fd51ef6d0720b7fcb 100644
|
||||
index 81bdc91eb3513fc9ebf3a5fc93e1cdb02b0ac11a..db980868272e5398d2100d5968d1b35f0d48e3eb 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_view_base.h
|
||||
+++ b/content/browser/renderer_host/render_widget_host_view_base.h
|
||||
@@ -24,9 +24,11 @@
|
||||
@@ -52,7 +52,7 @@ index 903131f45d4fa82af9a6315227505b54ee0f1560..6450a05a4829731d3dc2338fd51ef6d0
|
||||
class WebCursor;
|
||||
class DelegatedFrameHost;
|
||||
struct TextInputState;
|
||||
@@ -136,6 +140,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
@@ -135,6 +139,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
bool destination_is_loaded,
|
||||
bool destination_is_frozen) final;
|
||||
|
||||
@@ -62,7 +62,7 @@ index 903131f45d4fa82af9a6315227505b54ee0f1560..6450a05a4829731d3dc2338fd51ef6d0
|
||||
// This only needs to be overridden by RenderWidgetHostViewBase subclasses
|
||||
// that handle content embedded within other RenderWidgetHostViews.
|
||||
gfx::PointF TransformPointToRootCoordSpaceF(
|
||||
@@ -364,6 +371,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
@@ -363,6 +370,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
virtual void ProcessGestureEvent(const blink::WebGestureEvent& event,
|
||||
const ui::LatencyInfo& latency);
|
||||
|
||||
|
||||
@@ -111,7 +111,7 @@ index f17983a5cc70f8ab1e5c531de8e26fdec04a079b..16aefe38f0c674d97a89d3e511dc104a
|
||||
"display_embedder/software_output_surface.h",
|
||||
"display_embedder/viz_process_context_provider.cc",
|
||||
diff --git a/components/viz/service/display_embedder/output_surface_provider_impl.cc b/components/viz/service/display_embedder/output_surface_provider_impl.cc
|
||||
index 8fe397588eb47224d48a8642b814583d11cc9c09..a7072c8e16434d3b15db1599f43d8fab5a97bdf3 100644
|
||||
index 1f8132354d2536c6371afeb9086626f5059b49bf..bbb0f95623958052cafb92f2534284af21a217e1 100644
|
||||
--- a/components/viz/service/display_embedder/output_surface_provider_impl.cc
|
||||
+++ b/components/viz/service/display_embedder/output_surface_provider_impl.cc
|
||||
@@ -18,6 +18,7 @@
|
||||
@@ -122,7 +122,7 @@ index 8fe397588eb47224d48a8642b814583d11cc9c09..a7072c8e16434d3b15db1599f43d8fab
|
||||
#include "components/viz/service/display_embedder/software_output_surface.h"
|
||||
#include "components/viz/service/display_embedder/viz_process_context_provider.h"
|
||||
#include "components/viz/service/gl/gpu_service_impl.h"
|
||||
@@ -243,6 +244,19 @@ OutputSurfaceProviderImpl::CreateSoftwareOutputDeviceForPlatform(
|
||||
@@ -244,6 +245,19 @@ OutputSurfaceProviderImpl::CreateSoftwareOutputDeviceForPlatform(
|
||||
if (headless_)
|
||||
return std::make_unique<SoftwareOutputDevice>();
|
||||
|
||||
@@ -481,7 +481,7 @@ index 4e3f0255d5fe4991004a50768932c36c42d999ff..bf352091cef00482e3cec74cd523e469
|
||||
return std::make_unique<SoftwareOutputDeviceWinDirect>(hwnd, backing);
|
||||
}
|
||||
diff --git a/services/viz/privileged/interfaces/compositing/display_private.mojom b/services/viz/privileged/interfaces/compositing/display_private.mojom
|
||||
index deb327b7705462d2cc07edb9d37528035377af8b..bc6958aa7e4dc14d3e0cf040299642825194e2fc 100644
|
||||
index cd8dd80230d199eb05c70710aa681c491ead1646..7b61f33156a4e182ee6ddffc267be798af335989 100644
|
||||
--- a/services/viz/privileged/interfaces/compositing/display_private.mojom
|
||||
+++ b/services/viz/privileged/interfaces/compositing/display_private.mojom
|
||||
@@ -77,12 +77,14 @@ interface DisplayPrivate {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: web_contents.patch
|
||||
|
||||
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index f88cff5ab6d117c24cd827bdf30f8dff10b09ade..8ab7f889b7bed52c03d9061c1f061472eea1d599 100644
|
||||
index 69c5bb6eaf68bfb81f86a3598091203cc98ea45f..893b8c059c986b0ec5b8602358a5eb0e8828333d 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -2070,6 +2070,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
|
||||
|
||||
@@ -1,98 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
import argparse
|
||||
import os
|
||||
import sys
|
||||
|
||||
from lib.config import PLATFORM, enable_verbose_mode, is_verbose_mode
|
||||
from lib.util import get_electron_branding, execute, rm_rf, get_out_dir, \
|
||||
SRC_DIR
|
||||
|
||||
ELECTRON_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
|
||||
SOURCE_ROOT = os.path.abspath(os.path.dirname(ELECTRON_ROOT))
|
||||
RELEASE_PATH = get_out_dir()
|
||||
|
||||
def main():
|
||||
args = parse_args()
|
||||
if args.verbose:
|
||||
enable_verbose_mode()
|
||||
rm_rf(args.destination)
|
||||
source_root = os.path.abspath(args.source_root)
|
||||
build_path = os.path.join(source_root, args.build_dir)
|
||||
(project_name, product_name) = get_names_from_branding()
|
||||
|
||||
if PLATFORM in ['darwin', 'linux']:
|
||||
|
||||
if PLATFORM == 'darwin':
|
||||
#macOS has an additional helper app; provide the path to that binary also
|
||||
main_app = os.path.join(build_path, '{0}.app'.format(product_name),
|
||||
'Contents', 'MacOS', product_name)
|
||||
helper_name = product_name + " Helper"
|
||||
helper_app = os.path.join(build_path, '{0}.app'.format(helper_name),
|
||||
'Contents', 'MacOS', product_name + " Helper")
|
||||
binaries = [main_app, helper_app]
|
||||
for binary in binaries:
|
||||
generate_posix_symbols(binary, source_root, build_path,
|
||||
args.destination)
|
||||
else:
|
||||
binary = os.path.join(build_path, project_name)
|
||||
generate_posix_symbols(binary, source_root, build_path,
|
||||
args.destination)
|
||||
|
||||
else:
|
||||
generate_breakpad_symbols = os.path.join(ELECTRON_ROOT, 'tools', 'win',
|
||||
'generate_breakpad_symbols.py')
|
||||
args = [
|
||||
'--symbols-dir={0}'.format(args.destination),
|
||||
'--jobs=16',
|
||||
os.path.relpath(build_path),
|
||||
]
|
||||
if is_verbose_mode():
|
||||
args += ['-v']
|
||||
#Make sure msdia140.dll is in the path (needed for dump_syms.exe)
|
||||
env = os.environ.copy()
|
||||
msdia140_dll_path = os.path.join(SRC_DIR, 'third_party', 'llvm-build',
|
||||
'Release+Asserts', 'bin')
|
||||
env['PATH'] = os.path.pathsep.join(
|
||||
[env.get('PATH', '')] + [msdia140_dll_path])
|
||||
execute([sys.executable, generate_breakpad_symbols] + args, env)
|
||||
|
||||
def get_names_from_branding():
|
||||
variables = get_electron_branding()
|
||||
return (variables['project_name'], variables['product_name'])
|
||||
|
||||
def generate_posix_symbols(binary, source_root, build_dir, destination):
|
||||
generate_breakpad_symbols = os.path.join(source_root, 'components', 'crash',
|
||||
'content', 'tools',
|
||||
'generate_breakpad_symbols.py')
|
||||
args = [
|
||||
'--build-dir={0}'.format(build_dir),
|
||||
'--symbols-dir={0}'.format(destination),
|
||||
'--jobs=16',
|
||||
'--binary={0}'.format(binary),
|
||||
]
|
||||
if is_verbose_mode():
|
||||
args += ['--verbose']
|
||||
execute([sys.executable, generate_breakpad_symbols] + args)
|
||||
|
||||
def parse_args():
|
||||
parser = argparse.ArgumentParser(description='Create breakpad symbols')
|
||||
parser.add_argument('-b', '--build-dir',
|
||||
help='Path to an Electron build folder.',
|
||||
default=RELEASE_PATH,
|
||||
required=False)
|
||||
parser.add_argument('-d', '--destination',
|
||||
help='Path to save symbols to.',
|
||||
default=None,
|
||||
required=True)
|
||||
parser.add_argument('-s', '--source-root',
|
||||
help='Path to the src folder.',
|
||||
default=SOURCE_ROOT,
|
||||
required=False)
|
||||
parser.add_argument('-v', '--verbose',
|
||||
action='store_true',
|
||||
help='Prints the output of the subprocesses')
|
||||
return parser.parse_args()
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.exit(main())
|
||||
14
script/generate-zip-manifest.py
Executable file
14
script/generate-zip-manifest.py
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
import zipfile
|
||||
import sys
|
||||
|
||||
def main(zip_path, manifest_out):
|
||||
with open(manifest_out, 'w') as manifest, \
|
||||
zipfile.ZipFile(zip_path, 'r', allowZip64=True) as z:
|
||||
for name in sorted(z.namelist()):
|
||||
manifest.write(name + '\n')
|
||||
return 0
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.exit(main(*sys.argv[1:]))
|
||||
@@ -80,25 +80,25 @@ function saveSpecHash ([newSpecHash, newSpecInstallHash]) {
|
||||
|
||||
async function runElectronTests () {
|
||||
const errors = []
|
||||
const runners = [
|
||||
['Main process specs', 'main', runMainProcessElectronTests],
|
||||
['Remote based specs', 'remote', runRemoteBasedElectronTests]
|
||||
]
|
||||
const runners = new Map([
|
||||
['main', { description: 'Main process specs', run: runMainProcessElectronTests }],
|
||||
['remote', { description: 'Remote based specs', run: runRemoteBasedElectronTests }]
|
||||
])
|
||||
|
||||
const mochaFile = process.env.MOCHA_FILE
|
||||
for (const runner of runners) {
|
||||
if (runnersToRun && !runnersToRun.includes(runner[1])) {
|
||||
console.info('\nSkipping:', runner[0])
|
||||
const testResultsDir = process.env.ELECTRON_TEST_RESULTS_DIR
|
||||
for (const [runnerId, { description, run }] of runners) {
|
||||
if (runnersToRun && !runnersToRun.includes(runnerId)) {
|
||||
console.info('\nSkipping:', description)
|
||||
continue
|
||||
}
|
||||
try {
|
||||
console.info('\nRunning:', runner[0])
|
||||
if (mochaFile) {
|
||||
process.env.MOCHA_FILE = mochaFile.replace('.xml', `-${runner[1]}.xml`)
|
||||
console.info('\nRunning:', description)
|
||||
if (testResultsDir) {
|
||||
process.env.MOCHA_FILE = path.join(testResultsDir, `test-results-${runnerId}.xml`)
|
||||
}
|
||||
await runner[2]()
|
||||
await run()
|
||||
} catch (err) {
|
||||
errors.push([runner[0], err])
|
||||
errors.push([runnerId, err])
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
27
script/zip_manifests/check-zip-manifest.py
Executable file
27
script/zip_manifests/check-zip-manifest.py
Executable file
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
import zipfile
|
||||
import sys
|
||||
|
||||
def main(zip_path, manifest_in):
|
||||
with open(manifest_in, 'r') as manifest, \
|
||||
zipfile.ZipFile(zip_path, 'r', allowZip64=True) as z:
|
||||
files_in_zip = set(z.namelist())
|
||||
files_in_manifest = set([l.strip() for l in manifest.readlines()])
|
||||
added_files = files_in_zip - files_in_manifest
|
||||
removed_files = files_in_manifest - files_in_zip
|
||||
if added_files:
|
||||
print("Files added to bundle:")
|
||||
for f in sorted(list(added_files)):
|
||||
print('+' + f)
|
||||
if removed_files:
|
||||
print("Files removed from bundle:")
|
||||
for f in sorted(list(removed_files)):
|
||||
print('-' + f)
|
||||
if added_files or removed_files:
|
||||
return 1
|
||||
else:
|
||||
return 0
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.exit(main(*sys.argv[1:]))
|
||||
70
script/zip_manifests/dist_zip.linux.arm.manifest
Normal file
70
script/zip_manifests/dist_zip.linux.arm.manifest
Normal file
@@ -0,0 +1,70 @@
|
||||
LICENSE
|
||||
LICENSES.chromium.html
|
||||
chrome-sandbox
|
||||
chrome_100_percent.pak
|
||||
chrome_200_percent.pak
|
||||
electron
|
||||
icudtl.dat
|
||||
libEGL.so
|
||||
libGLESv2.so
|
||||
libffmpeg.so
|
||||
locales/am.pak
|
||||
locales/ar.pak
|
||||
locales/bg.pak
|
||||
locales/bn.pak
|
||||
locales/ca.pak
|
||||
locales/cs.pak
|
||||
locales/da.pak
|
||||
locales/de.pak
|
||||
locales/el.pak
|
||||
locales/en-GB.pak
|
||||
locales/en-US.pak
|
||||
locales/es-419.pak
|
||||
locales/es.pak
|
||||
locales/et.pak
|
||||
locales/fa.pak
|
||||
locales/fi.pak
|
||||
locales/fil.pak
|
||||
locales/fr.pak
|
||||
locales/gu.pak
|
||||
locales/he.pak
|
||||
locales/hi.pak
|
||||
locales/hr.pak
|
||||
locales/hu.pak
|
||||
locales/id.pak
|
||||
locales/it.pak
|
||||
locales/ja.pak
|
||||
locales/kn.pak
|
||||
locales/ko.pak
|
||||
locales/lt.pak
|
||||
locales/lv.pak
|
||||
locales/ml.pak
|
||||
locales/mr.pak
|
||||
locales/ms.pak
|
||||
locales/nb.pak
|
||||
locales/nl.pak
|
||||
locales/pl.pak
|
||||
locales/pt-BR.pak
|
||||
locales/pt-PT.pak
|
||||
locales/ro.pak
|
||||
locales/ru.pak
|
||||
locales/sk.pak
|
||||
locales/sl.pak
|
||||
locales/sr.pak
|
||||
locales/sv.pak
|
||||
locales/sw.pak
|
||||
locales/ta.pak
|
||||
locales/te.pak
|
||||
locales/th.pak
|
||||
locales/tr.pak
|
||||
locales/uk.pak
|
||||
locales/vi.pak
|
||||
locales/zh-CN.pak
|
||||
locales/zh-TW.pak
|
||||
natives_blob.bin
|
||||
resources.pak
|
||||
resources/default_app.asar
|
||||
resources/electron.asar
|
||||
snapshot_blob.bin
|
||||
v8_context_snapshot.bin
|
||||
version
|
||||
72
script/zip_manifests/dist_zip.linux.arm64.manifest
Normal file
72
script/zip_manifests/dist_zip.linux.arm64.manifest
Normal file
@@ -0,0 +1,72 @@
|
||||
LICENSE
|
||||
LICENSES.chromium.html
|
||||
chrome-sandbox
|
||||
chrome_100_percent.pak
|
||||
chrome_200_percent.pak
|
||||
electron
|
||||
icudtl.dat
|
||||
libEGL.so
|
||||
libGLESv2.so
|
||||
libffmpeg.so
|
||||
locales/am.pak
|
||||
locales/ar.pak
|
||||
locales/bg.pak
|
||||
locales/bn.pak
|
||||
locales/ca.pak
|
||||
locales/cs.pak
|
||||
locales/da.pak
|
||||
locales/de.pak
|
||||
locales/el.pak
|
||||
locales/en-GB.pak
|
||||
locales/en-US.pak
|
||||
locales/es-419.pak
|
||||
locales/es.pak
|
||||
locales/et.pak
|
||||
locales/fa.pak
|
||||
locales/fi.pak
|
||||
locales/fil.pak
|
||||
locales/fr.pak
|
||||
locales/gu.pak
|
||||
locales/he.pak
|
||||
locales/hi.pak
|
||||
locales/hr.pak
|
||||
locales/hu.pak
|
||||
locales/id.pak
|
||||
locales/it.pak
|
||||
locales/ja.pak
|
||||
locales/kn.pak
|
||||
locales/ko.pak
|
||||
locales/lt.pak
|
||||
locales/lv.pak
|
||||
locales/ml.pak
|
||||
locales/mr.pak
|
||||
locales/ms.pak
|
||||
locales/nb.pak
|
||||
locales/nl.pak
|
||||
locales/pl.pak
|
||||
locales/pt-BR.pak
|
||||
locales/pt-PT.pak
|
||||
locales/ro.pak
|
||||
locales/ru.pak
|
||||
locales/sk.pak
|
||||
locales/sl.pak
|
||||
locales/sr.pak
|
||||
locales/sv.pak
|
||||
locales/sw.pak
|
||||
locales/ta.pak
|
||||
locales/te.pak
|
||||
locales/th.pak
|
||||
locales/tr.pak
|
||||
locales/uk.pak
|
||||
locales/vi.pak
|
||||
locales/zh-CN.pak
|
||||
locales/zh-TW.pak
|
||||
natives_blob.bin
|
||||
resources.pak
|
||||
resources/default_app.asar
|
||||
resources/electron.asar
|
||||
snapshot_blob.bin
|
||||
swiftshader/libEGL.so
|
||||
swiftshader/libGLESv2.so
|
||||
v8_context_snapshot.bin
|
||||
version
|
||||
72
script/zip_manifests/dist_zip.linux.x64.manifest
Normal file
72
script/zip_manifests/dist_zip.linux.x64.manifest
Normal file
@@ -0,0 +1,72 @@
|
||||
LICENSE
|
||||
LICENSES.chromium.html
|
||||
chrome-sandbox
|
||||
chrome_100_percent.pak
|
||||
chrome_200_percent.pak
|
||||
electron
|
||||
icudtl.dat
|
||||
libEGL.so
|
||||
libGLESv2.so
|
||||
libffmpeg.so
|
||||
locales/am.pak
|
||||
locales/ar.pak
|
||||
locales/bg.pak
|
||||
locales/bn.pak
|
||||
locales/ca.pak
|
||||
locales/cs.pak
|
||||
locales/da.pak
|
||||
locales/de.pak
|
||||
locales/el.pak
|
||||
locales/en-GB.pak
|
||||
locales/en-US.pak
|
||||
locales/es-419.pak
|
||||
locales/es.pak
|
||||
locales/et.pak
|
||||
locales/fa.pak
|
||||
locales/fi.pak
|
||||
locales/fil.pak
|
||||
locales/fr.pak
|
||||
locales/gu.pak
|
||||
locales/he.pak
|
||||
locales/hi.pak
|
||||
locales/hr.pak
|
||||
locales/hu.pak
|
||||
locales/id.pak
|
||||
locales/it.pak
|
||||
locales/ja.pak
|
||||
locales/kn.pak
|
||||
locales/ko.pak
|
||||
locales/lt.pak
|
||||
locales/lv.pak
|
||||
locales/ml.pak
|
||||
locales/mr.pak
|
||||
locales/ms.pak
|
||||
locales/nb.pak
|
||||
locales/nl.pak
|
||||
locales/pl.pak
|
||||
locales/pt-BR.pak
|
||||
locales/pt-PT.pak
|
||||
locales/ro.pak
|
||||
locales/ru.pak
|
||||
locales/sk.pak
|
||||
locales/sl.pak
|
||||
locales/sr.pak
|
||||
locales/sv.pak
|
||||
locales/sw.pak
|
||||
locales/ta.pak
|
||||
locales/te.pak
|
||||
locales/th.pak
|
||||
locales/tr.pak
|
||||
locales/uk.pak
|
||||
locales/vi.pak
|
||||
locales/zh-CN.pak
|
||||
locales/zh-TW.pak
|
||||
natives_blob.bin
|
||||
resources.pak
|
||||
resources/default_app.asar
|
||||
resources/electron.asar
|
||||
snapshot_blob.bin
|
||||
swiftshader/libEGL.so
|
||||
swiftshader/libGLESv2.so
|
||||
v8_context_snapshot.bin
|
||||
version
|
||||
72
script/zip_manifests/dist_zip.linux.x86.manifest
Normal file
72
script/zip_manifests/dist_zip.linux.x86.manifest
Normal file
@@ -0,0 +1,72 @@
|
||||
LICENSE
|
||||
LICENSES.chromium.html
|
||||
chrome-sandbox
|
||||
chrome_100_percent.pak
|
||||
chrome_200_percent.pak
|
||||
electron
|
||||
icudtl.dat
|
||||
libEGL.so
|
||||
libGLESv2.so
|
||||
libffmpeg.so
|
||||
locales/am.pak
|
||||
locales/ar.pak
|
||||
locales/bg.pak
|
||||
locales/bn.pak
|
||||
locales/ca.pak
|
||||
locales/cs.pak
|
||||
locales/da.pak
|
||||
locales/de.pak
|
||||
locales/el.pak
|
||||
locales/en-GB.pak
|
||||
locales/en-US.pak
|
||||
locales/es-419.pak
|
||||
locales/es.pak
|
||||
locales/et.pak
|
||||
locales/fa.pak
|
||||
locales/fi.pak
|
||||
locales/fil.pak
|
||||
locales/fr.pak
|
||||
locales/gu.pak
|
||||
locales/he.pak
|
||||
locales/hi.pak
|
||||
locales/hr.pak
|
||||
locales/hu.pak
|
||||
locales/id.pak
|
||||
locales/it.pak
|
||||
locales/ja.pak
|
||||
locales/kn.pak
|
||||
locales/ko.pak
|
||||
locales/lt.pak
|
||||
locales/lv.pak
|
||||
locales/ml.pak
|
||||
locales/mr.pak
|
||||
locales/ms.pak
|
||||
locales/nb.pak
|
||||
locales/nl.pak
|
||||
locales/pl.pak
|
||||
locales/pt-BR.pak
|
||||
locales/pt-PT.pak
|
||||
locales/ro.pak
|
||||
locales/ru.pak
|
||||
locales/sk.pak
|
||||
locales/sl.pak
|
||||
locales/sr.pak
|
||||
locales/sv.pak
|
||||
locales/sw.pak
|
||||
locales/ta.pak
|
||||
locales/te.pak
|
||||
locales/th.pak
|
||||
locales/tr.pak
|
||||
locales/uk.pak
|
||||
locales/vi.pak
|
||||
locales/zh-CN.pak
|
||||
locales/zh-TW.pak
|
||||
natives_blob.bin
|
||||
resources.pak
|
||||
resources/default_app.asar
|
||||
resources/electron.asar
|
||||
snapshot_blob.bin
|
||||
swiftshader/libEGL.so
|
||||
swiftshader/libGLESv2.so
|
||||
v8_context_snapshot.bin
|
||||
version
|
||||
316
script/zip_manifests/dist_zip.mac.x64.manifest
Normal file
316
script/zip_manifests/dist_zip.mac.x64.manifest
Normal file
@@ -0,0 +1,316 @@
|
||||
Electron.app/
|
||||
Electron.app/Contents/
|
||||
Electron.app/Contents/Frameworks/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Electron Framework
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Libraries
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Resources
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libEGL.dylib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libGLESv2.dylib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libffmpeg.dylib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libswiftshader_libEGL.dylib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libswiftshader_libGLESv2.dylib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/Info.plist
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/MainMenu.nib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/am.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/am.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ar.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ar.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/bg.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/bg.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/bn.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/bn.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ca.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ca.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/chrome_100_percent.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/chrome_200_percent.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/crashpad_handler
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/cs.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/cs.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/da.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/da.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/de.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/de.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/el.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/el.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/en.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/en.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/en_GB.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/en_GB.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/es.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/es.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/es_419.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/es_419.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/et.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/et.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fa.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fa.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fi.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fi.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fil.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fil.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fr.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fr.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/gu.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/gu.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/he.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/he.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hi.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hi.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hr.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hr.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hu.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hu.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/icudtl.dat
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/id.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/id.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/it.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/it.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ja.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ja.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/kn.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/kn.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ko.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ko.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/lt.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/lt.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/lv.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/lv.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ml.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ml.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/mr.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/mr.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ms.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ms.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/natives_blob.bin
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/nb.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/nb.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/nl.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/nl.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pl.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pl.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pt_BR.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pt_BR.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pt_PT.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pt_PT.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/resources.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ro.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ro.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ru.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ru.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sk.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sk.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sl.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sl.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sr.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sr.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sv.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sv.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sw.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sw.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ta.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ta.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/te.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/te.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/th.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/th.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/tr.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/tr.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/uk.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/uk.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/v8_context_snapshot.bin
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/vi.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/vi.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/zh_CN.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/zh_CN.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/zh_TW.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/zh_TW.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/Current
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/Info.plist
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/MacOS/
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/MacOS/Electron Helper
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/PkgInfo
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Headers
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Mantle
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Modules
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Resources
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/MTLJSONAdapter.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/MTLManagedObjectAdapter.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/MTLModel+NSCoding.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/MTLModel.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/MTLValueTransformer.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/Mantle.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/NSArray+MTLManipulationAdditions.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/NSDictionary+MTLManipulationAdditions.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/NSObject+MTLComparisonAdditions.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/NSValueTransformer+MTLInversionAdditions.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Headers/NSValueTransformer+MTLPredefinedTransformerAdditions.h
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Mantle
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Modules/
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Modules/module.modulemap
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Resources/
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/A/Resources/Info.plist
|
||||
Electron.app/Contents/Frameworks/Mantle.framework/Versions/Current
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Headers
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Modules
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/ReactiveCocoa
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Resources
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/EXTKeyPathCoding.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/EXTScope.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSArray+RACSequenceAdditions.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSControl+RACCommandSupport.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSControl+RACTextSignalSupport.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSData+RACSupport.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSDictionary+RACSequenceAdditions.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSEnumerator+RACSequenceAdditions.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSFileHandle+RACSupport.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSIndexSet+RACSequenceAdditions.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSNotificationCenter+RACSupport.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSObject+RACAppKitBindings.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSObject+RACDeallocating.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSObject+RACLifting.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSObject+RACPropertySubscribing.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSObject+RACSelectorSignal.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSOrderedSet+RACSequenceAdditions.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSSet+RACSequenceAdditions.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSString+RACSequenceAdditions.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSString+RACSupport.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSText+RACSignalSupport.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSURLConnection+RACSupport.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/NSUserDefaults+RACSupport.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACBacktrace.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACBehaviorSubject.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACChannel.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACCommand.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACCompoundDisposable.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACDisposable.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACEvent.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACGroupedSignal.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACKVOChannel.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACMulticastConnection.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACQueueScheduler+Subclass.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACQueueScheduler.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACReplaySubject.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACScheduler+Subclass.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACScheduler.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACScopedDisposable.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACSequence.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACSerialDisposable.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACSignal+Operations.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACSignal.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACStream.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACSubject.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACSubscriber.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACSubscriptingAssignmentTrampoline.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACTargetQueueScheduler.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACTestScheduler.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACTuple.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/RACUnit.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/ReactiveCocoa.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Headers/metamacros.h
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Modules/
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Modules/module.modulemap
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/ReactiveCocoa
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Resources/
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/A/Resources/Info.plist
|
||||
Electron.app/Contents/Frameworks/ReactiveCocoa.framework/Versions/Current
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Headers
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Modules
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Resources
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Squirrel
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Headers/
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Headers/NSBundle+SQRLVersionExtensions.h
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Headers/NSProcessInfo+SQRLVersionExtensions.h
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Headers/SQRLDownloadedUpdate.h
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Headers/SQRLUpdate.h
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Headers/SQRLUpdater.h
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Headers/Squirrel.h
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Modules/
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Modules/module.modulemap
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Resources/
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Resources/Info.plist
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Resources/ShipIt
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/A/Squirrel
|
||||
Electron.app/Contents/Frameworks/Squirrel.framework/Versions/Current
|
||||
Electron.app/Contents/Info.plist
|
||||
Electron.app/Contents/MacOS/
|
||||
Electron.app/Contents/MacOS/Electron
|
||||
Electron.app/Contents/PkgInfo
|
||||
Electron.app/Contents/Resources/
|
||||
Electron.app/Contents/Resources/am.lproj/
|
||||
Electron.app/Contents/Resources/ar.lproj/
|
||||
Electron.app/Contents/Resources/bg.lproj/
|
||||
Electron.app/Contents/Resources/bn.lproj/
|
||||
Electron.app/Contents/Resources/ca.lproj/
|
||||
Electron.app/Contents/Resources/cs.lproj/
|
||||
Electron.app/Contents/Resources/da.lproj/
|
||||
Electron.app/Contents/Resources/de.lproj/
|
||||
Electron.app/Contents/Resources/default_app.asar
|
||||
Electron.app/Contents/Resources/el.lproj/
|
||||
Electron.app/Contents/Resources/electron.asar
|
||||
Electron.app/Contents/Resources/electron.icns
|
||||
Electron.app/Contents/Resources/en.lproj/
|
||||
Electron.app/Contents/Resources/en_GB.lproj/
|
||||
Electron.app/Contents/Resources/es.lproj/
|
||||
Electron.app/Contents/Resources/es_419.lproj/
|
||||
Electron.app/Contents/Resources/et.lproj/
|
||||
Electron.app/Contents/Resources/fa.lproj/
|
||||
Electron.app/Contents/Resources/fi.lproj/
|
||||
Electron.app/Contents/Resources/fil.lproj/
|
||||
Electron.app/Contents/Resources/fr.lproj/
|
||||
Electron.app/Contents/Resources/gu.lproj/
|
||||
Electron.app/Contents/Resources/he.lproj/
|
||||
Electron.app/Contents/Resources/hi.lproj/
|
||||
Electron.app/Contents/Resources/hr.lproj/
|
||||
Electron.app/Contents/Resources/hu.lproj/
|
||||
Electron.app/Contents/Resources/id.lproj/
|
||||
Electron.app/Contents/Resources/it.lproj/
|
||||
Electron.app/Contents/Resources/ja.lproj/
|
||||
Electron.app/Contents/Resources/kn.lproj/
|
||||
Electron.app/Contents/Resources/ko.lproj/
|
||||
Electron.app/Contents/Resources/lt.lproj/
|
||||
Electron.app/Contents/Resources/lv.lproj/
|
||||
Electron.app/Contents/Resources/ml.lproj/
|
||||
Electron.app/Contents/Resources/mr.lproj/
|
||||
Electron.app/Contents/Resources/ms.lproj/
|
||||
Electron.app/Contents/Resources/nb.lproj/
|
||||
Electron.app/Contents/Resources/nl.lproj/
|
||||
Electron.app/Contents/Resources/pl.lproj/
|
||||
Electron.app/Contents/Resources/pt_BR.lproj/
|
||||
Electron.app/Contents/Resources/pt_PT.lproj/
|
||||
Electron.app/Contents/Resources/ro.lproj/
|
||||
Electron.app/Contents/Resources/ru.lproj/
|
||||
Electron.app/Contents/Resources/sk.lproj/
|
||||
Electron.app/Contents/Resources/sl.lproj/
|
||||
Electron.app/Contents/Resources/sr.lproj/
|
||||
Electron.app/Contents/Resources/sv.lproj/
|
||||
Electron.app/Contents/Resources/sw.lproj/
|
||||
Electron.app/Contents/Resources/ta.lproj/
|
||||
Electron.app/Contents/Resources/te.lproj/
|
||||
Electron.app/Contents/Resources/th.lproj/
|
||||
Electron.app/Contents/Resources/tr.lproj/
|
||||
Electron.app/Contents/Resources/uk.lproj/
|
||||
Electron.app/Contents/Resources/vi.lproj/
|
||||
Electron.app/Contents/Resources/zh_CN.lproj/
|
||||
Electron.app/Contents/Resources/zh_TW.lproj/
|
||||
LICENSE
|
||||
LICENSES.chromium.html
|
||||
version
|
||||
210
script/zip_manifests/dist_zip.mac_mas.x64.manifest
Normal file
210
script/zip_manifests/dist_zip.mac_mas.x64.manifest
Normal file
@@ -0,0 +1,210 @@
|
||||
Electron.app/
|
||||
Electron.app/Contents/
|
||||
Electron.app/Contents/Frameworks/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Electron Framework
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Libraries
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Resources
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libEGL.dylib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libGLESv2.dylib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libffmpeg.dylib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libswiftshader_libEGL.dylib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libswiftshader_libGLESv2.dylib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/Info.plist
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/MainMenu.nib
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/am.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/am.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ar.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ar.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/bg.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/bg.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/bn.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/bn.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ca.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ca.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/chrome_100_percent.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/chrome_200_percent.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/cs.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/cs.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/da.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/da.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/de.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/de.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/el.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/el.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/en.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/en.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/en_GB.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/en_GB.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/es.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/es.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/es_419.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/es_419.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/et.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/et.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fa.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fa.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fi.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fi.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fil.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fil.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fr.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/fr.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/gu.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/gu.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/he.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/he.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hi.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hi.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hr.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hr.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hu.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/hu.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/icudtl.dat
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/id.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/id.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/it.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/it.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ja.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ja.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/kn.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/kn.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ko.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ko.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/lt.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/lt.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/lv.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/lv.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ml.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ml.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/mr.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/mr.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ms.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ms.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/natives_blob.bin
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/nb.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/nb.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/nl.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/nl.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pl.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pl.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pt_BR.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pt_BR.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pt_PT.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/pt_PT.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/resources.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ro.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ro.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ru.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ru.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sk.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sk.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sl.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sl.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sr.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sr.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sv.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sv.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sw.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/sw.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ta.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/ta.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/te.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/te.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/th.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/th.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/tr.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/tr.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/uk.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/uk.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/v8_context_snapshot.bin
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/vi.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/vi.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/zh_CN.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/zh_CN.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/zh_TW.lproj/
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Resources/zh_TW.lproj/locale.pak
|
||||
Electron.app/Contents/Frameworks/Electron Framework.framework/Versions/Current
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/Info.plist
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/MacOS/
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/MacOS/Electron Helper
|
||||
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/PkgInfo
|
||||
Electron.app/Contents/Info.plist
|
||||
Electron.app/Contents/Library/
|
||||
Electron.app/Contents/Library/LoginItems/
|
||||
Electron.app/Contents/Library/LoginItems/Electron Login Helper.app/
|
||||
Electron.app/Contents/Library/LoginItems/Electron Login Helper.app/Contents/
|
||||
Electron.app/Contents/Library/LoginItems/Electron Login Helper.app/Contents/Info.plist
|
||||
Electron.app/Contents/Library/LoginItems/Electron Login Helper.app/Contents/MacOS/
|
||||
Electron.app/Contents/Library/LoginItems/Electron Login Helper.app/Contents/MacOS/Electron Login Helper
|
||||
Electron.app/Contents/Library/LoginItems/Electron Login Helper.app/Contents/PkgInfo
|
||||
Electron.app/Contents/MacOS/
|
||||
Electron.app/Contents/MacOS/Electron
|
||||
Electron.app/Contents/PkgInfo
|
||||
Electron.app/Contents/Resources/
|
||||
Electron.app/Contents/Resources/am.lproj/
|
||||
Electron.app/Contents/Resources/ar.lproj/
|
||||
Electron.app/Contents/Resources/bg.lproj/
|
||||
Electron.app/Contents/Resources/bn.lproj/
|
||||
Electron.app/Contents/Resources/ca.lproj/
|
||||
Electron.app/Contents/Resources/cs.lproj/
|
||||
Electron.app/Contents/Resources/da.lproj/
|
||||
Electron.app/Contents/Resources/de.lproj/
|
||||
Electron.app/Contents/Resources/default_app.asar
|
||||
Electron.app/Contents/Resources/el.lproj/
|
||||
Electron.app/Contents/Resources/electron.asar
|
||||
Electron.app/Contents/Resources/electron.icns
|
||||
Electron.app/Contents/Resources/en.lproj/
|
||||
Electron.app/Contents/Resources/en_GB.lproj/
|
||||
Electron.app/Contents/Resources/es.lproj/
|
||||
Electron.app/Contents/Resources/es_419.lproj/
|
||||
Electron.app/Contents/Resources/et.lproj/
|
||||
Electron.app/Contents/Resources/fa.lproj/
|
||||
Electron.app/Contents/Resources/fi.lproj/
|
||||
Electron.app/Contents/Resources/fil.lproj/
|
||||
Electron.app/Contents/Resources/fr.lproj/
|
||||
Electron.app/Contents/Resources/gu.lproj/
|
||||
Electron.app/Contents/Resources/he.lproj/
|
||||
Electron.app/Contents/Resources/hi.lproj/
|
||||
Electron.app/Contents/Resources/hr.lproj/
|
||||
Electron.app/Contents/Resources/hu.lproj/
|
||||
Electron.app/Contents/Resources/id.lproj/
|
||||
Electron.app/Contents/Resources/it.lproj/
|
||||
Electron.app/Contents/Resources/ja.lproj/
|
||||
Electron.app/Contents/Resources/kn.lproj/
|
||||
Electron.app/Contents/Resources/ko.lproj/
|
||||
Electron.app/Contents/Resources/lt.lproj/
|
||||
Electron.app/Contents/Resources/lv.lproj/
|
||||
Electron.app/Contents/Resources/ml.lproj/
|
||||
Electron.app/Contents/Resources/mr.lproj/
|
||||
Electron.app/Contents/Resources/ms.lproj/
|
||||
Electron.app/Contents/Resources/nb.lproj/
|
||||
Electron.app/Contents/Resources/nl.lproj/
|
||||
Electron.app/Contents/Resources/pl.lproj/
|
||||
Electron.app/Contents/Resources/pt_BR.lproj/
|
||||
Electron.app/Contents/Resources/pt_PT.lproj/
|
||||
Electron.app/Contents/Resources/ro.lproj/
|
||||
Electron.app/Contents/Resources/ru.lproj/
|
||||
Electron.app/Contents/Resources/sk.lproj/
|
||||
Electron.app/Contents/Resources/sl.lproj/
|
||||
Electron.app/Contents/Resources/sr.lproj/
|
||||
Electron.app/Contents/Resources/sv.lproj/
|
||||
Electron.app/Contents/Resources/sw.lproj/
|
||||
Electron.app/Contents/Resources/ta.lproj/
|
||||
Electron.app/Contents/Resources/te.lproj/
|
||||
Electron.app/Contents/Resources/th.lproj/
|
||||
Electron.app/Contents/Resources/tr.lproj/
|
||||
Electron.app/Contents/Resources/uk.lproj/
|
||||
Electron.app/Contents/Resources/vi.lproj/
|
||||
Electron.app/Contents/Resources/zh_CN.lproj/
|
||||
Electron.app/Contents/Resources/zh_TW.lproj/
|
||||
LICENSE
|
||||
LICENSES.chromium.html
|
||||
version
|
||||
72
script/zip_manifests/dist_zip.win.ia32.manifest
Normal file
72
script/zip_manifests/dist_zip.win.ia32.manifest
Normal file
@@ -0,0 +1,72 @@
|
||||
LICENSE
|
||||
LICENSES.chromium.html
|
||||
chrome_100_percent.pak
|
||||
chrome_200_percent.pak
|
||||
d3dcompiler_47.dll
|
||||
electron.exe
|
||||
ffmpeg.dll
|
||||
icudtl.dat
|
||||
libEGL.dll
|
||||
libGLESv2.dll
|
||||
locales/am.pak
|
||||
locales/ar.pak
|
||||
locales/bg.pak
|
||||
locales/bn.pak
|
||||
locales/ca.pak
|
||||
locales/cs.pak
|
||||
locales/da.pak
|
||||
locales/de.pak
|
||||
locales/el.pak
|
||||
locales/en-GB.pak
|
||||
locales/en-US.pak
|
||||
locales/es-419.pak
|
||||
locales/es.pak
|
||||
locales/et.pak
|
||||
locales/fa.pak
|
||||
locales/fi.pak
|
||||
locales/fil.pak
|
||||
locales/fr.pak
|
||||
locales/gu.pak
|
||||
locales/he.pak
|
||||
locales/hi.pak
|
||||
locales/hr.pak
|
||||
locales/hu.pak
|
||||
locales/id.pak
|
||||
locales/it.pak
|
||||
locales/ja.pak
|
||||
locales/kn.pak
|
||||
locales/ko.pak
|
||||
locales/lt.pak
|
||||
locales/lv.pak
|
||||
locales/ml.pak
|
||||
locales/mr.pak
|
||||
locales/ms.pak
|
||||
locales/nb.pak
|
||||
locales/nl.pak
|
||||
locales/pl.pak
|
||||
locales/pt-BR.pak
|
||||
locales/pt-PT.pak
|
||||
locales/ro.pak
|
||||
locales/ru.pak
|
||||
locales/sk.pak
|
||||
locales/sl.pak
|
||||
locales/sr.pak
|
||||
locales/sv.pak
|
||||
locales/sw.pak
|
||||
locales/ta.pak
|
||||
locales/te.pak
|
||||
locales/th.pak
|
||||
locales/tr.pak
|
||||
locales/uk.pak
|
||||
locales/vi.pak
|
||||
locales/zh-CN.pak
|
||||
locales/zh-TW.pak
|
||||
natives_blob.bin
|
||||
resources.pak
|
||||
resources/default_app.asar
|
||||
resources/electron.asar
|
||||
snapshot_blob.bin
|
||||
swiftshader/libEGL.dll
|
||||
swiftshader/libGLESv2.dll
|
||||
v8_context_snapshot.bin
|
||||
version
|
||||
72
script/zip_manifests/dist_zip.win.x64.manifest
Normal file
72
script/zip_manifests/dist_zip.win.x64.manifest
Normal file
@@ -0,0 +1,72 @@
|
||||
LICENSE
|
||||
LICENSES.chromium.html
|
||||
chrome_100_percent.pak
|
||||
chrome_200_percent.pak
|
||||
d3dcompiler_47.dll
|
||||
electron.exe
|
||||
ffmpeg.dll
|
||||
icudtl.dat
|
||||
libEGL.dll
|
||||
libGLESv2.dll
|
||||
locales/am.pak
|
||||
locales/ar.pak
|
||||
locales/bg.pak
|
||||
locales/bn.pak
|
||||
locales/ca.pak
|
||||
locales/cs.pak
|
||||
locales/da.pak
|
||||
locales/de.pak
|
||||
locales/el.pak
|
||||
locales/en-GB.pak
|
||||
locales/en-US.pak
|
||||
locales/es-419.pak
|
||||
locales/es.pak
|
||||
locales/et.pak
|
||||
locales/fa.pak
|
||||
locales/fi.pak
|
||||
locales/fil.pak
|
||||
locales/fr.pak
|
||||
locales/gu.pak
|
||||
locales/he.pak
|
||||
locales/hi.pak
|
||||
locales/hr.pak
|
||||
locales/hu.pak
|
||||
locales/id.pak
|
||||
locales/it.pak
|
||||
locales/ja.pak
|
||||
locales/kn.pak
|
||||
locales/ko.pak
|
||||
locales/lt.pak
|
||||
locales/lv.pak
|
||||
locales/ml.pak
|
||||
locales/mr.pak
|
||||
locales/ms.pak
|
||||
locales/nb.pak
|
||||
locales/nl.pak
|
||||
locales/pl.pak
|
||||
locales/pt-BR.pak
|
||||
locales/pt-PT.pak
|
||||
locales/ro.pak
|
||||
locales/ru.pak
|
||||
locales/sk.pak
|
||||
locales/sl.pak
|
||||
locales/sr.pak
|
||||
locales/sv.pak
|
||||
locales/sw.pak
|
||||
locales/ta.pak
|
||||
locales/te.pak
|
||||
locales/th.pak
|
||||
locales/tr.pak
|
||||
locales/uk.pak
|
||||
locales/vi.pak
|
||||
locales/zh-CN.pak
|
||||
locales/zh-TW.pak
|
||||
natives_blob.bin
|
||||
resources.pak
|
||||
resources/default_app.asar
|
||||
resources/electron.asar
|
||||
snapshot_blob.bin
|
||||
swiftshader/libEGL.dll
|
||||
swiftshader/libGLESv2.dll
|
||||
v8_context_snapshot.bin
|
||||
version
|
||||
@@ -2563,6 +2563,34 @@ describe('BrowserWindow module', () => {
|
||||
})
|
||||
})
|
||||
|
||||
describe('focus event', () => {
|
||||
it('should not emit if focusing on a main window with a modal open', (done) => {
|
||||
const childWindowClosed = false
|
||||
const child = new BrowserWindow({
|
||||
parent: w,
|
||||
modal: true,
|
||||
show: false
|
||||
})
|
||||
|
||||
child.once('ready-to-show', () => {
|
||||
child.show()
|
||||
})
|
||||
|
||||
child.on('show', () => {
|
||||
w.once('focus', () => {
|
||||
expect(child.isDestroyed()).to.equal(true)
|
||||
done()
|
||||
})
|
||||
w.focus() // this should not trigger the above listener
|
||||
child.close()
|
||||
})
|
||||
|
||||
// act
|
||||
child.loadURL(server.url)
|
||||
w.show()
|
||||
})
|
||||
})
|
||||
|
||||
describe('sheet-begin event', () => {
|
||||
let sheet = null
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
const assert = require('assert')
|
||||
const ChildProcess = require('child_process')
|
||||
const fs = require('fs')
|
||||
const os = require('os')
|
||||
const http = require('http')
|
||||
const path = require('path')
|
||||
const { closeWindow } = require('./window-helpers')
|
||||
@@ -1089,16 +1088,6 @@ describe('webContents module', () => {
|
||||
describe('preload-error event', () => {
|
||||
const generateSpecs = (description, sandbox) => {
|
||||
describe(description, () => {
|
||||
const tmpPreload = path.join(os.tmpdir(), 'preload.js')
|
||||
|
||||
before((done) => {
|
||||
fs.writeFile(tmpPreload, '', done)
|
||||
})
|
||||
|
||||
after((done) => {
|
||||
fs.unlink(tmpPreload, () => done())
|
||||
})
|
||||
|
||||
it('is triggered when unhandled exception is thrown', async () => {
|
||||
const preload = path.join(fixtures, 'module', 'preload-error-exception.js')
|
||||
|
||||
@@ -1158,26 +1147,6 @@ describe('webContents module', () => {
|
||||
expect(preloadPath).to.equal(preload)
|
||||
expect(error.message).to.contain('preload-invalid.js')
|
||||
})
|
||||
|
||||
it('is triggered when preload script is outside of app path', async () => {
|
||||
const preload = tmpPreload
|
||||
|
||||
w.destroy()
|
||||
w = new BrowserWindow({
|
||||
show: false,
|
||||
webPreferences: {
|
||||
sandbox,
|
||||
preload
|
||||
}
|
||||
})
|
||||
|
||||
const promise = emittedOnce(w.webContents, 'preload-error')
|
||||
w.loadURL('about:blank')
|
||||
|
||||
const [, preloadPath, error] = await promise
|
||||
expect(preloadPath).to.equal(preload)
|
||||
expect(error.message).to.contain('Preload scripts outside of app path are not allowed')
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -1,138 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
# Copyright (c) 2013 GitHub, Inc.
|
||||
# Copyright (c) 2013 The Chromium Authors. All rights reserved.
|
||||
# Use of this source code is governed by a BSD-style license that can be
|
||||
# found in the LICENSE file.
|
||||
|
||||
"""Convert pdb to sym for given directories"""
|
||||
|
||||
import errno
|
||||
import glob
|
||||
import optparse
|
||||
import os
|
||||
import Queue
|
||||
import re
|
||||
import subprocess
|
||||
import sys
|
||||
import threading
|
||||
|
||||
SRC_DIR = os.path.abspath(os.path.join(__file__, '..', '..', '..', '..'))
|
||||
|
||||
# Duplicated as this script lives in tools not script
|
||||
def get_out_dir():
|
||||
out_dir = 'Debug'
|
||||
override = os.environ.get('ELECTRON_OUT_DIR')
|
||||
if override is not None:
|
||||
out_dir = override
|
||||
return os.path.join(SRC_DIR, 'out', out_dir)
|
||||
|
||||
|
||||
CONCURRENT_TASKS=4
|
||||
OUT_DIR=get_out_dir()
|
||||
DUMP_SYMS=os.path.join(OUT_DIR, 'dump_syms.exe')
|
||||
|
||||
|
||||
def GetCommandOutput(command):
|
||||
"""Runs the command list, returning its output.
|
||||
|
||||
Prints the given command (which should be a list of one or more strings),
|
||||
then runs it and returns its output (stdout) as a string.
|
||||
|
||||
From chromium_utils.
|
||||
"""
|
||||
devnull = open(os.devnull, 'w')
|
||||
proc = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=devnull,
|
||||
bufsize=1)
|
||||
output = proc.communicate()[0]
|
||||
return output
|
||||
|
||||
|
||||
def mkdir_p(path):
|
||||
"""Simulates mkdir -p."""
|
||||
try:
|
||||
os.makedirs(path)
|
||||
except OSError as e:
|
||||
if e.errno == errno.EEXIST and os.path.isdir(path):
|
||||
pass
|
||||
else: raise
|
||||
|
||||
|
||||
def GenerateSymbols(options, binaries):
|
||||
"""Dumps the symbols of binary and places them in the given directory."""
|
||||
|
||||
queue = Queue.Queue()
|
||||
print_lock = threading.Lock()
|
||||
|
||||
def _Worker():
|
||||
while True:
|
||||
binary = queue.get()
|
||||
|
||||
if options.verbose:
|
||||
with print_lock:
|
||||
print "Generating symbols for %s" % binary
|
||||
|
||||
syms = GetCommandOutput([DUMP_SYMS, binary])
|
||||
module_line = re.match("MODULE [^ ]+ [^ ]+ ([0-9A-Fa-f]+) (.*)\r\n", syms)
|
||||
if module_line == None:
|
||||
with print_lock:
|
||||
print "Failed to get symbols for %s" % binary
|
||||
queue.task_done()
|
||||
continue
|
||||
|
||||
output_path = os.path.join(options.symbols_dir, module_line.group(2),
|
||||
module_line.group(1))
|
||||
mkdir_p(output_path)
|
||||
symbol_file = "%s.sym" % module_line.group(2)[:-4] # strip .pdb
|
||||
f = open(os.path.join(output_path, symbol_file), 'w')
|
||||
f.write(syms)
|
||||
f.close()
|
||||
|
||||
queue.task_done()
|
||||
|
||||
for binary in binaries:
|
||||
queue.put(binary)
|
||||
|
||||
for _ in range(options.jobs):
|
||||
t = threading.Thread(target=_Worker)
|
||||
t.daemon = True
|
||||
t.start()
|
||||
|
||||
queue.join()
|
||||
|
||||
|
||||
def main():
|
||||
parser = optparse.OptionParser()
|
||||
parser.add_option('', '--symbols-dir', default='',
|
||||
help='The directory where to write the symbols file.')
|
||||
parser.add_option('', '--clear', default=False, action='store_true',
|
||||
help='Clear the symbols directory before writing new '
|
||||
'symbols.')
|
||||
parser.add_option('-j', '--jobs', default=CONCURRENT_TASKS, action='store',
|
||||
type='int', help='Number of parallel tasks to run.')
|
||||
parser.add_option('-v', '--verbose', action='store_true',
|
||||
help='Print verbose status output.')
|
||||
|
||||
(options, directories) = parser.parse_args()
|
||||
|
||||
if not options.symbols_dir:
|
||||
print "Required option --symbols-dir missing."
|
||||
return 1
|
||||
|
||||
if options.clear:
|
||||
try:
|
||||
shutil.rmtree(options.symbols_dir)
|
||||
except:
|
||||
pass
|
||||
|
||||
pdbs = []
|
||||
for directory in directories:
|
||||
pdbs += glob.glob(os.path.join(directory, '*.exe.pdb'))
|
||||
pdbs += glob.glob(os.path.join(directory, '*.dll.pdb'))
|
||||
|
||||
GenerateSymbols(options, pdbs)
|
||||
|
||||
return 0
|
||||
|
||||
|
||||
if '__main__' == __name__:
|
||||
sys.exit(main())
|
||||
Reference in New Issue
Block a user