mirror of
https://github.com/Alex313031/thorium.git
synced 2025-01-10 03:47:44 -03:00
M124 stage 4
This commit is contained in:
parent
3f213398c8
commit
99c4ca6334
13 changed files with 239 additions and 123 deletions
|
@ -2,4 +2,4 @@
|
|||
|
||||
# Copyright (c) 2024 Alex313031
|
||||
|
||||
./thorium_shell --data-path=$(pwd)/.config/thorium-shell --enable-experimental-web-platform-features --enable-clear-hevc-for-testing $@
|
||||
./thorium_shell --user-data-dir=$(pwd)/.config/thorium-shell --enable-experimental-web-platform-features --enable-clear-hevc-for-testing $@
|
||||
|
|
|
@ -1 +1 @@
|
|||
START "" "%cd%\BIN\120.0.6099.235\thorium_shell.exe" --data-path="%~dp0%\USER_DATA\thorium_shell" --allow-outdated-plugins --disable-logging --disable-breakpad --enable-experimental-web-platform-features --disable-encryption --disable-machine-id
|
||||
START "" "%cd%\BIN\120.0.6099.235\thorium_shell.exe" --user-data-dir="%~dp0%\USER_DATA\thorium_shell" --allow-outdated-plugins --disable-logging --disable-breakpad --enable-experimental-web-platform-features --disable-encryption --disable-machine-id
|
||||
|
|
35
src/BUILD.gn
35
src/BUILD.gn
|
@ -118,7 +118,7 @@ group("gn_all") {
|
|||
"//third_party/angle/src/tests:angle_end2end_tests",
|
||||
"//third_party/angle/src/tests:angle_unittests",
|
||||
"//third_party/angle/src/tests:angle_white_box_tests",
|
||||
"//third_party/distributed_point_functions:distributed_point_functions_unittests",
|
||||
"//third_party/distributed_point_functions/shim:distributed_point_functions_shim_unittests",
|
||||
"//third_party/flatbuffers:flatbuffers_unittests",
|
||||
"//third_party/liburlpattern:liburlpattern_unittests",
|
||||
"//tools/binary_size:binary_size_trybot_py",
|
||||
|
@ -385,12 +385,11 @@ group("gn_all") {
|
|||
"//build/config/android/test/proto:test_build_protos",
|
||||
"//build/private_code_test:private_paths",
|
||||
"//chrome/android/monochrome:monochrome_public_apk_checker",
|
||||
"//chrome/android/webapk/shell_apk:maps_go_webapk",
|
||||
"//chrome/android/webapk/shell_apk:webapk",
|
||||
"//chrome/android/webapk/shell_apk/prepare_upload_dir:prepare_webapk_shell_upload_dir",
|
||||
"//chrome/test:android_browsertests",
|
||||
"//components:components_junit_tests",
|
||||
"//components/ip_protection_auth/javatests:ip_protection_auth_test_apk",
|
||||
"//components/ip_protection/android_auth_client_lib/javatests:ip_protection_auth_test_apk",
|
||||
"//content/public/android:content_junit_tests",
|
||||
"//content/shell/android:content_shell_apk",
|
||||
"//device:device_junit_tests",
|
||||
|
@ -401,7 +400,7 @@ group("gn_all") {
|
|||
"//third_party/android_build_tools/lint:custom_lint_java",
|
||||
"//third_party/androidx_javascriptengine",
|
||||
"//third_party/catapult/devil",
|
||||
"//third_party/jni_zero/samples:jni_generator_tests",
|
||||
"//third_party/jni_zero/sample:jni_generator_tests",
|
||||
"//third_party/r8:custom_d8_java",
|
||||
"//tools/android:android_tools",
|
||||
"//tools/android:memconsumer",
|
||||
|
@ -1136,16 +1135,16 @@ if (use_blink && !is_cronet_build) {
|
|||
args = [
|
||||
"--test-type",
|
||||
"testharness",
|
||||
"reftest",
|
||||
"crashtest",
|
||||
"print-reftest",
|
||||
"--product=content_shell",
|
||||
"--no-virtual-tests",
|
||||
"--no-show-results",
|
||||
"--zero-tests-executed-ok",
|
||||
]
|
||||
data_deps = [
|
||||
":blink_web_tests_expectations",
|
||||
":blink_web_tests_support_data",
|
||||
"//chrome/test/chromedriver:chromedriver_server",
|
||||
"//third_party/blink/tools:wpt_tests_isolate",
|
||||
]
|
||||
}
|
||||
|
@ -1272,9 +1271,17 @@ if (use_blink && !is_cronet_build) {
|
|||
"@WrappedPath(.)",
|
||||
]
|
||||
} else {
|
||||
_common_web_test_args = [ "@WrappedPath(" + rebase_path(
|
||||
"//third_party/blink/tools/run_web_tests.py",
|
||||
root_build_dir) + ")" ]
|
||||
base_out_dir = rebase_path(get_path_info(root_build_dir, "dir"), ".")
|
||||
out_dir = get_path_info(root_build_dir, "name")
|
||||
_common_web_test_args = [
|
||||
"@WrappedPath(" +
|
||||
rebase_path("//third_party/blink/tools/run_web_tests.py",
|
||||
root_build_dir) + ")",
|
||||
"--build-directory",
|
||||
base_out_dir,
|
||||
"--target",
|
||||
out_dir,
|
||||
]
|
||||
}
|
||||
if (is_debug) {
|
||||
_common_web_test_args += [ "--debug" ]
|
||||
|
@ -1457,7 +1464,9 @@ if (use_blink && !is_cronet_build) {
|
|||
"//third_party/blink/web_tests/platform/mac-mac11-arm64/",
|
||||
"//third_party/blink/web_tests/platform/mac-mac12/",
|
||||
"//third_party/blink/web_tests/platform/mac-mac12-arm64/",
|
||||
"//third_party/blink/web_tests/platform/mac-mac13/",
|
||||
"//third_party/blink/web_tests/platform/mac-mac13-arm64/",
|
||||
"//third_party/blink/web_tests/platform/mac-mac14-arm64/",
|
||||
]
|
||||
}
|
||||
|
||||
|
@ -1699,10 +1708,10 @@ if (!is_ios && !is_android && !is_castos && !is_cronet_build) {
|
|||
deps += [ "//tools/ipc_fuzzer:ipc_fuzzer_all" ]
|
||||
}
|
||||
if (!is_chromeos_ash) {
|
||||
deps += [
|
||||
"//third_party/pdfium/samples:pdfium_test",
|
||||
"//v8:v8_shell($v8_snapshot_toolchain)",
|
||||
]
|
||||
deps += [ "//v8:v8_shell($v8_snapshot_toolchain)" ]
|
||||
if (enable_pdf) {
|
||||
deps += [ "//third_party/pdfium/samples:pdfium_test" ]
|
||||
}
|
||||
}
|
||||
|
||||
if (!is_component_build) {
|
||||
|
|
|
@ -170,8 +170,9 @@ def check_distro(options):
|
|||
|
||||
def check_architecture():
|
||||
architecture = subprocess.check_output(["uname", "-m"]).decode().strip()
|
||||
if architecture not in ["i686", "x86_64"]:
|
||||
print("Only x86 architectures are currently supported", file=sys.stderr)
|
||||
if architecture not in ["i686", "x86_64", 'aarch64']:
|
||||
print("Only x86 and ARM64 architectures are currently supported",
|
||||
file=sys.stderr)
|
||||
sys.exit(1)
|
||||
|
||||
|
||||
|
@ -315,7 +316,11 @@ def dev_list():
|
|||
# pre-built NaCl binaries.
|
||||
if "ELF 64-bit" in subprocess.check_output(["file", "-L",
|
||||
"/sbin/init"]).decode():
|
||||
packages.extend(["libc6-i386", "lib32stdc++6"])
|
||||
# ARM64 may not support these.
|
||||
if package_exists("libc6-i386"):
|
||||
packages.append("libc6-i386")
|
||||
if package_exists("lib32stdc++6"):
|
||||
packages.append("lib32stdc++6")
|
||||
|
||||
# lib32gcc-s1 used to be called lib32gcc1 in older distros.
|
||||
if package_exists("lib32gcc-s1"):
|
||||
|
@ -329,7 +334,6 @@ def dev_list():
|
|||
# List of required run-time libraries
|
||||
def lib_list():
|
||||
packages = [
|
||||
"lib32z1",
|
||||
"libasound2",
|
||||
"libatk1.0-0",
|
||||
"libatspi2.0-0",
|
||||
|
@ -388,6 +392,10 @@ def lib_list():
|
|||
"libbz2-1.0",
|
||||
]
|
||||
|
||||
# May not exist (e.g. ARM64)
|
||||
if package_exists("lib32z1"):
|
||||
packages.append("lib32z1")
|
||||
|
||||
if package_exists("libffi8"):
|
||||
packages.append("libffi8")
|
||||
elif package_exists("libffi7"):
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioPropertySheet
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
Version="11.00"
|
||||
Name="chrome_exe"
|
||||
InheritedPropertySheets="$(SolutionDir)..\third_party\breakpad\using_breakpad.vsprops"
|
||||
>
|
||||
|
|
Before Width: | Height: | Size: 7.1 KiB After Width: | Height: | Size: 7.1 KiB |
|
@ -28,6 +28,7 @@ BEGIN
|
|||
VALUE "FileDescription", "@PRODUCT_INSTALLER_FULLNAME@"
|
||||
VALUE "FileVersion", "@MAJOR@.@MINOR@.@BUILD@.@PATCH@"
|
||||
VALUE "InternalName", "thorium_mini_installer"
|
||||
VALUE "OriginalFilename", "mini_installer.exe"
|
||||
VALUE "LegalCopyright", "@COPYRIGHT@"
|
||||
VALUE "ProductName", "@PRODUCT_INSTALLER_FULLNAME@"
|
||||
VALUE "ProductVersion", "@MAJOR@.@MINOR@.@BUILD@.@PATCH@"
|
||||
|
@ -35,6 +36,7 @@ BEGIN
|
|||
VALUE "ProductShortName", "@PRODUCT_INSTALLER_SHORTNAME@"
|
||||
VALUE "LastChange", "@LASTCHANGE@"
|
||||
VALUE "Official Build", "@OFFICIAL_BUILD@"
|
||||
VALUE "Comments", "https://github.com/Alex313031/Thorium"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
import {loadTimeData} from 'chrome://resources/js/load_time_data.js';
|
||||
|
||||
import {HIDDEN_CLASS} from './constants.js';
|
||||
import {CollisionBox, spriteDefinitionByType} from './offline-sprite-definitions.js';
|
||||
import {CollisionBox, GAME_TYPE, spriteDefinitionByType} from './offline-sprite-definitions.js';
|
||||
|
||||
/**
|
||||
* T-Rex runner.
|
||||
|
@ -1001,14 +1001,13 @@ Runner.prototype = {
|
|||
if (!this.crashed && !this.paused) {
|
||||
// For a11y, screen reader activation.
|
||||
const isMobileMouseInput = IS_MOBILE &&
|
||||
e.type === Runner.events.POINTERDOWN &&
|
||||
e.pointerType == 'mouse' && e.target == this.containerEl ||
|
||||
(IS_IOS && e.pointerType == 'touch' &&
|
||||
document.activeElement == this.containerEl);
|
||||
e.type === Runner.events.POINTERDOWN && e.pointerType == 'mouse' &&
|
||||
(e.target == this.containerEl ||
|
||||
(IS_IOS &&
|
||||
(e.target == this.touchController || e.target == this.canvas)));
|
||||
|
||||
if (Runner.keycodes.JUMP[e.keyCode] ||
|
||||
e.type === Runner.events.TOUCHSTART || isMobileMouseInput ||
|
||||
(Runner.keycodes.DUCK[e.keyCode] && this.altGameModeActive)) {
|
||||
e.type === Runner.events.TOUCHSTART || isMobileMouseInput) {
|
||||
e.preventDefault();
|
||||
// Starting the game for the first time.
|
||||
if (!this.playing) {
|
||||
|
@ -1036,10 +1035,7 @@ Runner.prototype = {
|
|||
}
|
||||
this.tRex.startJump(this.currentSpeed);
|
||||
}
|
||||
// Ducking is disabled on alt game modes.
|
||||
} else if (
|
||||
!this.altGameModeActive && this.playing &&
|
||||
Runner.keycodes.DUCK[e.keyCode]) {
|
||||
} else if (this.playing && Runner.keycodes.DUCK[e.keyCode]) {
|
||||
e.preventDefault();
|
||||
if (this.tRex.jumping) {
|
||||
// Speed drop, activated only when jump key is not pressed.
|
||||
|
@ -1991,6 +1987,7 @@ GameOverPanel.prototype = {
|
|||
const altTextConfig =
|
||||
spriteDefinitionByType.original.ALT_GAME_OVER_TEXT_CONFIG;
|
||||
|
||||
if (altTextConfig.FLASHING) {
|
||||
if (this.flashCounter < GameOverPanel.FLASH_ITERATIONS &&
|
||||
this.flashTimer > altTextConfig.FLASH_DURATION) {
|
||||
this.flashTimer = 0;
|
||||
|
@ -2007,6 +2004,10 @@ GameOverPanel.prototype = {
|
|||
this.reset();
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
this.clearGameOverTextBounds(altTextConfig);
|
||||
this.drawGameOverText(altTextConfig, true);
|
||||
}
|
||||
}
|
||||
|
||||
this.gameOverRafId = requestAnimationFrame(this.update.bind(this));
|
||||
|
@ -2014,17 +2015,16 @@ GameOverPanel.prototype = {
|
|||
|
||||
/**
|
||||
* Clear game over text.
|
||||
* @param {Object} dimensions Game over text config.
|
||||
*/
|
||||
clearGameOverTextBounds() {
|
||||
clearGameOverTextBounds(dimensions) {
|
||||
this.canvasCtx.save();
|
||||
|
||||
this.canvasCtx.clearRect(
|
||||
Math.round(
|
||||
this.canvasDimensions.WIDTH / 2 -
|
||||
(GameOverPanel.dimensions.TEXT_WIDTH / 2)),
|
||||
this.canvasDimensions.WIDTH / 2 - (dimensions.TEXT_WIDTH / 2)),
|
||||
Math.round((this.canvasDimensions.HEIGHT - 25) / 3),
|
||||
GameOverPanel.dimensions.TEXT_WIDTH,
|
||||
GameOverPanel.dimensions.TEXT_HEIGHT + 4);
|
||||
dimensions.TEXT_WIDTH, dimensions.TEXT_HEIGHT + 4);
|
||||
this.canvasCtx.restore();
|
||||
},
|
||||
|
||||
|
@ -2553,7 +2553,7 @@ Trex.prototype = {
|
|||
}
|
||||
|
||||
Trex.animFrames.DUCKING.frames =
|
||||
[spriteDefinition.RUNNING_1.x, spriteDefinition.RUNNING_2.x];
|
||||
[spriteDefinition.DUCKING_1.x, spriteDefinition.DUCKING_2.x];
|
||||
|
||||
// Update Trex config
|
||||
Trex.config.GRAVITY = spriteDefinition.GRAVITY || Trex.config.GRAVITY;
|
||||
|
@ -2562,6 +2562,7 @@ Trex.prototype = {
|
|||
Trex.config.MAX_JUMP_HEIGHT = spriteDefinition.MAX_JUMP_HEIGHT;
|
||||
Trex.config.MIN_JUMP_HEIGHT = spriteDefinition.MIN_JUMP_HEIGHT;
|
||||
Trex.config.WIDTH = spriteDefinition.RUNNING_1.w;
|
||||
Trex.config.WIDTH_CRASHED = spriteDefinition.CRASHED.w;
|
||||
Trex.config.WIDTH_JUMP = spriteDefinition.JUMPING.w;
|
||||
Trex.config.INVERT_JUMP = spriteDefinition.INVERT_JUMP;
|
||||
|
||||
|
@ -2649,13 +2650,11 @@ Trex.prototype = {
|
|||
this.timer = 0;
|
||||
}
|
||||
|
||||
if (!this.altGameModeEnabled) {
|
||||
// Speed drop becomes duck if the down key is still being pressed.
|
||||
if (this.speedDrop && this.yPos === this.groundYPos) {
|
||||
this.speedDrop = false;
|
||||
this.setDuck(true);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
|
@ -2671,13 +2670,20 @@ Trex.prototype = {
|
|||
this.config.WIDTH;
|
||||
let sourceHeight = this.config.HEIGHT;
|
||||
const outputHeight = sourceHeight;
|
||||
const outputWidth =
|
||||
this.altGameModeEnabled && this.status == Trex.status.CRASHED ?
|
||||
this.config.WIDTH_CRASHED :
|
||||
this.config.WIDTH;
|
||||
|
||||
let jumpOffset = Runner.spriteDefinition.TREX.JUMPING.xOffset;
|
||||
|
||||
// Width of sprite changes on jump.
|
||||
if (this.altGameModeEnabled && this.jumping &&
|
||||
this.status !== Trex.status.CRASHED) {
|
||||
// Width of sprite can change on jump or crashed.
|
||||
if (this.altGameModeEnabled) {
|
||||
if (this.jumping && this.status !== Trex.status.CRASHED) {
|
||||
sourceWidth = this.config.WIDTH_JUMP;
|
||||
} else if (this.status == Trex.status.CRASHED) {
|
||||
sourceWidth = this.config.WIDTH_CRASHED;
|
||||
}
|
||||
}
|
||||
|
||||
if (IS_HIDPI) {
|
||||
|
@ -2702,8 +2708,7 @@ Trex.prototype = {
|
|||
}
|
||||
|
||||
// Ducking.
|
||||
if (!this.altGameModeEnabled && this.ducking &&
|
||||
this.status !== Trex.status.CRASHED) {
|
||||
if (this.ducking && this.status !== Trex.status.CRASHED) {
|
||||
this.canvasCtx.drawImage(Runner.imageSprite, sourceX, sourceY,
|
||||
sourceWidth, sourceHeight,
|
||||
this.xPos, this.yPos,
|
||||
|
@ -2722,10 +2727,9 @@ Trex.prototype = {
|
|||
this.xPos++;
|
||||
}
|
||||
// Standing / running
|
||||
this.canvasCtx.drawImage(Runner.imageSprite, sourceX, sourceY,
|
||||
sourceWidth, sourceHeight,
|
||||
this.xPos, this.yPos,
|
||||
this.config.WIDTH, outputHeight);
|
||||
this.canvasCtx.drawImage(
|
||||
Runner.imageSprite, sourceX, sourceY, sourceWidth, sourceHeight,
|
||||
this.xPos, this.yPos, outputWidth, outputHeight);
|
||||
}
|
||||
this.canvasCtx.globalAlpha = 1;
|
||||
},
|
||||
|
|
|
@ -66,7 +66,7 @@ class LaunchAsMojoClientBrowserTest : public ContentBrowserTest {
|
|||
base::CommandLine MakeShellCommandLine() {
|
||||
base::CommandLine command_line(
|
||||
GetFilePathNextToCurrentExecutable(kShellExecutableName));
|
||||
command_line.AppendSwitchPath(switches::kContentShellDataPath,
|
||||
command_line.AppendSwitchPath(switches::kContentShellUserDataDir,
|
||||
temp_dir_.GetPath());
|
||||
#if BUILDFLAG(IS_OZONE)
|
||||
const base::CommandLine& cmdline = *base::CommandLine::ForCurrentProcess();
|
||||
|
|
|
@ -33,6 +33,8 @@ if (is_android) {
|
|||
import("//third_party/fuchsia-gn-sdk/src/package.gni")
|
||||
} else if (is_ios) {
|
||||
import("//build/config/ios/config.gni")
|
||||
import("//build/config/ios/swift_source_set.gni")
|
||||
import("//build/ios/extension_bundle_data.gni")
|
||||
}
|
||||
|
||||
# TODO(crbug.com/1336055, spang): Investigate using shell_views with cast builds as
|
||||
|
@ -45,6 +47,24 @@ declare_args() {
|
|||
content_shell_major_version = "999"
|
||||
}
|
||||
|
||||
template("extension2_bundle_data") {
|
||||
assert(defined(invoker.extension_target),
|
||||
"extension_target must be defined for $target_name")
|
||||
|
||||
_extension_name = get_label_info(invoker.extension_target, "name") + ".appex"
|
||||
if (defined(invoker.extension_name)) {
|
||||
_extension_name = invoker.extension_name
|
||||
}
|
||||
|
||||
bundle_data(target_name) {
|
||||
testonly = true
|
||||
public_deps = [ invoker.extension_target ]
|
||||
outputs = [ "{{bundle_contents_dir}}/Extensions/{{source_file_part}}" ]
|
||||
sources = [ get_label_info(invoker.extension_target, "root_out_dir") +
|
||||
"/$_extension_name" ]
|
||||
}
|
||||
}
|
||||
|
||||
config("content_shell_lib_warnings") {
|
||||
if (is_clang) {
|
||||
# TODO(thakis): Remove this once http://crbug.com/383820 is figured out
|
||||
|
@ -616,19 +636,22 @@ if (is_android) {
|
|||
# Path to an entitlements file used in ios_content_shell. Can be overridden
|
||||
# to provide an alternative.
|
||||
ios_content_shell_entitlements_path =
|
||||
"//build/config/ios/entitlements.plist"
|
||||
"//content/shell/app/ios/content_shell.entitlements"
|
||||
}
|
||||
|
||||
ios_app_bundle("content_shell") {
|
||||
info_plist = "app/ios-Info.plist"
|
||||
info_plist = "app/ios/ios-app.plist"
|
||||
testonly = true
|
||||
|
||||
sources = [ "app/shell_main.cc" ]
|
||||
|
||||
deps = [
|
||||
":content_process_bundle",
|
||||
":content_shell_app",
|
||||
":content_shell_lib",
|
||||
":network_process_bundle",
|
||||
"//base",
|
||||
"//build:ios_buildflags",
|
||||
"//content/public/app",
|
||||
]
|
||||
bundle_deps = [
|
||||
|
@ -638,6 +661,20 @@ if (is_android) {
|
|||
entitlements_path = ios_content_shell_entitlements_path
|
||||
bundle_identifier = ios_content_shell_bundle_identifier
|
||||
}
|
||||
|
||||
if (current_toolchain == default_toolchain) {
|
||||
_extension_toolchain = "${current_toolchain}_blink_app_ext"
|
||||
extension2_bundle_data("content_process_bundle") {
|
||||
extension_name = "content_process.appex"
|
||||
extension_target =
|
||||
"//content/shell/app/ios:content_process(${_extension_toolchain})"
|
||||
}
|
||||
extension2_bundle_data("network_process_bundle") {
|
||||
extension_name = "network_process.appex"
|
||||
extension_target =
|
||||
"//content/shell/app/ios:network_process(${_extension_toolchain})"
|
||||
}
|
||||
}
|
||||
} else {
|
||||
executable("thorium_shell") {
|
||||
testonly = true
|
||||
|
@ -702,7 +739,7 @@ if (is_android) {
|
|||
fuchsia_component("content_shell_component") {
|
||||
testonly = true
|
||||
manifest = "fuchsia/content_shell.cml"
|
||||
data_deps = [ ":content_shell" ]
|
||||
data_deps = [ ":thorium_shell" ]
|
||||
visibility = [ ":*" ]
|
||||
}
|
||||
|
||||
|
|
|
@ -274,7 +274,7 @@ android_library("content_shell_browsertests_java") {
|
|||
":content_shell_java",
|
||||
"//base:base_java",
|
||||
"//content/public/android:content_java",
|
||||
"//testing/android/native_test:native_test_java",
|
||||
"//testing/android/native_test:native_browser_test_java",
|
||||
"//third_party/androidx:androidx_core_core_java",
|
||||
"//ui/android:ui_java",
|
||||
]
|
||||
|
|
|
@ -79,6 +79,8 @@
|
|||
|
||||
#include <initguid.h>
|
||||
#include "base/logging_win.h"
|
||||
#include "base/win/scoped_handle.h"
|
||||
#include "base/win/win_util.h"
|
||||
#include "content/shell/common/v8_crashpad_support_win.h"
|
||||
#endif
|
||||
|
||||
|
@ -92,6 +94,14 @@
|
|||
|
||||
namespace {
|
||||
|
||||
enum class LoggingDest {
|
||||
kFile,
|
||||
kStderr,
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
kHandle,
|
||||
#endif
|
||||
};
|
||||
|
||||
#if !BUILDFLAG(IS_FUCHSIA)
|
||||
base::LazyInstance<content::ShellCrashReporterClient>::Leaky
|
||||
g_shell_crash_client = LAZY_INSTANCE_INITIALIZER;
|
||||
|
@ -115,8 +125,36 @@ const GUID kContentShellProviderName = {
|
|||
#endif
|
||||
|
||||
void InitLogging(const base::CommandLine& command_line) {
|
||||
base::FilePath log_filename =
|
||||
command_line.GetSwitchValuePath(switches::kLogFile);
|
||||
LoggingDest dest = LoggingDest::kFile;
|
||||
|
||||
if (command_line.GetSwitchValueASCII(switches::kEnableLogging) == "stderr") {
|
||||
dest = LoggingDest::kStderr;
|
||||
}
|
||||
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
// On Windows child process may be given a handle in the --log-file switch.
|
||||
base::win::ScopedHandle log_handle;
|
||||
if (command_line.GetSwitchValueASCII(switches::kEnableLogging) == "handle") {
|
||||
auto handle_str = command_line.GetSwitchValueNative(switches::kLogFile);
|
||||
uint32_t handle_value = 0;
|
||||
if (base::StringToUint(handle_str, &handle_value)) {
|
||||
// This handle is owned by the logging framework and is closed when the
|
||||
// process exits.
|
||||
HANDLE duplicate = nullptr;
|
||||
if (::DuplicateHandle(GetCurrentProcess(),
|
||||
base::win::Uint32ToHandle(handle_value),
|
||||
GetCurrentProcess(), &duplicate, 0, FALSE,
|
||||
DUPLICATE_SAME_ACCESS)) {
|
||||
log_handle.Set(duplicate);
|
||||
dest = LoggingDest::kHandle;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
|
||||
base::FilePath log_filename;
|
||||
if (dest == LoggingDest::kFile) {
|
||||
log_filename = command_line.GetSwitchValuePath(switches::kLogFile);
|
||||
if (log_filename.empty()) {
|
||||
#if BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_IOS)
|
||||
base::PathService::Get(base::DIR_TEMP, &log_filename);
|
||||
|
@ -125,10 +163,32 @@ void InitLogging(const base::CommandLine& command_line) {
|
|||
#endif
|
||||
log_filename = log_filename.AppendASCII("thorium_shell.log");
|
||||
}
|
||||
}
|
||||
|
||||
logging::LoggingSettings settings;
|
||||
settings.logging_dest = logging::LOG_TO_ALL;
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
if (dest == LoggingDest::kHandle) {
|
||||
// TODO(crbug.com/328285906) Use a ScopedHandle in logging settings.
|
||||
settings.log_file = log_handle.release();
|
||||
} else {
|
||||
settings.log_file = nullptr;
|
||||
}
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
|
||||
if (dest == LoggingDest::kFile) {
|
||||
settings.log_file_path = log_filename.value().c_str();
|
||||
} else {
|
||||
settings.log_file_path = nullptr;
|
||||
}
|
||||
|
||||
if (dest == LoggingDest::kStderr) {
|
||||
settings.logging_dest =
|
||||
logging::LOG_TO_STDERR | logging::LOG_TO_SYSTEM_DEBUG_LOG;
|
||||
} else {
|
||||
// Includes both handle or provided filename on Windows.
|
||||
settings.logging_dest = logging::LOG_TO_ALL;
|
||||
}
|
||||
|
||||
settings.delete_old = logging::DELETE_OLD_LOG_FILE;
|
||||
logging::InitLogging(settings);
|
||||
logging::SetLogItems(true /* Process ID */, true /* Thread ID */,
|
||||
|
|
|
@ -17,6 +17,7 @@ import("//mojo/public/tools/bindings/mojom.gni")
|
|||
import("//net/features.gni")
|
||||
import("//ppapi/buildflags/buildflags.gni")
|
||||
import("//printing/buildflags/buildflags.gni")
|
||||
import("//services/screen_ai/buildflags/features.gni")
|
||||
import("//testing/test.gni")
|
||||
import("//third_party/blink/public/public_features.gni")
|
||||
import("//third_party/closure_compiler/closure_args.gni")
|
||||
|
@ -24,7 +25,7 @@ import("//third_party/closure_compiler/compile_js.gni")
|
|||
import("//third_party/protobuf/proto_library.gni")
|
||||
import("//tools/grit/grit_rule.gni")
|
||||
import("//tools/grit/preprocess_if_expr.gni")
|
||||
import("//tools/typescript/ts_library.gni")
|
||||
import("//tools/typescript/webui_ts_library.gni")
|
||||
import("//v8/gni/v8.gni")
|
||||
|
||||
if (is_android) {
|
||||
|
@ -69,8 +70,6 @@ static_library("test_support") {
|
|||
"../browser/attribution_reporting/test/mock_attribution_observer.cc",
|
||||
"../browser/attribution_reporting/test/mock_attribution_observer.h",
|
||||
"../browser/attribution_reporting/test/mock_content_browser_client.h",
|
||||
"../browser/attribution_reporting/test/mock_data_host.cc",
|
||||
"../browser/attribution_reporting/test/mock_data_host.h",
|
||||
"../browser/attribution_reporting/test/source_observer.cc",
|
||||
"../browser/attribution_reporting/test/source_observer.h",
|
||||
"../browser/back_forward_cache_test_util.cc",
|
||||
|
@ -180,6 +179,8 @@ static_library("test_support") {
|
|||
"../public/test/content_mock_cert_verifier.h",
|
||||
"../public/test/content_test_suite_base.cc",
|
||||
"../public/test/content_test_suite_base.h",
|
||||
"../public/test/context_menu_interceptor.cc",
|
||||
"../public/test/context_menu_interceptor.h",
|
||||
"../public/test/cursor_utils.cc",
|
||||
"../public/test/cursor_utils.h",
|
||||
"../public/test/download_test_observer.cc",
|
||||
|
@ -247,6 +248,8 @@ static_library("test_support") {
|
|||
"../public/test/mock_render_process_host.h",
|
||||
"../public/test/mock_render_thread.cc",
|
||||
"../public/test/mock_render_thread.h",
|
||||
"../public/test/mock_video_picture_in_picture_window_controller_impl.cc",
|
||||
"../public/test/mock_video_picture_in_picture_window_controller_impl.h",
|
||||
"../public/test/mock_web_contents_observer.cc",
|
||||
"../public/test/mock_web_contents_observer.h",
|
||||
"../public/test/mojo_capability_control_test_util.cc",
|
||||
|
@ -298,6 +301,8 @@ static_library("test_support") {
|
|||
"../public/test/slow_download_http_response.h",
|
||||
"../public/test/slow_http_response.cc",
|
||||
"../public/test/slow_http_response.h",
|
||||
"../public/test/synchronize_visual_properties_interceptor.cc",
|
||||
"../public/test/synchronize_visual_properties_interceptor.h",
|
||||
"../public/test/test_aggregation_service.cc",
|
||||
"../public/test/test_aggregation_service.h",
|
||||
"../public/test/test_browser_context.cc",
|
||||
|
@ -350,6 +355,8 @@ static_library("test_support") {
|
|||
"../public/test/theme_change_waiter.h",
|
||||
"../public/test/unittest_test_suite.cc",
|
||||
"../public/test/unittest_test_suite.h",
|
||||
"../public/test/update_user_activation_state_interceptor.cc",
|
||||
"../public/test/update_user_activation_state_interceptor.h",
|
||||
"../public/test/url_loader_interceptor.cc",
|
||||
"../public/test/url_loader_interceptor.h",
|
||||
"../public/test/url_loader_monitor.cc",
|
||||
|
@ -404,6 +411,8 @@ static_library("test_support") {
|
|||
"mock_platform_notification_service.h",
|
||||
"mock_reduce_accept_language_controller_delegate.cc",
|
||||
"mock_reduce_accept_language_controller_delegate.h",
|
||||
"mock_render_input_router.cc",
|
||||
"mock_render_input_router.h",
|
||||
"mock_render_widget_host_delegate.cc",
|
||||
"mock_render_widget_host_delegate.h",
|
||||
"mock_ssl_host_state_delegate.cc",
|
||||
|
@ -518,6 +527,7 @@ static_library("test_support") {
|
|||
"//components/attribution_reporting:source_type_mojom",
|
||||
"//components/breadcrumbs/core",
|
||||
"//components/browsing_topics/common:common",
|
||||
"//components/cbor",
|
||||
"//components/network_session_configurator/common:common",
|
||||
"//components/services/storage",
|
||||
"//components/startup_metric_utils",
|
||||
|
@ -759,6 +769,7 @@ static_library("test_support") {
|
|||
|
||||
if (is_win) {
|
||||
deps += [ "//sandbox" ]
|
||||
public_configs = [ "//build/config/win:delayloads" ]
|
||||
}
|
||||
|
||||
if (v8_use_external_startup_data) {
|
||||
|
@ -1150,7 +1161,7 @@ preprocess_if_expr("preprocess_mojo_webui_test") {
|
|||
]
|
||||
}
|
||||
|
||||
ts_library("web_ui_mojo_test_build_ts") {
|
||||
webui_ts_library("web_ui_mojo_test_build_ts") {
|
||||
root_dir = "$target_gen_dir/data"
|
||||
out_dir = "$target_gen_dir/data/tsc"
|
||||
in_files = [
|
||||
|
@ -1279,7 +1290,7 @@ if (is_android) {
|
|||
"//content/public/android:content_java",
|
||||
"//content/public/test/android:content_java_test_support",
|
||||
"//content/shell/android:content_shell_browsertests_java",
|
||||
"//testing/android/native_test:native_test_java",
|
||||
"//testing/android/native_test:native_browser_test_java",
|
||||
"//third_party/jni_zero:jni_zero_java",
|
||||
"//ui/android:ui_java",
|
||||
]
|
||||
|
@ -1395,7 +1406,7 @@ test("content_browsertests") {
|
|||
"../browser/file_system/file_system_url_drag_drop_browsertest.cc",
|
||||
"../browser/file_system/file_system_url_loader_factory_browsertest.cc",
|
||||
"../browser/file_system/fileapi_browsertest.cc",
|
||||
"../browser/file_system_access/file_system_access_capacity_allocation_host_impl_browsertest.cc",
|
||||
"../browser/file_system_access/file_system_access_file_modification_host_impl_browsertest.cc",
|
||||
"../browser/file_system_access/file_system_access_observer_browsertest.cc",
|
||||
"../browser/find_request_manager_browsertest.cc",
|
||||
"../browser/first_party_sets/first_party_sets_handler_impl_browsertest.cc",
|
||||
|
@ -1547,6 +1558,7 @@ test("content_browsertests") {
|
|||
"../browser/renderer_host/spare_render_process_host_manager_browsertest.cc",
|
||||
"../browser/renderer_host/speculative_render_view_host_browsertest.cc",
|
||||
"../browser/renderer_host/unassigned_site_instance_browsertest.cc",
|
||||
"../browser/renderer_host/view_transition_browsertest.cc",
|
||||
"../browser/resource_loading_browsertest.cc",
|
||||
"../browser/screen_details/screen_details_browsertest.cc",
|
||||
"../browser/screen_orientation/screen_orientation_browsertest.cc",
|
||||
|
@ -1640,7 +1652,6 @@ test("content_browsertests") {
|
|||
"../renderer/accessibility/annotations/ax_image_annotator_browsertest.cc",
|
||||
"../renderer/accessibility/render_accessibility_impl_browsertest.cc",
|
||||
"../renderer/blink_platform_audio_hardware_browsertest.cc",
|
||||
"../renderer/fluent_scrollbar_browsertest.cc",
|
||||
"../renderer/gin_browsertest.cc",
|
||||
"../renderer/media/renderer_web_media_player_delegate_browsertest.cc",
|
||||
"../renderer/media/too_many_web_media_players_intervention_browsertest.cc",
|
||||
|
@ -1663,6 +1674,7 @@ test("content_browsertests") {
|
|||
if (is_android) {
|
||||
sources += [
|
||||
"../browser/gpu/gpu_background_kill_android_browsertest.cc",
|
||||
"../browser/navigation_transitions/back_forward_transition_animation_manager_android_browsertest.cc",
|
||||
"../browser/network/quic_connection_migration_android_browsertest.cc",
|
||||
|
||||
# TODO(https://crbug.com/1442929): move out of Android once we can capture
|
||||
|
@ -1862,6 +1874,11 @@ test("content_browsertests") {
|
|||
sources += [ "../browser/plugin_service_impl_browsertest.cc" ]
|
||||
}
|
||||
|
||||
if (enable_screen_ai_service) {
|
||||
sources += [ "../renderer/accessibility/annotations/ax_main_node_annotator_browsertest.cc" ]
|
||||
deps += [ "//services/screen_ai" ]
|
||||
}
|
||||
|
||||
if (enable_library_cdms) {
|
||||
deps += [ "//media/cdm:cdm_paths" ]
|
||||
|
||||
|
@ -1966,6 +1983,7 @@ test("content_browsertests") {
|
|||
]
|
||||
|
||||
deps += [
|
||||
"//components/system_media_controls:system_media_controls",
|
||||
"//net:net_resources",
|
||||
"//sandbox",
|
||||
"//third_party/blink/public:resources",
|
||||
|
@ -1979,8 +1997,6 @@ test("content_browsertests") {
|
|||
data_deps += [ "//services/test/echo:echo_preload_library" ]
|
||||
|
||||
libs = [ "uiautomationcore.lib" ]
|
||||
|
||||
configs += [ "//build/config/win:delayloads" ]
|
||||
}
|
||||
|
||||
if (is_linux || is_chromeos) {
|
||||
|
@ -2233,6 +2249,11 @@ test("content_browsertests") {
|
|||
sources -= [ "../browser/keyboard_lock_browsertest.cc" ]
|
||||
}
|
||||
|
||||
# MidiManager is not supported in Fuchsia (see crbug.com/40217214).
|
||||
if (is_fuchsia) {
|
||||
sources -= [ "../browser/media/midi_browsertest.cc" ]
|
||||
}
|
||||
|
||||
if (use_ozone) {
|
||||
deps += [ "//ui/ozone" ]
|
||||
}
|
||||
|
@ -2278,9 +2299,6 @@ static_library("run_all_unittests") {
|
|||
":test_support",
|
||||
"//base/test:test_support",
|
||||
]
|
||||
if (is_linux || is_chromeos) {
|
||||
deps += [ "//content/common:set_process_title_linux" ]
|
||||
}
|
||||
}
|
||||
|
||||
test("content_unittests") {
|
||||
|
@ -2325,7 +2343,6 @@ test("content_unittests") {
|
|||
"../browser/attribution_reporting/attribution_storage_sql_unittest.cc",
|
||||
"../browser/attribution_reporting/attribution_storage_unittest.cc",
|
||||
"../browser/attribution_reporting/attribution_suitable_context_unittest.cc",
|
||||
"../browser/attribution_reporting/privacy_math_unittest.cc",
|
||||
"../browser/attribution_reporting/rate_limit_table_unittest.cc",
|
||||
"../browser/background_fetch/background_fetch_cross_origin_filter_unittest.cc",
|
||||
"../browser/background_fetch/background_fetch_data_manager_unittest.cc",
|
||||
|
@ -2402,9 +2419,9 @@ test("content_unittests") {
|
|||
"../browser/fenced_frame/redacted_fenced_frame_config_mojom_traits_unittest.cc",
|
||||
"../browser/file_system/browser_file_system_helper_unittest.cc",
|
||||
"../browser/file_system/file_system_operation_runner_unittest.cc",
|
||||
"../browser/file_system_access/file_system_access_capacity_allocation_host_impl_unittest.cc",
|
||||
"../browser/file_system_access/file_system_access_directory_handle_impl_unittest.cc",
|
||||
"../browser/file_system_access/file_system_access_file_handle_impl_unittest.cc",
|
||||
"../browser/file_system_access/file_system_access_file_modification_host_impl_unittest.cc",
|
||||
"../browser/file_system_access/file_system_access_file_writer_impl_unittest.cc",
|
||||
"../browser/file_system_access/file_system_access_handle_base_unittest.cc",
|
||||
"../browser/file_system_access/file_system_access_lock_manager_unittest.cc",
|
||||
|
@ -2430,27 +2447,6 @@ test("content_unittests") {
|
|||
"../browser/gpu/gpu_data_manager_testing_exceptions_autogen.h",
|
||||
"../browser/handwriting/handwriting_recognition_service_impl_unittest.cc",
|
||||
"../browser/idle/idle_manager_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_active_blob_registry_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_backing_store_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_bucket_context_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_cleanup_on_io_error_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_context_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_database_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_fake_backing_store.cc",
|
||||
"../browser/indexed_db/indexed_db_fake_backing_store.h",
|
||||
"../browser/indexed_db/indexed_db_leveldb_coding_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_pre_close_task_queue_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_quota_client_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_tombstone_sweeper_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_transaction_unittest.cc",
|
||||
"../browser/indexed_db/indexed_db_unittest.cc",
|
||||
"../browser/indexed_db/list_set_unittest.cc",
|
||||
"../browser/indexed_db/mock_indexed_db_factory_client.cc",
|
||||
"../browser/indexed_db/mock_indexed_db_factory_client.h",
|
||||
"../browser/indexed_db/mock_mojo_indexed_db_database_callbacks.cc",
|
||||
"../browser/indexed_db/mock_mojo_indexed_db_database_callbacks.h",
|
||||
"../browser/indexed_db/mock_mojo_indexed_db_factory_client.cc",
|
||||
"../browser/indexed_db/mock_mojo_indexed_db_factory_client.h",
|
||||
"../browser/interest_group/ad_auction_headers_util_unittest.cc",
|
||||
"../browser/interest_group/ad_auction_service_impl_unittest.cc",
|
||||
"../browser/interest_group/ad_auction_url_loader_interceptor_unittest.cc",
|
||||
|
@ -2587,6 +2583,7 @@ test("content_unittests") {
|
|||
"../browser/renderer_host/commit_deferring_condition_runner_unittest.cc",
|
||||
"../browser/renderer_host/cross_origin_opener_policy_status_unittest.cc",
|
||||
"../browser/renderer_host/cursor_manager_unittest.cc",
|
||||
"../browser/renderer_host/display_feature_unittest.cc",
|
||||
"../browser/renderer_host/document_service_unittest.cc",
|
||||
"../browser/renderer_host/embedded_frame_sink_provider_impl_unittest.cc",
|
||||
"../browser/renderer_host/frame_token_message_queue_unittest.cc",
|
||||
|
@ -2654,7 +2651,6 @@ test("content_unittests") {
|
|||
"../browser/renderer_host/render_widget_host_view_base_unittest.cc",
|
||||
"../browser/renderer_host/render_widget_host_view_child_frame_unittest.cc",
|
||||
"../browser/renderer_host/transient_allow_popup_unittest.cc",
|
||||
"../browser/renderer_host/view_transition_commit_deferring_condition_unittest.cc",
|
||||
"../browser/renderer_host/visible_time_request_trigger_unittest.cc",
|
||||
"../browser/scheduler/browser_io_thread_delegate_unittest.cc",
|
||||
"../browser/scheduler/browser_task_executor_unittest.cc",
|
||||
|
@ -2801,6 +2797,7 @@ test("content_unittests") {
|
|||
"../common/input/touch_event_stream_validator_unittest.cc",
|
||||
"../common/input/touchpad_pinch_event_queue_unittest.cc",
|
||||
"../common/pseudonymization_salt_unittest.cc",
|
||||
"../common/service_worker/race_network_request_read_buffer_manager_unittest.cc",
|
||||
"../common/service_worker/race_network_request_url_loader_client_unittest.cc",
|
||||
"../common/service_worker/race_network_request_write_buffer_manager_unittest.cc",
|
||||
"../common/service_worker/service_worker_router_evaluator_unittest.cc",
|
||||
|
@ -2982,6 +2979,7 @@ test("content_unittests") {
|
|||
"//content/browser/cache_storage:cache_storage_proto",
|
||||
"//content/browser/devtools:devtools_background_services_proto",
|
||||
"//content/browser/download:proto",
|
||||
"//content/browser/indexed_db:unit_tests",
|
||||
"//content/browser/notifications:notification_proto",
|
||||
"//content/browser/private_aggregation:for_content_tests",
|
||||
"//content/browser/private_aggregation/proto:private_aggregation_budgets_proto",
|
||||
|
@ -3053,6 +3051,7 @@ test("content_unittests") {
|
|||
"//third_party/blink/public:test_support",
|
||||
"//third_party/blink/public/common:font_enumeration_table_proto",
|
||||
"//third_party/blink/public/common:headers",
|
||||
"//third_party/distributed_point_functions/shim:buildflags",
|
||||
"//third_party/icu",
|
||||
"//third_party/inspector_protocol:crdtp",
|
||||
"//third_party/inspector_protocol:crdtp_test",
|
||||
|
@ -3210,7 +3209,7 @@ test("content_unittests") {
|
|||
sources += [
|
||||
"../browser/accessibility/browser_accessibility_manager_win_unittest.cc",
|
||||
"../browser/accessibility/browser_accessibility_win_unittest.cc",
|
||||
"../browser/device_posture/device_posture_platform_provider_win_unittest.cc",
|
||||
"../browser/device_posture/device_posture_registry_watcher_win_unittest.cc",
|
||||
"../browser/renderer_host/direct_manipulation_test_helper_win.cc",
|
||||
"../browser/renderer_host/direct_manipulation_test_helper_win.h",
|
||||
"../browser/renderer_host/direct_manipulation_win_unittest.cc",
|
||||
|
@ -3233,7 +3232,6 @@ test("content_unittests") {
|
|||
"dwrite.lib",
|
||||
"wtsapi32.lib",
|
||||
]
|
||||
configs += [ "//build/config/win:delayloads" ]
|
||||
}
|
||||
if (is_mac) {
|
||||
deps += [
|
||||
|
@ -3306,6 +3304,9 @@ test("content_unittests") {
|
|||
"//ui/android:android",
|
||||
]
|
||||
|
||||
if (enable_chrome_android_internal) {
|
||||
data_deps += [ "//clank/build/bot/filters:content_unittests_filters" ]
|
||||
}
|
||||
defines += [ "APPCACHE_USE_SIMPLE_CACHE" ]
|
||||
} else {
|
||||
# Non-Android.
|
||||
|
@ -3315,7 +3316,7 @@ test("content_unittests") {
|
|||
"../browser/picture_in_picture/document_picture_in_picture_navigation_throttle_unittest.cc",
|
||||
"../browser/serial/serial_unittest.cc",
|
||||
"../browser/speech/endpointer/endpointer_unittest.cc",
|
||||
"../browser/speech/speech_recognition_engine_unittest.cc",
|
||||
"../browser/speech/network_speech_recognition_engine_impl_unittest.cc",
|
||||
"../browser/speech/speech_recognizer_impl_unittest.cc",
|
||||
"../browser/tracing/tracing_ui_unittest.cc",
|
||||
]
|
||||
|
@ -3388,11 +3389,6 @@ test("content_unittests") {
|
|||
deps += [ "//third_party/boringssl" ]
|
||||
}
|
||||
|
||||
if (is_linux || is_chromeos) {
|
||||
sources += [ "../common/set_process_title_linux_unittest.cc" ]
|
||||
deps += [ "//content/common:set_process_title_linux" ]
|
||||
}
|
||||
|
||||
if (enable_vr) {
|
||||
sources += [ "../browser/xr/service/xr_runtime_manager_unittest.cc" ]
|
||||
deps += [ "//device/vr:vr_fakes" ]
|
||||
|
|
Loading…
Reference in a new issue