Exemple #1
0
        static public void invoke_init_from_string(cef_command_line_t *self, string command_line)
        {
            CefString cefstr = command_line;
            var       func   = Marshal.GetDelegateForFunctionPointer <EventCallbackHandler2>(self->init_from_string);

            func((IntPtr)self, cefstr);
        }
        public void Cont(string download_path = null, bool show_dialog = true)
        {
            var       func    = Marshal.GetDelegateForFunctionPointer <delegate_cont>(FixedPtr->cont);
            CefString cefpath = download_path ?? "";

            func(Ptr, cefpath, show_dialog ? 1 : 0);
        }
Exemple #3
0
        static public string invoke_get_command_line_string(cef_command_line_t *self)
        {
            GetObjectHandler func = Marshal.GetDelegateForFunctionPointer <GetObjectHandler>(self->get_command_line_string);
            CefString        str  = CefString.FromUserFree(func((IntPtr)self));

            return(str?.ToString());
        }
Exemple #4
0
        public string GetHeaderByName(string name)
        {
            var       func    = Marshal.GetDelegateForFunctionPointer <delegate_get_header_by_name>(FixedPtr->get_header_by_name);
            CefString cefname = name;

            return(CefString.FromUserFree(func(FixedPtr, cefname.FixedPtr))?.ToString());
        }
Exemple #5
0
        /// <summary>
        /// This method shall be called in webkit_initialized
        /// </summary>
        static public int CefRegisterExtension(string name, string code, CefV8Handler handler = null)
        {
            CefString strname = name;
            CefString strcode = code;

            return(cef_register_extension(strname, strcode, handler.AsIntPtr()));
        }
Exemple #6
0
        public void SendProcessMessage(cef_process_id_t target_pid, string name)
        {
            CefString cefname = name ?? throw new ArgumentNullException(nameof(name));
            //TODO:issue , cef_process_message_create , FromOutVal failed.. Check why,
            CefProcessMessage cefmsg = CefProcessMessage.FromInArg(cef_process_message_create(cefname));

            SendProcessMessage(target_pid, cefmsg);
        }
Exemple #7
0
        public void ExecuteJavaScript(string code, string url = null, int start_line = 0)
        {
            var       func    = Marshal.GetDelegateForFunctionPointer <delegate_execute_java_script>(FixedPtr->execute_java_script);
            CefString cefcode = code ?? throw new ArgumentNullException(nameof(code));
            CefString cefurl  = url;

            func(FixedPtr, cefcode, cefurl, start_line);
        }
Exemple #8
0
        public void SetHeaderByName(string name, string value, bool overWrite)
        {
            var       func     = Marshal.GetDelegateForFunctionPointer <delegate_set_header_by_name>(FixedPtr->set_header_by_name);
            CefString cefname  = name;
            CefString cefvalue = value;

            func(FixedPtr, cefname.FixedPtr, cefvalue.FixedPtr, overWrite ? 1 : 0);
        }
Exemple #9
0
        public void StartDownload(string url)        //TODO:NOT TESTED
        {
            if (url == null)
            {
                throw new ArgumentNullException(nameof(url));
            }
            var       func   = Marshal.GetDelegateForFunctionPointer <delegate_start_download>(FixedPtr->start_download);
            CefString cefstr = new CefString(url);

            func(FixedPtr, cefstr);
        }
Exemple #10
0
        static public CefBrowser CreateBrowserSync(CefWindowInfo wininfo, CefClient client, string url, CefBrowserSettings browser_settings, CefDictionaryValue extra_info = null, CefRequestContext requestContext = null)
        {
            CefString      cefurl   = url ?? throw new ArgumentNullException(nameof(url));
            cef_browser_t *pBrowser = ObjectInterop.cef_browser_host_create_browser_sync(wininfo, client, cefurl, browser_settings, extra_info, requestContext);

            if (pBrowser == null)
            {
                throw new Exception("Failed to create browser");
            }
            return(FromInArg(pBrowser));
        }
Exemple #11
0
        public void SendProcessMessage(cef_process_id_t target_pid, string name, params string[] args)
        {
            CefString cefname = name ?? throw new ArgumentNullException(nameof(name));
            //TODO:issue , cef_process_message_create , FromOutVal failed.. Check why,
            CefProcessMessage cefmsg = CefProcessMessage.FromInArg(cef_process_message_create(cefname));

            if (args != null)
            {
                var list = cefmsg.GetArgumentList();
                list.SetSize(args.Length);
                for (uint i = 0; i < args.Length; i++)
                {
                    list.SetString(i, args[i]);
                }
            }
            SendProcessMessage(target_pid, cefmsg);
        }
Exemple #12
0
        public CefV8Value Eval(string code)
        {
            if (_cache_eval == null)
            {
                _cache_eval = Marshal.GetDelegateForFunctionPointer <delegate_eval>(FixedPtr->eval);
            }
            CefString          strcode   = code ?? throw new ArgumentNullException(nameof(code));
            cef_v8value_t *    result    = null;
            cef_v8exception_t *exception = null;
            int            r             = _cache_eval(FixedPtr, strcode, null, 0, ref result, ref exception);
            CefV8Value     res           = CefV8Value.FromOutVal(result);
            CefV8Exception err           = CefV8Exception.FromOutVal(exception);

            Console.WriteLine("Eval result : " + r + ":" + (IntPtr)result + ":" + (IntPtr)exception);
            if (err != null)
            {
                throw new Exception("JSERROR:" + err.Message);
            }
            if (r == 0)
            {
                throw new Exception("JSFAILED");
            }
            return(res);
        }
Exemple #13
0
        public string GetStringValue()
        {
            var func = Marshal.GetDelegateForFunctionPointer <GetObjectHandler>(FixedPtr->get_string_value);

            return(CefString.FromUserFree(func(Ptr))?.ToString());
        }
Exemple #14
0
 public string GetName()
 {
     return(CefString.FromUserFree(Marshal.GetDelegateForFunctionPointer <GetObjectHandler>(FixedPtr->get_name)(Ptr))?.ToString());
 }
Exemple #15
0
        public void SetString(uint index, string str)
        {
            CefString cefstr = str;

            Marshal.GetDelegateForFunctionPointer <EventCallbackHandler3>(FixedPtr->set_string)(Ptr, (IntPtr)(long)index, cefstr);
        }
Exemple #16
0
 public string GetString(uint index)
 {
     return(CefString.FromUserFree(Marshal.GetDelegateForFunctionPointer <GetObjectHandler2>(FixedPtr->get_string)(Ptr, (IntPtr)(long)index))?.ToString());
 }