Exemplo n.º 1
0
        public ChromiumWebBrowser AddNewBrowserTab(string url, bool focusNewTab = true, string refererUrl = null)
        {
            return((ChromiumWebBrowser)this.Invoke((Func <ChromiumWebBrowser>) delegate
            {
                // check if already exists
                foreach (FATabStripItem tab in TabPages.Items)
                {
                    WebBrowserTab tab2 = (WebBrowserTab)tab.Tag;
                    if (tab2 != null && (tab2.CurURL == url))
                    {
                        TabPages.SelectedItem = tab;
                        return tab2.Browser;
                    }
                }

                FATabStripItem tabStrip = new FATabStripItem();
                tabStrip.Title = "New Tab";
                TabPages.Items.Insert(TabPages.Items.Count - 1, tabStrip);
                newStrip = tabStrip;

                WebBrowserTab newTab = AddNewBrowser(newStrip, url);
                newTab.RefererURL = refererUrl;
                if (focusNewTab)
                {
                    timer1.Enabled = true;
                }
                return newTab.Browser;
            }));
        }
Exemplo n.º 2
0
 public WebBrowserTab GetTabByBrowser(IWebBrowser browser)
 {
     foreach (FATabStripItem tab2 in TabPages.Items)
     {
         WebBrowserTab tab = (WebBrowserTab)(tab2.Tag);
         if (tab != null && tab.Browser == browser)
         {
             return(tab);
         }
     }
     return(null);
 }
Exemplo n.º 3
0
        private WebBrowserTab AddNewBrowser(FATabStripItem tabStrip, String url)
        {
            if (url == "")
            {
                url = NewTabURL;
            }
            ChromiumWebBrowser browser = new ChromiumWebBrowser(url);

            // set config
            ConfigureBrowser(browser);

            // set layout
            browser.Dock = DockStyle.Fill;
            tabStrip.Controls.Add(browser);
            browser.BringToFront();

            // add events
            browser.StatusMessage       += Browser_StatusMessage;
            browser.LoadingStateChanged += Browser_LoadingStateChanged;
            browser.TitleChanged        += Browser_TitleChanged;
            browser.LoadError           += Browser_LoadError;
            browser.AddressChanged      += Browser_URLChanged;
            browser.DownloadHandler      = dHandler;
            browser.MenuHandler          = mHandler;
            browser.LifeSpanHandler      = lHandler;
            browser.KeyboardHandler      = kHandler;
            browser.RequestHandler       = rHandler;

            // new tab obj
            WebBrowserTab tab = new WebBrowserTab
            {
                IsOpen      = true,
                Browser     = browser,
                Tab         = tabStrip,
                OrigURL     = url,
                CurURL      = url,
                Title       = "New Tab",
                DateCreated = DateTime.Now
            };

            // save tab obj in tabstrip
            tabStrip.Tag = tab;

            if (url.StartsWith("WebBrowserDemo:"))
            {
                CefSharpSettings.LegacyJavascriptBindingEnabled = true;
                CefSharp.BindingOptions option = new CefSharp.BindingOptions();
                browser.RegisterAsyncJsObject("host", host, option);
            }
            return(tab);
        }