internal static cef_scheme_handler_factory_t* Alloc() { var ptr = (cef_scheme_handler_factory_t*)Marshal.AllocHGlobal(_sizeof); *ptr = new cef_scheme_handler_factory_t(); ptr->_base._size = (UIntPtr)_sizeof; return ptr; }
internal static cef_scheme_handler_factory_t *Alloc() { var ptr = (cef_scheme_handler_factory_t *)Marshal.AllocHGlobal(_sizeof); *ptr = new cef_scheme_handler_factory_t(); ptr->_base._size = (UIntPtr)_sizeof; return(ptr); }
private int release(cef_scheme_handler_factory_t* self) { lock (SyncRoot) { var result = --_refct; if (result == 0) { lock (_roots) { _roots.Remove((IntPtr)_self); } } return result; } }
private int add_ref(cef_scheme_handler_factory_t* self) { lock (SyncRoot) { var result = ++_refct; if (result == 1) { lock (_roots) { _roots.Add((IntPtr)_self, this); } } return result; } }
private cef_resource_handler_t* create(cef_scheme_handler_factory_t* self, cef_browser_t* browser, cef_frame_t* frame, cef_string_t* scheme_name, cef_request_t* request) { CheckSelf(self); var m_browser = CefBrowser.FromNativeOrNull(browser); var m_frame = CefFrame.FromNativeOrNull(frame); var m_schemeName = cef_string_t.ToString(scheme_name); var m_request = CefRequest.FromNative(request); var handler = Create(m_browser, m_frame, m_schemeName, m_request); // TODO: [ApiUsage] method can return null, only when schemeName is built-in scheme, in other cases it is incorrect. return handler != null ? handler.ToNative() : null; }
private void CheckSelf(cef_scheme_handler_factory_t* self) { if (_self != self) throw ExceptionBuilder.InvalidSelfReference(); }
private int get_refct(cef_scheme_handler_factory_t* self) { return _refct; }
public static extern int register_scheme_handler_factory(cef_string_t* scheme_name, cef_string_t* domain_name, cef_scheme_handler_factory_t* factory);
internal static void Free(cef_scheme_handler_factory_t* ptr) { Marshal.FreeHGlobal((IntPtr)ptr); }