67 lines
2.2 KiB
C#
67 lines
2.2 KiB
C#
//
|
|
// This file manually written from cef/include/internal/cef_types.h.
|
|
// C API name: cef_settings_t.
|
|
//
|
|
// Note: cef_settings_t structure in CEF has 2 layouts (choosed in compile time),
|
|
// so in C# we make different structures and will choose layouts in runtime.
|
|
// Windows platform: cef_settings_t_windows.
|
|
// Non-windows platforms: cef_settings_t_posix.
|
|
//
|
|
namespace Cef3.Interop
|
|
{
|
|
using System;
|
|
using System.Runtime.InteropServices;
|
|
|
|
[StructLayout(LayoutKind.Sequential, Pack = libcef.ALIGN)]
|
|
internal unsafe struct cef_settings_t
|
|
{
|
|
public UIntPtr size;
|
|
public int single_process;
|
|
public int no_sandbox;
|
|
public cef_string_t browser_subprocess_path;
|
|
public int multi_threaded_message_loop;
|
|
public int windowless_rendering_enabled;
|
|
public int command_line_args_disabled;
|
|
public cef_string_t cache_path;
|
|
public cef_string_t user_data_path;
|
|
public int persist_session_cookies;
|
|
public cef_string_t user_agent;
|
|
public cef_string_t product_version;
|
|
public cef_string_t locale;
|
|
public cef_string_t log_file;
|
|
public CefLogSeverity log_severity;
|
|
public cef_string_t javascript_flags;
|
|
public cef_string_t resources_dir_path;
|
|
public cef_string_t locales_dir_path;
|
|
public int pack_loading_disabled;
|
|
public int remote_debugging_port;
|
|
public int uncaught_exception_stack_size;
|
|
public int context_safety_implementation;
|
|
public int ignore_certificate_errors;
|
|
public uint background_color;
|
|
public cef_string_t accept_language_list;
|
|
|
|
#region Alloc & Free
|
|
private static int _sizeof;
|
|
|
|
static cef_settings_t()
|
|
{
|
|
_sizeof = Marshal.SizeOf(typeof(cef_settings_t));
|
|
}
|
|
|
|
public static cef_settings_t* Alloc()
|
|
{
|
|
var ptr = (cef_settings_t*)Marshal.AllocHGlobal(_sizeof);
|
|
*ptr = new cef_settings_t();
|
|
ptr->size = (UIntPtr)_sizeof;
|
|
return ptr;
|
|
}
|
|
|
|
public static void Free(cef_settings_t* ptr)
|
|
{
|
|
Marshal.FreeHGlobal((IntPtr)ptr);
|
|
}
|
|
#endregion
|
|
}
|
|
}
|