public void Dispose()
 {
     if (_self != null)
     {
         Release();
         _self = null;
     }
     GC.SuppressFinalize(this);
 }
Exemple #2
0
        private int on_process_message_received(cef_render_process_handler_t *self, cef_browser_t *browser, cef_frame_t *frame, CefProcessId source_process, cef_process_message_t *message)
        {
            CheckSelf(self);

            var m_browser = CefBrowser.FromNative(browser);
            var m_frame   = CefFrame.FromNative(frame);
            var m_message = CefProcessMessage.FromNative(message);

            var result = OnProcessMessageReceived(m_browser, m_frame, source_process, m_message);

            m_message.Dispose();

            return(result ? 1 : 0);
        }
 private CefProcessMessage(cef_process_message_t* ptr)
 {
     if (ptr == null) throw new ArgumentNullException("ptr");
     _self = ptr;
 }
Exemple #4
0
        private int on_process_message_received(cef_client_t *self, cef_browser_t *browser, CefProcessId source_process, cef_process_message_t *message)
        {
            CheckSelf(self);

            var m_browser = CefBrowser.FromNative(browser);
            var m_message = CefProcessMessage.FromNative(message);

            var result = OnProcessMessageReceived(m_browser, source_process, m_message);

            m_browser.Dispose();
            m_message.Dispose();

            return(result ? 1 : 0);
        }
Exemple #5
0
        /// <summary>
        /// Return the handler for browser request events.
        /// </summary>
        // protected abstract cef_request_handler_t* GetRequestHandler();

        private int on_process_message_received(cef_client_t *self, cef_browser_t *browser, CefProcessId source_process, cef_process_message_t *message)
        {
            CheckSelf(self);
            throw new NotImplementedException(); // TODO: CefClient.OnProcessMessageReceived
        }
Exemple #6
0
 internal static CefProcessMessage FromNative(cef_process_message_t *ptr)
 {
     return(new CefProcessMessage(ptr));
 }
Exemple #7
0
 public unsafe int OnProcessMessageReceived(cef_browser_t *browser, cef_frame_t *frame, CefProcessId source_process, cef_process_message_t *message)
 {
     fixed(cef_client_t *self = &this)
     {
         return(((delegate * unmanaged[Stdcall] < cef_client_t *, cef_browser_t *, cef_frame_t *, CefProcessId, cef_process_message_t *, int >)on_process_message_received)(self, browser, frame, source_process, message));
     }
 }
Exemple #8
0
        public static int send_process_message(cef_browser_t *self, CefProcessId target_process, cef_process_message_t *message)
        {
            send_process_message_delegate d;
            var p = self->_send_process_message;

            if (p == _p17)
            {
                d = _d17;
            }
            else
            {
                d = (send_process_message_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(send_process_message_delegate));
                if (_p17 == IntPtr.Zero)
                {
                    _d17 = d; _p17 = p;
                }
            }
            return(d(self, target_process, message));
        }
Exemple #9
0
 public unsafe extern int OnProcessMessageReceived(cef_browser_t *browser, cef_frame_t *frame, CefProcessId source_process, cef_process_message_t *message);
 /// <summary>
 /// Send a message to the specified |target_process|. Returns true if the
 /// message was sent successfully.
 /// </summary>
 public int SendProcessMessage(CefProcessId target_process, cef_process_message_t *message)
 {
     throw new NotImplementedException(); // TODO: CefBrowser.SendProcessMessage
 }
Exemple #11
0
        public static void send_process_message(cef_frame_t *self, CefProcessId target_process, cef_process_message_t *message)
        {
            send_process_message_delegate d;
            var p = self->_send_process_message;

            if (p == _p1d)
            {
                d = _d1d;
            }
            else
            {
                d = (send_process_message_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(send_process_message_delegate));
                if (_p1d == IntPtr.Zero)
                {
                    _d1d = d; _p1d = p;
                }
            }
            d(self, target_process, message);
        }
Exemple #12
0
 public CefProcessMessage(cef_process_message_t *instance)
     : base((cef_base_ref_counted_t *)instance)
 {
 }
Exemple #13
0
 static public CefProcessMessage FromOutVal(cef_process_message_t *ptr) => FromOutVal((IntPtr)ptr, (p2) => new CefProcessMessage(p2, false));
Exemple #14
0
 static public CefProcessMessage FromInArg(cef_process_message_t *ptr) => FromInArg((IntPtr)ptr, (p2) => new CefProcessMessage(p2));