refactor: add gin_helper::Dictionary::CreateEmpty() helper (#39547)

This commit is contained in:
Milan Burda 2023-08-21 03:43:41 +02:00 committed by GitHub
parent 9937a2bbe8
commit 09190085c0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
29 changed files with 66 additions and 64 deletions

View file

@ -222,7 +222,7 @@ int NodeMain(int argc, char* argv[]) {
process.SetMethod("crash", &ElectronBindings::Crash); process.SetMethod("crash", &ElectronBindings::Crash);
// Setup process.crashReporter in child node processes // Setup process.crashReporter in child node processes
gin_helper::Dictionary reporter = gin::Dictionary::CreateEmpty(isolate); auto reporter = gin_helper::Dictionary::CreateEmpty(isolate);
reporter.SetMethod("getParameters", &GetParameters); reporter.SetMethod("getParameters", &GetParameters);
#if IS_MAS_BUILD() #if IS_MAS_BUILD()
reporter.SetMethod("addExtraParameter", &SetCrashKeyStub); reporter.SetMethod("addExtraParameter", &SetCrashKeyStub);

View file

@ -202,7 +202,7 @@ struct Converter<JumpListItem> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate, static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const JumpListItem& val) { const JumpListItem& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("type", val.type); dict.Set("type", val.type);
switch (val.type) { switch (val.type) {
@ -338,7 +338,7 @@ struct Converter<Browser::LaunchItem> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate, static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
Browser::LaunchItem val) { Browser::LaunchItem val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("name", val.name); dict.Set("name", val.name);
dict.Set("path", val.path); dict.Set("path", val.path);
dict.Set("args", val.args); dict.Set("args", val.args);
@ -371,7 +371,7 @@ struct Converter<Browser::LoginItemSettings> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate, static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
Browser::LoginItemSettings val) { Browser::LoginItemSettings val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("openAtLogin", val.open_at_login); dict.Set("openAtLogin", val.open_at_login);
dict.Set("openAsHidden", val.open_as_hidden); dict.Set("openAsHidden", val.open_as_hidden);
dict.Set("restoreState", val.restore_state); dict.Set("restoreState", val.restore_state);
@ -1263,7 +1263,7 @@ v8::Local<v8::Value> App::GetJumpListSettings() {
} }
v8::Isolate* isolate = JavascriptEnvironment::GetIsolate(); v8::Isolate* isolate = JavascriptEnvironment::GetIsolate();
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("minItems", min_items); dict.Set("minItems", min_items);
dict.Set("removedItems", gin::ConvertToV8(isolate, removed_items)); dict.Set("removedItems", gin::ConvertToV8(isolate, removed_items));
return dict.GetHandle(); return dict.GetHandle();
@ -1344,8 +1344,8 @@ std::vector<gin_helper::Dictionary> App::GetAppMetrics(v8::Isolate* isolate) {
int processor_count = base::SysInfo::NumberOfProcessors(); int processor_count = base::SysInfo::NumberOfProcessors();
for (const auto& process_metric : app_metrics_) { for (const auto& process_metric : app_metrics_) {
gin_helper::Dictionary pid_dict = gin::Dictionary::CreateEmpty(isolate); auto pid_dict = gin_helper::Dictionary::CreateEmpty(isolate);
gin_helper::Dictionary cpu_dict = gin::Dictionary::CreateEmpty(isolate); auto cpu_dict = gin_helper::Dictionary::CreateEmpty(isolate);
pid_dict.SetHidden("simple", true); pid_dict.SetHidden("simple", true);
cpu_dict.SetHidden("simple", true); cpu_dict.SetHidden("simple", true);
@ -1382,7 +1382,7 @@ std::vector<gin_helper::Dictionary> App::GetAppMetrics(v8::Isolate* isolate) {
#if !BUILDFLAG(IS_LINUX) #if !BUILDFLAG(IS_LINUX)
auto memory_info = process_metric.second->GetMemoryInfo(); auto memory_info = process_metric.second->GetMemoryInfo();
gin_helper::Dictionary memory_dict = gin::Dictionary::CreateEmpty(isolate); auto memory_dict = gin_helper::Dictionary::CreateEmpty(isolate);
memory_dict.SetHidden("simple", true); memory_dict.SetHidden("simple", true);
memory_dict.Set("workingSetSize", memory_dict.Set("workingSetSize",
static_cast<double>(memory_info.working_set_size >> 10)); static_cast<double>(memory_info.working_set_size >> 10));
@ -1534,7 +1534,7 @@ v8::Local<v8::Value> App::GetDockAPI(v8::Isolate* isolate) {
// Initialize the Dock API, the methods are bound to "dock" which exists // Initialize the Dock API, the methods are bound to "dock" which exists
// for the lifetime of "app" // for the lifetime of "app"
auto browser = base::Unretained(Browser::Get()); auto browser = base::Unretained(Browser::Get());
gin_helper::Dictionary dock_obj = gin::Dictionary::CreateEmpty(isolate); auto dock_obj = gin_helper::Dictionary::CreateEmpty(isolate);
dock_obj.SetMethod("bounce", &DockBounce); dock_obj.SetMethod("bounce", &DockBounce);
dock_obj.SetMethod( dock_obj.SetMethod(
"cancelBounce", "cancelBounce",

View file

@ -212,7 +212,7 @@ void BaseWindow::OnWindowWillResize(const gfx::Rect& new_bounds,
bool* prevent_default) { bool* prevent_default) {
v8::Isolate* isolate = JavascriptEnvironment::GetIsolate(); v8::Isolate* isolate = JavascriptEnvironment::GetIsolate();
v8::HandleScope handle_scope(isolate); v8::HandleScope handle_scope(isolate);
gin_helper::Dictionary info = gin::Dictionary::CreateEmpty(isolate); auto info = gin::Dictionary::CreateEmpty(isolate);
info.Set("edge", edge); info.Set("edge", edge);
if (Emit("will-resize", new_bounds, info)) { if (Emit("will-resize", new_bounds, info)) {

View file

@ -39,8 +39,7 @@ BrowserWindow::BrowserWindow(gin::Arguments* args,
: BaseWindow(args->isolate(), options) { : BaseWindow(args->isolate(), options) {
// Use options.webPreferences in WebContents. // Use options.webPreferences in WebContents.
v8::Isolate* isolate = args->isolate(); v8::Isolate* isolate = args->isolate();
gin_helper::Dictionary web_preferences = auto web_preferences = gin_helper::Dictionary::CreateEmpty(isolate);
gin::Dictionary::CreateEmpty(isolate);
options.Get(options::kWebPreferences, &web_preferences); options.Get(options::kWebPreferences, &web_preferences);
bool transparent = false; bool transparent = false;

View file

@ -151,7 +151,7 @@ struct Converter<electron::api::DesktopCapturer::Source> {
static v8::Local<v8::Value> ToV8( static v8::Local<v8::Value> ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const electron::api::DesktopCapturer::Source& source) { const electron::api::DesktopCapturer::Source& source) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
content::DesktopMediaID id = source.media_list_source.id; content::DesktopMediaID id = source.media_list_source.id;
dict.Set("name", base::UTF16ToUTF8(source.media_list_source.name)); dict.Set("name", base::UTF16ToUTF8(source.media_list_source.name));
dict.Set("id", id.ToString()); dict.Set("id", id.ToString());

View file

@ -29,7 +29,7 @@ void ResolvePromiseObject(gin_helper::Promise<gin_helper::Dictionary> promise,
bool checkbox_checked) { bool checkbox_checked) {
v8::Isolate* isolate = promise.isolate(); v8::Isolate* isolate = promise.isolate();
v8::HandleScope handle_scope(isolate); v8::HandleScope handle_scope(isolate);
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("response", result); dict.Set("response", result);
dict.Set("checkboxChecked", checkbox_checked); dict.Set("checkboxChecked", checkbox_checked);

View file

@ -20,7 +20,7 @@ struct Converter<in_app_purchase::PaymentDiscount> {
static v8::Local<v8::Value> ToV8( static v8::Local<v8::Value> ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const in_app_purchase::PaymentDiscount& paymentDiscount) { const in_app_purchase::PaymentDiscount& paymentDiscount) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("identifier", paymentDiscount.identifier); dict.Set("identifier", paymentDiscount.identifier);
dict.Set("keyIdentifier", paymentDiscount.keyIdentifier); dict.Set("keyIdentifier", paymentDiscount.keyIdentifier);
@ -35,7 +35,7 @@ template <>
struct Converter<in_app_purchase::Payment> { struct Converter<in_app_purchase::Payment> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate, static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const in_app_purchase::Payment& payment) { const in_app_purchase::Payment& payment) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("productIdentifier", payment.productIdentifier); dict.Set("productIdentifier", payment.productIdentifier);
dict.Set("quantity", payment.quantity); dict.Set("quantity", payment.quantity);
@ -51,7 +51,7 @@ template <>
struct Converter<in_app_purchase::Transaction> { struct Converter<in_app_purchase::Transaction> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate, static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const in_app_purchase::Transaction& val) { const in_app_purchase::Transaction& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("transactionIdentifier", val.transactionIdentifier); dict.Set("transactionIdentifier", val.transactionIdentifier);
dict.Set("transactionDate", val.transactionDate); dict.Set("transactionDate", val.transactionDate);
@ -71,7 +71,7 @@ struct Converter<in_app_purchase::ProductSubscriptionPeriod> {
v8::Isolate* isolate, v8::Isolate* isolate,
const in_app_purchase::ProductSubscriptionPeriod& const in_app_purchase::ProductSubscriptionPeriod&
productSubscriptionPeriod) { productSubscriptionPeriod) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("numberOfUnits", productSubscriptionPeriod.numberOfUnits); dict.Set("numberOfUnits", productSubscriptionPeriod.numberOfUnits);
dict.Set("unit", productSubscriptionPeriod.unit); dict.Set("unit", productSubscriptionPeriod.unit);
@ -84,7 +84,7 @@ struct Converter<in_app_purchase::ProductDiscount> {
static v8::Local<v8::Value> ToV8( static v8::Local<v8::Value> ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const in_app_purchase::ProductDiscount& productDiscount) { const in_app_purchase::ProductDiscount& productDiscount) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("identifier", productDiscount.identifier); dict.Set("identifier", productDiscount.identifier);
dict.Set("type", productDiscount.type); dict.Set("type", productDiscount.type);
@ -104,7 +104,7 @@ template <>
struct Converter<in_app_purchase::Product> { struct Converter<in_app_purchase::Product> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate, static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const in_app_purchase::Product& val) { const in_app_purchase::Product& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("productIdentifier", val.productIdentifier); dict.Set("productIdentifier", val.productIdentifier);
dict.Set("localizedDescription", val.localizedDescription); dict.Set("localizedDescription", val.localizedDescription);

View file

@ -36,7 +36,7 @@ struct Converter<electron::NotificationAction> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate, static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
electron::NotificationAction val) { electron::NotificationAction val) {
gin::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin::Dictionary::CreateEmpty(isolate);
dict.Set("text", val.text); dict.Set("text", val.text);
dict.Set("type", val.type); dict.Set("type", val.type);
return ConvertToV8(isolate, dict); return ConvertToV8(isolate, dict);

View file

@ -24,7 +24,7 @@ template <>
struct Converter<printing::PrinterBasicInfo> { struct Converter<printing::PrinterBasicInfo> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate, static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const printing::PrinterBasicInfo& val) { const printing::PrinterBasicInfo& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("name", val.printer_name); dict.Set("name", val.printer_name);
dict.Set("displayName", val.display_name); dict.Set("displayName", val.display_name);
dict.Set("description", val.printer_description); dict.Set("description", val.printer_description);

View file

@ -35,7 +35,7 @@ SystemPreferences::~SystemPreferences() = default;
v8::Local<v8::Value> SystemPreferences::GetAnimationSettings( v8::Local<v8::Value> SystemPreferences::GetAnimationSettings(
v8::Isolate* isolate) { v8::Isolate* isolate) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("shouldRenderRichAnimation", dict.Set("shouldRenderRichAnimation",
gfx::Animation::ShouldRenderRichAnimation()); gfx::Animation::ShouldRenderRichAnimation());

View file

@ -50,7 +50,7 @@ struct Converter<network::mojom::HttpRawHeaderPairPtr> {
static v8::Local<v8::Value> ToV8( static v8::Local<v8::Value> ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const network::mojom::HttpRawHeaderPairPtr& pair) { const network::mojom::HttpRawHeaderPairPtr& pair) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("key", pair->key); dict.Set("key", pair->key);
dict.Set("value", pair->value); dict.Set("value", pair->value);
return dict.GetHandle(); return dict.GetHandle();
@ -709,7 +709,7 @@ void SimpleURLLoaderWrapper::OnResponseStarted(
const network::mojom::URLResponseHead& response_head) { const network::mojom::URLResponseHead& response_head) {
v8::Isolate* isolate = JavascriptEnvironment::GetIsolate(); v8::Isolate* isolate = JavascriptEnvironment::GetIsolate();
v8::HandleScope scope(isolate); v8::HandleScope scope(isolate);
gin::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin::Dictionary::CreateEmpty(isolate);
dict.Set("statusCode", response_head.headers->response_code()); dict.Set("statusCode", response_head.headers->response_code());
dict.Set("statusMessage", response_head.headers->GetStatusText()); dict.Set("statusMessage", response_head.headers->GetStatusText());
dict.Set("httpVersion", response_head.headers->GetHttpVersion()); dict.Set("httpVersion", response_head.headers->GetHttpVersion());

View file

@ -1504,7 +1504,7 @@ void WebContents::FindReply(content::WebContents* web_contents,
v8::Isolate* isolate = JavascriptEnvironment::GetIsolate(); v8::Isolate* isolate = JavascriptEnvironment::GetIsolate();
v8::HandleScope handle_scope(isolate); v8::HandleScope handle_scope(isolate);
gin_helper::Dictionary result = gin::Dictionary::CreateEmpty(isolate); auto result = gin_helper::Dictionary::CreateEmpty(isolate);
result.Set("requestId", request_id); result.Set("requestId", request_id);
result.Set("matches", number_of_matches); result.Set("matches", number_of_matches);
result.Set("selectionArea", selection_rect); result.Set("selectionArea", selection_rect);

View file

@ -105,7 +105,7 @@ v8::Local<v8::Promise> Browser::GetApplicationInfoForProtocol(
const GURL& url) { const GURL& url) {
gin_helper::Promise<gin_helper::Dictionary> promise(isolate); gin_helper::Promise<gin_helper::Dictionary> promise(isolate);
v8::Local<v8::Promise> handle = promise.GetHandle(); v8::Local<v8::Promise> handle = promise.GetHandle();
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
NSString* ns_app_path = GetAppPathForProtocol(url); NSString* ns_app_path = GetAppPathForProtocol(url);

View file

@ -113,8 +113,7 @@ void OnIconDataAvailable(const base::FilePath& app_path,
gfx::Image icon) { gfx::Image icon) {
if (!icon.IsEmpty()) { if (!icon.IsEmpty()) {
v8::HandleScope scope(promise.isolate()); v8::HandleScope scope(promise.isolate());
gin_helper::Dictionary dict = auto dict = gin_helper::Dictionary::CreateEmpty(promise.isolate());
gin::Dictionary::CreateEmpty(promise.isolate());
dict.Set("path", app_path); dict.Set("path", app_path);
dict.Set("name", app_display_name); dict.Set("name", app_display_name);
@ -270,7 +269,7 @@ void GetFileIcon(const base::FilePath& path,
gfx::Image* icon = gfx::Image* icon =
icon_manager->LookupIconFromFilepath(normalized_path, icon_size, 1.0f); icon_manager->LookupIconFromFilepath(normalized_path, icon_size, 1.0f);
if (icon) { if (icon) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("icon", *icon); dict.Set("icon", *icon);
dict.Set("name", app_display_name); dict.Set("name", app_display_name);
dict.Set("path", normalized_path); dict.Set("path", normalized_path);

View file

@ -14,7 +14,7 @@ struct Converter<electron::BluetoothChooser::DeviceInfo> {
static v8::Local<v8::Value> ToV8( static v8::Local<v8::Value> ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const electron::BluetoothChooser::DeviceInfo& val) { const electron::BluetoothChooser::DeviceInfo& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("deviceName", val.device_name); dict.Set("deviceName", val.device_name);
dict.Set("deviceId", val.device_id); dict.Set("deviceId", val.device_id);
return gin::ConvertToV8(isolate, dict); return gin::ConvertToV8(isolate, dict);

View file

@ -26,7 +26,7 @@ struct Converter<device::mojom::SerialPortInfoPtr> {
static v8::Local<v8::Value> ToV8( static v8::Local<v8::Value> ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const device::mojom::SerialPortInfoPtr& port) { const device::mojom::SerialPortInfoPtr& port) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("portId", port->token.ToString()); dict.Set("portId", port->token.ToString());
dict.Set("portName", port->path.BaseName().LossyDisplayName()); dict.Set("portName", port->path.BaseName().LossyDisplayName());
if (port->display_name && !port->display_name->empty()) { if (port->display_name && !port->display_name->empty()) {

View file

@ -215,7 +215,7 @@ static void SplitPath(const v8::FunctionCallbackInfo<v8::Value>& args) {
return; return;
} }
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
base::FilePath asar_path, file_path; base::FilePath asar_path, file_path;
if (asar::GetAsarArchivePath(path, &asar_path, &file_path, true)) { if (asar::GetAsarArchivePath(path, &asar_path, &file_path, true)) {
dict.Set("isAsar", true); dict.Set("isAsar", true);

View file

@ -643,7 +643,7 @@ void Initialize(v8::Local<v8::Object> exports,
void* priv) { void* priv) {
v8::Isolate* isolate = context->GetIsolate(); v8::Isolate* isolate = context->GetIsolate();
gin_helper::Dictionary dict(isolate, exports); gin_helper::Dictionary dict(isolate, exports);
gin_helper::Dictionary native_image = gin::Dictionary::CreateEmpty(isolate); auto native_image = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("nativeImage", native_image); dict.Set("nativeImage", native_image);
native_image.SetMethod("createEmpty", &NativeImage::CreateEmpty); native_image.SetMethod("createEmpty", &NativeImage::CreateEmpty);

View file

@ -139,7 +139,7 @@ v8::Local<v8::Value> ElectronBindings::GetHeapStatistics(v8::Isolate* isolate) {
v8::HeapStatistics v8_heap_stats; v8::HeapStatistics v8_heap_stats;
isolate->GetHeapStatistics(&v8_heap_stats); isolate->GetHeapStatistics(&v8_heap_stats);
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("totalHeapSize", dict.Set("totalHeapSize",
static_cast<double>(v8_heap_stats.total_heap_size() >> 10)); static_cast<double>(v8_heap_stats.total_heap_size() >> 10));
@ -184,7 +184,7 @@ v8::Local<v8::Value> ElectronBindings::GetSystemMemoryInfo(
return v8::Undefined(isolate); return v8::Undefined(isolate);
} }
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("total", mem_info.total); dict.Set("total", mem_info.total);
@ -235,7 +235,7 @@ v8::Local<v8::Value> ElectronBindings::GetBlinkMemoryInfo(
auto allocated = blink::ProcessHeap::TotalAllocatedObjectSize(); auto allocated = blink::ProcessHeap::TotalAllocatedObjectSize();
auto total = blink::ProcessHeap::TotalAllocatedSpace(); auto total = blink::ProcessHeap::TotalAllocatedSpace();
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("allocated", static_cast<double>(allocated >> 10)); dict.Set("allocated", static_cast<double>(allocated >> 10));
dict.Set("total", static_cast<double>(total >> 10)); dict.Set("total", static_cast<double>(total >> 10));
@ -266,7 +266,7 @@ void ElectronBindings::DidReceiveMemoryDump(
for (const memory_instrumentation::GlobalMemoryDump::ProcessDump& dump : for (const memory_instrumentation::GlobalMemoryDump::ProcessDump& dump :
global_dump->process_dumps()) { global_dump->process_dumps()) {
if (target_pid == dump.pid()) { if (target_pid == dump.pid()) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
const auto& osdump = dump.os_dump(); const auto& osdump = dump.os_dump();
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN)
dict.Set("residentSet", osdump.resident_set_kb); dict.Set("residentSet", osdump.resident_set_kb);
@ -288,7 +288,7 @@ void ElectronBindings::DidReceiveMemoryDump(
v8::Local<v8::Value> ElectronBindings::GetCPUUsage( v8::Local<v8::Value> ElectronBindings::GetCPUUsage(
base::ProcessMetrics* metrics, base::ProcessMetrics* metrics,
v8::Isolate* isolate) { v8::Isolate* isolate) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
int processor_count = base::SysInfo::NumberOfProcessors(); int processor_count = base::SysInfo::NumberOfProcessors();
dict.Set("percentCPUUsage", dict.Set("percentCPUUsage",
@ -309,7 +309,7 @@ v8::Local<v8::Value> ElectronBindings::GetCPUUsage(
v8::Local<v8::Value> ElectronBindings::GetIOCounters(v8::Isolate* isolate) { v8::Local<v8::Value> ElectronBindings::GetIOCounters(v8::Isolate* isolate) {
auto metrics = base::ProcessMetrics::CreateCurrentProcessMetrics(); auto metrics = base::ProcessMetrics::CreateCurrentProcessMetrics();
base::IoCounters io_counters; base::IoCounters io_counters;
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
if (metrics->GetIOCounters(&io_counters)) { if (metrics->GetIOCounters(&io_counters)) {

View file

@ -311,7 +311,7 @@ int GetKeyLocationCode(const blink::WebInputEvent& key) {
v8::Local<v8::Value> Converter<blink::WebKeyboardEvent>::ToV8( v8::Local<v8::Value> Converter<blink::WebKeyboardEvent>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const blink::WebKeyboardEvent& in) { const blink::WebKeyboardEvent& in) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("type", in.GetType()); dict.Set("type", in.GetType());
dict.Set("key", ui::KeycodeConverter::DomKeyToKeyString(in.dom_key)); dict.Set("key", ui::KeycodeConverter::DomKeyToKeyString(in.dom_key));
@ -468,7 +468,7 @@ Converter<blink::mojom::ContextMenuDataInputFieldType>::ToV8(
} }
v8::Local<v8::Value> EditFlagsToV8(v8::Isolate* isolate, int editFlags) { v8::Local<v8::Value> EditFlagsToV8(v8::Isolate* isolate, int editFlags) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("canUndo", dict.Set("canUndo",
!!(editFlags & blink::ContextMenuDataEditFlags::kCanUndo)); !!(editFlags & blink::ContextMenuDataEditFlags::kCanUndo));
dict.Set("canRedo", dict.Set("canRedo",
@ -497,7 +497,7 @@ v8::Local<v8::Value> EditFlagsToV8(v8::Isolate* isolate, int editFlags) {
} }
v8::Local<v8::Value> MediaFlagsToV8(v8::Isolate* isolate, int mediaFlags) { v8::Local<v8::Value> MediaFlagsToV8(v8::Isolate* isolate, int mediaFlags) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("inError", !!(mediaFlags & blink::ContextMenuData::kMediaInError)); dict.Set("inError", !!(mediaFlags & blink::ContextMenuData::kMediaInError));
dict.Set("isPaused", !!(mediaFlags & blink::ContextMenuData::kMediaPaused)); dict.Set("isPaused", !!(mediaFlags & blink::ContextMenuData::kMediaPaused));
dict.Set("isMuted", !!(mediaFlags & blink::ContextMenuData::kMediaMuted)); dict.Set("isMuted", !!(mediaFlags & blink::ContextMenuData::kMediaMuted));
@ -522,7 +522,7 @@ v8::Local<v8::Value> MediaFlagsToV8(v8::Isolate* isolate, int mediaFlags) {
v8::Local<v8::Value> Converter<blink::WebCacheResourceTypeStat>::ToV8( v8::Local<v8::Value> Converter<blink::WebCacheResourceTypeStat>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const blink::WebCacheResourceTypeStat& stat) { const blink::WebCacheResourceTypeStat& stat) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("count", static_cast<uint32_t>(stat.count)); dict.Set("count", static_cast<uint32_t>(stat.count));
dict.Set("size", static_cast<double>(stat.size)); dict.Set("size", static_cast<double>(stat.size));
dict.Set("liveSize", static_cast<double>(stat.decoded_size)); dict.Set("liveSize", static_cast<double>(stat.decoded_size));
@ -532,7 +532,7 @@ v8::Local<v8::Value> Converter<blink::WebCacheResourceTypeStat>::ToV8(
v8::Local<v8::Value> Converter<blink::WebCacheResourceTypeStats>::ToV8( v8::Local<v8::Value> Converter<blink::WebCacheResourceTypeStats>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const blink::WebCacheResourceTypeStats& stats) { const blink::WebCacheResourceTypeStats& stats) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("images", stats.images); dict.Set("images", stats.images);
dict.Set("scripts", stats.scripts); dict.Set("scripts", stats.scripts);
dict.Set("cssStyleSheets", stats.css_style_sheets); dict.Set("cssStyleSheets", stats.css_style_sheets);
@ -565,7 +565,7 @@ bool Converter<network::mojom::ReferrerPolicy>::FromV8(
v8::Local<v8::Value> Converter<blink::mojom::Referrer>::ToV8( v8::Local<v8::Value> Converter<blink::mojom::Referrer>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const blink::mojom::Referrer& val) { const blink::mojom::Referrer& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("url", ConvertToV8(isolate, val.url)); dict.Set("url", ConvertToV8(isolate, val.url));
dict.Set("policy", ConvertToV8(isolate, val.policy)); dict.Set("policy", ConvertToV8(isolate, val.policy));
return gin::ConvertToV8(isolate, dict); return gin::ConvertToV8(isolate, dict);

View file

@ -125,7 +125,7 @@ v8::Local<v8::Value> Converter<ContextMenuParamsWithRenderFrameHost>::ToV8(
const ContextMenuParamsWithRenderFrameHost& val) { const ContextMenuParamsWithRenderFrameHost& val) {
const auto& params = val.first; const auto& params = val.first;
content::RenderFrameHost* render_frame_host = val.second; content::RenderFrameHost* render_frame_host = val.second;
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetGetter("frame", render_frame_host, v8::DontEnum); dict.SetGetter("frame", render_frame_host, v8::DontEnum);
dict.Set("x", params.x); dict.Set("x", params.x);
dict.Set("y", params.y); dict.Set("y", params.y);
@ -309,7 +309,7 @@ bool Converter<content::WebContents*>::FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> Converter<content::Referrer>::ToV8( v8::Local<v8::Value> Converter<content::Referrer>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const content::Referrer& val) { const content::Referrer& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("url", ConvertToV8(isolate, val.url)); dict.Set("url", ConvertToV8(isolate, val.url));
dict.Set("policy", ConvertToV8(isolate, val.policy)); dict.Set("policy", ConvertToV8(isolate, val.policy));
return gin::ConvertToV8(isolate, dict); return gin::ConvertToV8(isolate, dict);

View file

@ -27,7 +27,7 @@ bool Converter<file_dialog::Filter>::FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> Converter<file_dialog::Filter>::ToV8( v8::Local<v8::Value> Converter<file_dialog::Filter>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const file_dialog::Filter& in) { const file_dialog::Filter& in) {
gin::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin::Dictionary::CreateEmpty(isolate);
dict.Set("name", in.first); dict.Set("name", in.first);
dict.Set("extensions", in.second); dict.Set("extensions", in.second);
@ -58,7 +58,7 @@ bool Converter<file_dialog::DialogSettings>::FromV8(
v8::Local<v8::Value> Converter<file_dialog::DialogSettings>::ToV8( v8::Local<v8::Value> Converter<file_dialog::DialogSettings>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const file_dialog::DialogSettings& in) { const file_dialog::DialogSettings& in) {
gin::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin::Dictionary::CreateEmpty(isolate);
dict.Set("window", dict.Set("window",
electron::api::BrowserWindow::From(isolate, in.parent_window)); electron::api::BrowserWindow::From(isolate, in.parent_window));

View file

@ -17,7 +17,7 @@ namespace gin {
v8::Local<v8::Value> Converter<gfx::Point>::ToV8(v8::Isolate* isolate, v8::Local<v8::Value> Converter<gfx::Point>::ToV8(v8::Isolate* isolate,
const gfx::Point& val) { const gfx::Point& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("x", val.x()); dict.Set("x", val.x());
dict.Set("y", val.y()); dict.Set("y", val.y());
@ -40,7 +40,7 @@ bool Converter<gfx::Point>::FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> Converter<gfx::PointF>::ToV8(v8::Isolate* isolate, v8::Local<v8::Value> Converter<gfx::PointF>::ToV8(v8::Isolate* isolate,
const gfx::PointF& val) { const gfx::PointF& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("x", val.x()); dict.Set("x", val.x());
dict.Set("y", val.y()); dict.Set("y", val.y());
@ -62,7 +62,7 @@ bool Converter<gfx::PointF>::FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> Converter<gfx::Size>::ToV8(v8::Isolate* isolate, v8::Local<v8::Value> Converter<gfx::Size>::ToV8(v8::Isolate* isolate,
const gfx::Size& val) { const gfx::Size& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("width", val.width()); dict.Set("width", val.width());
dict.Set("height", val.height()); dict.Set("height", val.height());
@ -84,7 +84,7 @@ bool Converter<gfx::Size>::FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> Converter<gfx::Rect>::ToV8(v8::Isolate* isolate, v8::Local<v8::Value> Converter<gfx::Rect>::ToV8(v8::Isolate* isolate,
const gfx::Rect& val) { const gfx::Rect& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("x", val.x()); dict.Set("x", val.x());
dict.Set("y", val.y()); dict.Set("y", val.y());
@ -141,7 +141,7 @@ struct Converter<display::Display::TouchSupport> {
v8::Local<v8::Value> Converter<display::Display>::ToV8( v8::Local<v8::Value> Converter<display::Display>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const display::Display& val) { const display::Display& val) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.SetHidden("simple", true); dict.SetHidden("simple", true);
dict.Set("id", val.id()); dict.Set("id", val.id());
dict.Set("label", val.label()); dict.Set("label", val.label());

View file

@ -59,7 +59,7 @@ bool CertFromData(const std::string& data,
v8::Local<v8::Value> Converter<net::AuthChallengeInfo>::ToV8( v8::Local<v8::Value> Converter<net::AuthChallengeInfo>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const net::AuthChallengeInfo& val) { const net::AuthChallengeInfo& val) {
gin::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin::Dictionary::CreateEmpty(isolate);
dict.Set("isProxy", val.is_proxy); dict.Set("isProxy", val.is_proxy);
dict.Set("scheme", val.scheme); dict.Set("scheme", val.scheme);
dict.Set("host", val.challenger.host()); dict.Set("host", val.challenger.host());
@ -610,7 +610,7 @@ bool Converter<scoped_refptr<network::ResourceRequestBody>>::FromV8(
v8::Local<v8::Value> Converter<network::ResourceRequest>::ToV8( v8::Local<v8::Value> Converter<network::ResourceRequest>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const network::ResourceRequest& val) { const network::ResourceRequest& val) {
gin::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin::Dictionary::CreateEmpty(isolate);
dict.Set("method", val.method); dict.Set("method", val.method);
dict.Set("url", val.url.spec()); dict.Set("url", val.url.spec());
dict.Set("referrer", val.referrer.spec()); dict.Set("referrer", val.referrer.spec());
@ -624,7 +624,7 @@ v8::Local<v8::Value> Converter<network::ResourceRequest>::ToV8(
v8::Local<v8::Value> Converter<electron::VerifyRequestParams>::ToV8( v8::Local<v8::Value> Converter<electron::VerifyRequestParams>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
electron::VerifyRequestParams val) { electron::VerifyRequestParams val) {
gin::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin::Dictionary::CreateEmpty(isolate);
dict.Set("hostname", val.hostname); dict.Set("hostname", val.hostname);
dict.Set("certificate", val.certificate); dict.Set("certificate", val.certificate);
dict.Set("validatedCertificate", val.validated_certificate); dict.Set("validatedCertificate", val.validated_certificate);
@ -638,7 +638,7 @@ v8::Local<v8::Value> Converter<electron::VerifyRequestParams>::ToV8(
v8::Local<v8::Value> Converter<net::HttpVersion>::ToV8( v8::Local<v8::Value> Converter<net::HttpVersion>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const net::HttpVersion& val) { const net::HttpVersion& val) {
gin::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin::Dictionary::CreateEmpty(isolate);
dict.Set("major", static_cast<uint32_t>(val.major_value())); dict.Set("major", static_cast<uint32_t>(val.major_value()));
dict.Set("minor", static_cast<uint32_t>(val.minor_value())); dict.Set("minor", static_cast<uint32_t>(val.minor_value()));
return ConvertToV8(isolate, dict); return ConvertToV8(isolate, dict);
@ -648,7 +648,7 @@ v8::Local<v8::Value> Converter<net::HttpVersion>::ToV8(
v8::Local<v8::Value> Converter<net::RedirectInfo>::ToV8( v8::Local<v8::Value> Converter<net::RedirectInfo>::ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const net::RedirectInfo& val) { const net::RedirectInfo& val) {
gin::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin::Dictionary::CreateEmpty(isolate);
dict.Set("statusCode", val.status_code); dict.Set("statusCode", val.status_code);
dict.Set("newMethod", val.new_method); dict.Set("newMethod", val.new_method);

View file

@ -16,7 +16,7 @@ struct Converter<device::mojom::SerialPortInfoPtr> {
static v8::Local<v8::Value> ToV8( static v8::Local<v8::Value> ToV8(
v8::Isolate* isolate, v8::Isolate* isolate,
const device::mojom::SerialPortInfoPtr& port) { const device::mojom::SerialPortInfoPtr& port) {
gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate); auto dict = gin_helper::Dictionary::CreateEmpty(isolate);
dict.Set("portId", port->token.ToString()); dict.Set("portId", port->token.ToString());
dict.Set("portName", port->path.BaseName().LossyDisplayName()); dict.Set("portName", port->path.BaseName().LossyDisplayName());
if (port->display_name && !port->display_name->empty()) if (port->display_name && !port->display_name->empty())

View file

@ -126,7 +126,7 @@ v8::Local<v8::Value> CreateFunctionFromTranslater(v8::Isolate* isolate,
v8::Local<v8::FunctionTemplate>::New(isolate, g_call_translater); v8::Local<v8::FunctionTemplate>::New(isolate, g_call_translater);
auto* holder = new TranslaterHolder(isolate); auto* holder = new TranslaterHolder(isolate);
holder->translater = translater; holder->translater = translater;
gin::Dictionary state = gin::Dictionary::CreateEmpty(isolate); auto state = gin::Dictionary::CreateEmpty(isolate);
if (one_time) if (one_time)
state.Set("oneTime", true); state.Set("oneTime", true);
auto context = isolate->GetCurrentContext(); auto context = isolate->GetCurrentContext();

View file

@ -31,6 +31,10 @@ class Dictionary : public gin::Dictionary {
Dictionary(const gin::Dictionary& dict) // NOLINT(runtime/explicit) Dictionary(const gin::Dictionary& dict) // NOLINT(runtime/explicit)
: gin::Dictionary(dict) {} : gin::Dictionary(dict) {}
static Dictionary CreateEmpty(v8::Isolate* isolate) {
return gin::Dictionary::CreateEmpty(isolate);
}
// Differences from the Get method in gin::Dictionary: // Differences from the Get method in gin::Dictionary:
// 1. This is a const method; // 1. This is a const method;
// 2. It checks whether the key exists before reading; // 2. It checks whether the key exists before reading;

View file

@ -137,7 +137,7 @@ void ElectronSandboxedRendererClient::InitializeBindings(
b.SetMethod("get", GetBinding); b.SetMethod("get", GetBinding);
b.SetMethod("createPreloadScript", CreatePreloadScript); b.SetMethod("createPreloadScript", CreatePreloadScript);
gin_helper::Dictionary process = gin::Dictionary::CreateEmpty(isolate); auto process = gin_helper::Dictionary::CreateEmpty(isolate);
b.Set("process", process); b.Set("process", process);
ElectronBindings::BindProcess(isolate, &process, metrics_.get()); ElectronBindings::BindProcess(isolate, &process, metrics_.get());

View file

@ -596,7 +596,7 @@ void RendererClientBase::SetupMainWorldOverrides(
v8::HandleScope handle_scope(isolate); v8::HandleScope handle_scope(isolate);
v8::Context::Scope context_scope(context); v8::Context::Scope context_scope(context);
gin_helper::Dictionary isolated_api = gin::Dictionary::CreateEmpty(isolate); auto isolated_api = gin_helper::Dictionary::CreateEmpty(isolate);
isolated_api.SetMethod("allowGuestViewElementDefinition", isolated_api.SetMethod("allowGuestViewElementDefinition",
&AllowGuestViewElementDefinition); &AllowGuestViewElementDefinition);
isolated_api.SetMethod("setIsWebView", &SetIsWebView); isolated_api.SetMethod("setIsWebView", &SetIsWebView);