public Main() { InitializeComponent(); CefSharp.Settings settings = new Settings(); // settings.AutoDetectProxySettings = true; settings.CachePath = "cache"; settings.LogFile = "f7chromium.log"; settings.LogSeverity = LogSeverity.Warning; CEF.Initialize(settings); CefSharp.BrowserSettings bsettings = new BrowserSettings(); bsettings.WebSecurityDisabled = true; bsettings.ApplicationCacheDisabled = false; bsettings.DatabasesDisabled = false; bsettings.LocalStorageDisabled = false; bsettings.PageCacheDisabled = false; bsettings.FileAccessFromFileUrlsAllowed = true; bsettings.XssAuditorEnabled = false; bsettings.DeveloperToolsDisabled = false; bsettings.UniversalAccessFromFileUrlsAllowed = true; bsettings.JavaScriptDisabled = false; bsettings.LocalStorageDisabled = false; view = new CefSharp.WinForms.WebView("file:///./client/start.html", bsettings); bt.init(this); view.RegisterJsObject("bt", bt); events.init(this); view.RegisterJsObject("events", events); view.Dock = DockStyle.Fill; webPanelParent.Controls.Add(view, 0, 1); }
private static async void MainAsync(string cachePath, double zoomLevel) { var browserSettings = new BrowserSettings(); var requestContextSettings = new RequestContextSettings { CachePath = cachePath }; // RequestContext can be shared between browser instances and allows for custom settings // e.g. CachePath using(var requestContext = new RequestContext(requestContextSettings)) using (var browser = new ChromiumWebBrowser(TestUrl, browserSettings, requestContext)) { if (zoomLevel > 1) { browser.FrameLoadStart += (s, argsi) => { var b = (ChromiumWebBrowser)s; if (argsi.Frame.IsMain) { b.SetZoomLevel(zoomLevel); } }; } await LoadPageAsync(browser); // Wait for the screenshot to be taken. await browser.ScreenshotAsync().ContinueWith(DisplayBitmap); await LoadPageAsync(browser, "http://github.com"); // Wait for the screenshot to be taken. await browser.ScreenshotAsync().ContinueWith(DisplayBitmap); } }
private void STBHTML_Load(object sender, EventArgs e) { BrowserSettings settings = new BrowserSettings(); web_view = new WebView(this.m_Url, settings); web_view.Dock = DockStyle.Fill; this.Controls.Add(web_view); }
/// <summary> /// 公共设置 /// </summary> private void publicSet() { webBrowser = new ChromiumWebBrowser("about:blank"); #region 设置js与cefSharp互通 //CefSharp.CefSharpSettings.LegacyJavascriptBindingEnabled = true; //webBrowser.RegisterJsObject("googleBrower", this, new CefSharp.BindingOptions() { CamelCaseJavascriptNames = false }); webBrowser.RegisterJsObject("googleBrower", this, false); #endregion BrowserSettings bset = new BrowserSettings(); bset.Plugins = CefState.Enabled; //启用插件 bset.WebSecurity = CefState.Disabled; //禁用跨域限制 webBrowser.BrowserSettings = bset; webBrowser.DownloadHandler = new DownloadHandler(); webBrowser.KeyboardHandler = new KeyBoardHandler(); //MenuHandler.mainWindow = mainWindow; //webBrowser.MenuHandler = new MenuHandler(); //webBrowser.Dock = DockStyle.Fill; //webBrowser.Margin = new Padding(0, 0, 0, 0); //mainWindow.Controls.Add(webBrowser); }
protected virtual void Dispose(bool isdisposing) { // No longer reference event listeners: ConsoleMessage = null; FrameLoadStart = null; FrameLoadEnd = null; LoadError = null; LoadingStateChanged = null; Rendering = null; // No longer reference handlers: this.SetHandlersToNull(); if (isdisposing) { if (BrowserSettings != null) { BrowserSettings.Dispose(); BrowserSettings = null; } PresentationSource.RemoveSourceChangedHandler(this, PresentationSourceChangedHandler); // Release internal event listeners: Loaded -= OnLoaded; GotKeyboardFocus -= OnGotKeyboardFocus; LostKeyboardFocus -= OnLostKeyboardFocus; // Release internal event listeners for Drag Drop events: DragEnter -= OnDragEnter; DragOver -= OnDragOver; DragLeave -= OnDragLeave; Drop -= OnDrop; IsVisibleChanged -= OnIsVisibleChanged; if (tooltipTimer != null) { tooltipTimer.Tick -= OnTooltipTimerTick; } if (CleanupElement != null) { CleanupElement.Unloaded -= OnCleanupElementUnloaded; } foreach (var disposable in disposables) { disposable.Dispose(); } disposables.Clear(); UiThreadRunAsync(() => WebBrowser = null); } Cef.RemoveDisposable(this); RemoveSourceHook(); managedCefBrowserAdapter = null; }
private void InitializeChromium() { var settings = new CefSettings(); Cef.Initialize(settings); var address = $@"{Application.StartupPath}\HtmlResources\html\index.html"; _chromiumWebBrowser = new ChromiumWebBrowser(address); _chromiumWebBrowser.Dock = DockStyle.Fill; _chromiumWebBrowser.IsBrowserInitializedChanged += OnBrowserInitialized; _chromiumWebBrowser.FrameLoadEnd += OnFrameLoadEnd; _jsToSharp = new JsToSharp(_chromiumWebBrowser, this); _chromiumWebBrowser.JavascriptObjectRepository.Register("jsToSharp", _jsToSharp, true); var browserSettings = new BrowserSettings { FileAccessFromFileUrls = CefState.Enabled, UniversalAccessFromFileUrls = CefState.Enabled }; _chromiumWebBrowser.BrowserSettings = browserSettings; }
public void InitializeChromium() { CefSettings settings = new CefSettings(); // Note that if you get an error or a white screen, you may be doing something wrong ! // Try to load a local file that you're sure that exists and give the complete path instead to test // for example, replace page with a direct path instead : // String page = @"C:\Users\SDkCarlos\Desktop\afolder\index.html"; String page = string.Format(@"{0}\html-resources\html\index.html", Application.StartupPath); //String page = @"C:\Users\SDkCarlos\Desktop\artyom-HOMEPAGE\index.html"; if (!File.Exists(page)) { MessageBox.Show("Error The html file doesn't exists : " + page); } // Initialize cef with the provided settings Cef.Initialize(settings); // Create a browser component chromeBrowser = new ChromiumWebBrowser(page); //new ChromiumWebBrowser("http://ourcodeworld.com"); // Add it to the form and fill it to the form window. this.Controls.Add(chromeBrowser); chromeBrowser.Dock = DockStyle.Fill; // Allow the use of local resources in the browser BrowserSettings browserSettings = new BrowserSettings(); browserSettings.FileAccessFromFileUrls = CefState.Enabled; browserSettings.UniversalAccessFromFileUrls = CefState.Enabled; chromeBrowser.BrowserSettings = browserSettings; }
public void InitializeChromium() { Cef.EnableHighDPISupport(); string assemblyLocation = Assembly.GetExecutingAssembly().Location; string assemblyPath = Path.GetDirectoryName(assemblyLocation); string pathSubprocess = Path.Combine(assemblyPath, "CefSharp.BrowserSubprocess.exe"); CefSettings settings = new CefSettings(); settings.LogSeverity = LogSeverity.Verbose; settings.LogFile = "ceflog.txt"; settings.BrowserSubprocessPath = pathSubprocess; settings.CefCommandLineArgs.Add("disable-gpu", "1"); // Initialize cef with the provided settings Cef.Initialize(settings); // Create a browser component. // Change the below to wherever your webpack ui server is running. //chromeBrowser = new ChromiumWebBrowser(@"http://10.211.55.2:9090/"); //chromeBrowser = new ChromiumWebBrowser(@"http://*****:*****@"http://localhost:9090/"); request.Timeout = 100; request.Method = "HEAD"; try { using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) { // IF NORMAL PEOPLE chromeBrowser = new ChromiumWebBrowser(@"http://*****:*****@"http://10.211.55.2:9090/"); } //IF RELEASE // TODO this.Controls.Add(chromeBrowser); chromeBrowser.Dock = DockStyle.Fill; // Allow the use of local resources in the browser BrowserSettings browserSettings = new BrowserSettings(); browserSettings.FileAccessFromFileUrls = CefState.Enabled; browserSettings.UniversalAccessFromFileUrls = CefState.Enabled; Store = new Interop(chromeBrowser, this); chromeBrowser.RegisterAsyncJsObject("Interop", Store); }
/// <summary> /// Initializing the browser used for displaying the UI. /// Using a CefSharp Chromium browser. /// </summary> public void InitializeBrowser() { // Enable LegacyJavascriptBindings to allow us access to custom objects. CefSharpSettings.LegacyJavascriptBindingEnabled = true; // Create an initialize CefSettings. CefSettings loginBrowserSettings = new CefSettings(); Cef.Initialize(loginBrowserSettings); // Set the path to the correct html file. mainBrowser = new ChromiumWebBrowser(String.Format("file:///{0}/content/index.html", Environment.CurrentDirectory)); // Dock the Chromium browser to the form, and fill it. this.Controls.Add(mainBrowser); mainBrowser.Dock = DockStyle.Fill; // Enable various settings to allow access to custom objects. BrowserSettings browserSettings = new BrowserSettings(); browserSettings.FileAccessFromFileUrls = CefState.Enabled; browserSettings.UniversalAccessFromFileUrls = CefState.Enabled; browserSettings.Javascript = CefState.Enabled; // Assign the settings to the correct browser. mainBrowser.BrowserSettings = browserSettings; // Update the browser. mainBrowser.Update(); }
public BrowserTab(string url, ToolStripComboBox addressBar) { this.addressBar = addressBar; Browser = new ExtendedBrowser { Dock = DockStyle.Fill }; Browser.TitleChanged += Browser_TitleChanged; Browser.AddressChanged += Browser_AddressChanged; var lifespanHandler = new LifespanHandler(); Browser.LifeSpanHandler = lifespanHandler; lifespanHandler.OpenInNewTab += LifespanHandler_OpenInNewTab; Browser.HandleCreated += Browser_HandleCreated; Browser.MouseMove += Browser_MouseMove; Browser.OnLoadingStateChanged += Browser_OnLoadingStateChanged; BrowserSettings bs = new BrowserSettings(); bs.Javascript = RuntimeSettings.JsDisabled ? CefState.Disabled : CefState.Default; bs.ImageLoading = RuntimeSettings.ImagesDisabled ? CefState.Disabled : CefState.Default; bs.Plugins = RuntimeSettings.PluginsDisabled ? CefState.Disabled : CefState.Default; Browser.BrowserSettings = bs; Controls.Add(Browser); Browser.Load(url); }
private void InitializeFieldsAndCefIfRequired() { if (!initialized) { if (!Cef.IsInitialized && !Cef.Initialize()) { throw new InvalidOperationException("Cef::Initialize() failed"); } Cef.AddDisposable(this); if (ResourceHandlerFactory == null) { ResourceHandlerFactory = new DefaultResourceHandlerFactory(); } if (BrowserSettings == null) { BrowserSettings = new BrowserSettings(); } // To allow cross-origin request. // This prevents the error: no 'access-control-allow-origin' header is present on the requested resource for XHR requests. BrowserSettings.FileAccessFromFileUrls = CefState.Enabled; BrowserSettings.UniversalAccessFromFileUrls = CefState.Enabled; BrowserSettings.WebSecurity = CefState.Enabled; managedCefBrowserAdapter = new ManagedCefBrowserAdapter(this, false); initialized = true; } }
/// <summary> /// 初始化浏览器 /// </summary> public void InitBrowser(string url, EventHandler <FrameLoadEndEventArgs> loadEnd) { if (browser == null) { CefSettings cfs = new CefSettings(); Dictionary <string, string> formFields = new Dictionary <string, string>(); formFields["token"] = MyUserInfo.LoginToken; //获取签名 string signature = SignatureHelper.BuildSign(formFields, ApiConst.SecretKey); string param = string.Format("hottecexe:token={0}&signature={1};", MyUserInfo.LoginToken, signature); cfs.UserAgent = param + "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36"; Cef.Initialize(cfs, true, true); BrowserSettings settings = new BrowserSettings() { LocalStorage = CefState.Enabled, Javascript = CefState.Enabled, Plugins = CefState.Enabled, ImageLoading = CefState.Enabled, ImageShrinkStandaloneToFit = CefState.Enabled, WebGl = CefState.Enabled }; browser = new ChromiumWebBrowser(url); browser.BrowserSettings = settings; browser.RegisterJsObject("hotJs", new MyUserInfo(), false); browser.FrameLoadEnd += (s, e) => { loadEnd(s, e); }; browser.Dock = DockStyle.Fill; browser.LifeSpanHandler = new LifeSpanHandler(); browser.MenuHandler = new MenuHandler(); } else { browser.Load(url); } }
public void SetUp() { Instance = this; waitCreated = new ManualResetEvent(false); Settings settings = new Settings(); BrowserSettings browserSettings = new BrowserSettings(); if(!CEF.Initialize(settings, browserSettings)) { Assert.Fail("Couldn't initialise CEF."); return; } // CEF.RegisterScheme("test", new TestSchemeHandlerFactory()); CEF.RegisterJsObject("bound", new BoundObject()); // Application.EnableVisualStyles(); // Application.SetCompatibleTextRenderingDefault(false); var uiThread = new Thread(UIThread); uiThread.SetApartmentState(ApartmentState.STA); uiThread.Start(); waitCreated.WaitOne(); }
public BrowserForm() { InitializeComponent(); Text = "CefSharp"; WindowState = FormWindowState.Maximized; String page = string.Format(@"{0}\dist\index.html", Application.StartupPath); browser = new ChromiumWebBrowser(page) { Dock = DockStyle.Fill, }; // Allow the use of local resources in the browser BrowserSettings browserSettings = new BrowserSettings(); browserSettings.FileAccessFromFileUrls = CefState.Enabled; browserSettings.UniversalAccessFromFileUrls = CefState.Enabled; browser.BrowserSettings = browserSettings; toolStripContainer.ContentPanel.Controls.Add(browser); browser.TitleChanged += OnBrowserTitleChanged; var bitness = Environment.Is64BitProcess ? "x64" : "x86"; var version = String.Format("Chromium: {0}, CEF: {1}, CefSharp: {2}, Environment: {3}", Cef.ChromiumVersion, Cef.CefVersion, Cef.CefSharpVersion, bitness); }
void CefWrapper_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e) { EmployeeId = (int)e.NewValue; if (_isCefInitialized) { var urlToNavigate = "http://*****:*****@"CEF is not initialized. (This is ok in design-mode! If this happens at runtime, you need to call MapWrapper.InitializeChromiumEmbedded() before instantiating the MapWrapper-control.)" }; } }
private void Dispose(bool disposing) { ClearHandlers(); ClearEventListeners(); Cef.RemoveDisposable(this); if (!disposing) { return; } if (BrowserSettings != null) { BrowserSettings.Dispose(); BrowserSettings = null; } if (managedCefBrowserAdapter != null) { if (!managedCefBrowserAdapter.IsDisposed) { managedCefBrowserAdapter.Dispose(); } managedCefBrowserAdapter = null; } }
public void InitializeChromium() { // Note that if you get an error or a white screen, you may be doing something wrong ! // Try to load a local file that you're sure that exists and give the complete path instead to test // for example, replace page with a direct path instead : // String page = @"C:\Users\SDkCarlos\Desktop\afolder\index.html"; //String page = @"C:\Users\SDkCarlos\Desktop\artyom-HOMEPAGE\index.html"; // Initialize cef with the provided settings CefSettings settings = new CefSettings(); // Initialize cef with a command line argument // In this case the enable-media-stream flag that allows you to access the camera and the microphone settings.CefCommandLineArgs.Add("enable-media-stream", "1"); settings.CefCommandLineArgs.Add("allow-running-insecure-content", "1"); settings.CefCommandLineArgs.Add("use-fake-ui-for-media-stream", "1"); settings.CefCommandLineArgs.Add("enable-usermedia-screen-capture", "1"); Cef.Initialize(settings); // Create a browser component q chromeBrowser = new ChromiumWebBrowser("https://www.google.com"); // Add it to the form and fill it to the form window. this.Controls.Add(chromeBrowser); chromeBrowser.Dock = DockStyle.Fill; // Allow the use of local resources in the browser BrowserSettings browserSettings = new BrowserSettings(); browserSettings.FileAccessFromFileUrls = CefState.Enabled; browserSettings.UniversalAccessFromFileUrls = CefState.Enabled; chromeBrowser.BrowserSettings = browserSettings; }
/// <summary> /// Create a new OffScreen Chromium Browser /// </summary> /// <param name="address">Initial address (url) to load</param> /// <param name="browserSettings">The browser settings to use. If null, the default settings are used.</param> /// <param name="requestContext">See <see cref="RequestContext" /> for more details. Defaults to null</param> /// <param name="automaticallyCreateBrowser">automatically create the underlying Browser</param> /// <param name="blendPopup">Should the popup be blended in the background in the rendering</param> /// <exception cref="System.InvalidOperationException">Cef::Initialize() failed</exception> public ChromiumWebBrowser(string address = "", BrowserSettings browserSettings = null, RequestContext requestContext = null, bool automaticallyCreateBrowser = true) { if (!Cef.IsInitialized && !Cef.Initialize()) { throw new InvalidOperationException("Cef::Initialize() failed"); } BitmapFactory = new BitmapFactory(BitmapLock); ResourceHandlerFactory = new DefaultResourceHandlerFactory(); BrowserSettings = browserSettings ?? new BrowserSettings(); RequestContext = requestContext; Cef.AddDisposable(this); Address = address; managedCefBrowserAdapter = new ManagedCefBrowserAdapter(this, true); if (automaticallyCreateBrowser) { CreateBrowser(IntPtr.Zero); } popupPosition = new Point(); popupSize = new Size(); }
private void btnAddPlaylist_Click(object sender, EventArgs e) { string path = FormMain.defaultPath; string url = textBoxUrl.Text; playlistService = new PlaylistService(); chromeDriver = new ChromeDriver(BrowserSettings.ChromeDriverService, BrowserSettings.ChromeOptions(null)); Playlist playlist = new Playlist(path, url); playlist = playlistService.GetUpdatedPlaylist(chromeDriver, playlist); string result = ""; string[] splited = playlist.PathFolder.Split(new[] { "\\" }, StringSplitOptions.None); splited[splited.Length - 1] = "Spotify-" + splited.LastOrDefault(); result = string.Join("\\", splited); //foreach(var split in sp) DirectoryInfo di = Directory.CreateDirectory(result); using (StreamWriter sw = File.CreateText(result + "\\url.txt")) { sw.WriteLine(playlist.Url); } chromeDriver.Quit(); this.Close(); }
private void FrmMain_Load(object sender, EventArgs e) { _chromiumWebBrowser?.Dispose(); _cookies = new CookieManager( Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Resources", "Cef", "cookies"), true, null); var browserSettings = new BrowserSettings { WindowlessFrameRate = 60, Plugins = CefState.Enabled, WebGl = CefState.Enabled, }; _chromiumWebBrowser = new ChromiumWebBrowser("https://darkorbit.com", browserSettings, new RequestContext(new RequestContextHandler(_cookies))) { Size = pbBrowser.Size, RequestHandler = new RequestHandler(), MenuHandler = new ContextMenuHandler() }; _renderHandler = new RenderHandler(_chromiumWebBrowser); _renderHandler.BrowserPaint += RenderHandlerOnBrowserPaint; _chromiumWebBrowser.RenderHandler = _renderHandler; _chromiumWebBrowser.AddressChanged += ChromiumWebBrowserOnAddressChanged; _pipeThread = new Thread(CreatePipeConnection); _pipeThread.Start(); }
private void InitializeFieldsAndCefIfRequired() { if (!initialized) { if (!Cef.IsInitialized && !Cef.Initialize(new CefSettings())) { throw new InvalidOperationException("Cef::Initialize() failed"); } Cef.AddDisposable(this); if (FocusHandler == null) { FocusHandler = new DefaultFocusHandler(); } if (ResourceHandlerFactory == null) { ResourceHandlerFactory = new DefaultResourceHandlerFactory(); } if (BrowserSettings == null) { BrowserSettings = new BrowserSettings(); } managedCefBrowserAdapter = new ManagedCefBrowserAdapter(this, false); initialized = true; } }
public void StartOffscreenRender(string url) { #if WITHCEF var settings = new CefSharp.OffScreen.CefSettings() { //By default CefSharp will use an in-memory cache, you need to specify a Cache Folder to persist data CachePath = Path.Combine( Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "CefSharp\\Cache"), }; // play with surfaces settings.SetOffScreenRenderingBestPerformanceArgs(); //Perform dependency check to make sure all relevant resources are in our output directory. // Cef.Initialize(settings, performDependencyCheck: true, browserProcessHandler: null); var rqs = new RequestContextSettings(); rqs.CachePath = Path.Combine( Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "CefSharp\\Cache"); var rq = new RequestContext(rqs, null); var bs = new BrowserSettings(); bs.BackgroundColor = 0xff000000; this.theOffscreenBrowser = new CefSharp.OffScreen.ChromiumWebBrowser(url, bs, rq); this.theOffscreenBrowser.Size = new System.Drawing.Size(400, 800); this.theOffscreenBrowser.LoadingStateChanged += TheBrowser_LoadingStateChanged; this.theOffscreenBrowser.FrameLoadEnd += TheOffscreenBrowser_FrameLoadEnd;
private void CreateBrowser() { browserCreated = true; if (((IWebBrowserInternal)this).HasParent == false) { if (IsBrowserInitialized == false || browser == null) { var windowInfo = new WindowInfo(); windowInfo.SetAsChild(Handle); managedCefBrowserAdapter.CreateBrowser(windowInfo, browserSettings, (RequestContext)RequestContext, Address); if (browserSettings != null) { browserSettings.Dispose(); browserSettings = null; } } else { //If the browser already exists we'll reparent it to the new Handle var browserHandle = browser.GetHost().GetWindowHandle(); NativeMethodWrapper.SetWindowParent(browserHandle, Handle); } } }
private void FrmMain_Load(object sender, EventArgs e) { _chromiumWebBrowser?.Dispose(); _cookies = new CookieManager( Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Resources", "Cef", "cookies"), true, null); var browserSettings = new BrowserSettings { WindowlessFrameRate = 60, Plugins = CefState.Enabled, WebGl = CefState.Enabled }; _chromiumWebBrowser = new ChromiumWebBrowser("https://darkorbit.com") { BrowserSettings = browserSettings, RequestContext = new RequestContext(new RequestContextHandler(_cookies)), RequestHandler = new RequestHandler(), MenuHandler = new ContextMenuHandler(), LifeSpanHandler = new LifeSpanHandler() }; _chromiumWebBrowser.AddressChanged += ChromiumWebBrowserOnAddressChanged; _chromiumWebBrowser.IsBrowserInitializedChanged += ChromiumWebBrowserOnIsBrowserInitializedChanged; _chromiumWebBrowser.HandleCreated += ChromiumWebBrowserOnHandleCreated; Controls.Add(_chromiumWebBrowser); SetDoubleBuffering(_chromiumWebBrowser, true); _pipeThread = new Thread(CreateTcpServer); _pipeThread.Start(); }
public MainForm() { ClientSize = new Size(640, 480); ShowIcon = false; FilePath = ""; fileType = FileType.XML; Menu = new MainMenu(); CreateMenu(); BrowserSettings browserSettings = new BrowserSettings() { HistoryDisabled = true, FixedFontFamily = FontFamily.GenericMonospace.Name, DefaultFontSize = 12, DefaultFixedFontSize = 8 }; webView = new WebView("http://internal/res/index.html", browserSettings) { Dock = DockStyle.Fill, RequestHandler = new ManifestResourceHandler() { culture = Thread.CurrentThread.CurrentCulture }, LifeSpanHandler = new ExternalLifeSpanHandler(), JsDialogHandler = new WebViewDialogHandler(this) }; webView.PropertyChanged += WebViewTitleChanged; this.Controls.Add(webView); CEF.RegisterJsObject("win", ctrl = new FormControlObject(this)); ctrl.OnDataArrive += OnDataArrive; }
/// <summary> /// Create a new OffScreen Chromium Browser. If you use <see cref="CefSharpSettings.LegacyJavascriptBindingEnabled"/> = true then you must /// set <paramref name="automaticallyCreateBrowser"/> to false and call <see cref="CreateBrowser"/> after the objects are registered. /// </summary> /// <param name="address">Initial address (url) to load</param> /// <param name="browserSettings">The browser settings to use. If null, the default settings are used.</param> /// <param name="requestContext">See <see cref="RequestContext" /> for more details. Defaults to null</param> /// <param name="automaticallyCreateBrowser">automatically create the underlying Browser</param> /// <exception cref="System.InvalidOperationException">Cef::Initialize() failed</exception> public ChromiumWebBrowser(string address = "", BrowserSettings browserSettings = null, IRequestContext requestContext = null, bool automaticallyCreateBrowser = true) { if (!Cef.IsInitialized) { var settings = new CefSettings(); if (!Cef.Initialize(settings)) { throw new InvalidOperationException("Cef::Initialize() failed"); } } RequestContext = requestContext; Cef.AddDisposable(this); Address = address; managedCefBrowserAdapter = new ManagedCefBrowserAdapter(this, true); if (automaticallyCreateBrowser) { CreateBrowser(null, browserSettings); } RenderHandler = new DefaultRenderHandler(this); }
public MainWindow() { InitializeComponent(); this.DataContext = new MainViewModel(new FileDialogService(), Viewport, RotatorX, RotatorY, RotatorZ, ScaleXYZ, config); FracktoryWindow.Loaded += new RoutedEventHandler(win_Loaded); FracktoryWindow.SourceInitialized += new EventHandler(win_SourceInitialized); CefSharp.Settings settings = new CefSharp.Settings(); CefSharp.BrowserSettings browserSettings = new BrowserSettings(); browserSettings.FileAccessFromFileUrlsAllowed = true; browserSettings.UniversalAccessFromFileUrlsAllowed = true; browserSettings.TextAreaResizeDisabled = true; settings.PackLoadingDisabled = true; if (CEF.Initialize(settings)) { CefSharp.Wpf.WebView web_view = new CefSharp.Wpf.WebView(AssemblyDirectory + @"/gCodeViewer/index.html", browserSettings); grid1.Children.Add(web_view); //730 x 460 // web_view.Address = "file:///E:/Fracktal/gCodeViewer-master2/index.html"; } //Uri uri = new Uri(@"pack://application:,,,/gCodeViewer/index.html"); //Stream source = Application.GetContentStream(uri).Stream; //wbMain.NavigateToStream(source); }
private void InitializeChrome() { BrowserSettings set = new BrowserSettings(); var cefPath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"Sdk\Cef"); CefSettings settings = new CefSettings(); settings.LocalesDirPath = System.IO.Path.Combine(cefPath, "locales"); settings.Locale = "ru"; settings.UserAgent = _mainSetting.UserAgent; settings.CefCommandLineArgs.Add("disable-gpu", "1"); settings.CachePath = System.IO.Path.Combine(cefPath, "cache"); settings.LogFile = System.IO.Path.Combine(cefPath, "Log.txt"); settings.LogSeverity = CefSharp.LogSeverity.Error; if (_mainSetting.IsProxy) { settings.CefCommandLineArgs.Add("proxy-server", _mainSetting.Proxy); } if (!Cef.IsInitialized) { Cef.Initialize(settings); } }
protected virtual void Dispose(bool isdisposing) { PresentationSource.RemoveSourceChangedHandler(this, PresentationSourceChangedHandler); BrowserSettings.Dispose(); BrowserSettings = null; ResourceHandler = null; Loaded -= OnLoaded; GotKeyboardFocus -= OnGotKeyboardFocus; LostKeyboardFocus -= OnLostKeyboardFocus; IsVisibleChanged -= OnIsVisibleChanged; Cef.RemoveDisposable(this); foreach (var disposable in disposables) { disposable.Dispose(); } disposables.Clear(); UiThreadRunAsync(() => WebBrowser = null); managedCefBrowserAdapter = null; ConsoleMessage = null; FrameLoadStart = null; FrameLoadEnd = null; LoadError = null; }
private void LoadApp() { string terrariaPath = AppDomain.CurrentDomain.SetupInformation.ApplicationBase; var settings = new CefSettings { BrowserSubprocessPath = Path.Combine(terrariaPath, Environment.Is64BitProcess ? "x64" : "x86", "CefSharp.BrowserSubprocess.exe"), RootCachePath = Path.Combine(terrariaPath, "tChromiumCache"), CachePath = Path.Combine(terrariaPath, "tChromiumCache"), WindowlessRenderingEnabled = true }; settings.EnableAudio(); Cef.Initialize(settings, false, browserProcessHandler: null); var browserSettings = new BrowserSettings { BackgroundColor = Cef.ColorSetARGB(255, 255, 255, 255), WindowlessFrameRate = 60 }; browser = new Browser(browserSettings) { LifeSpanHandler = new LifeSpanHandler() }; browser.BrowserInitialized += Browser_BrowserInitialized; browser.LoadingStateChanged += Browser_LoadingStateChanged; browser.Paint += Browser_Paint; }
public BrowserContentControl(BrowserSettings settings, RibbonTabItem tabPage) { InitializeComponent(); BrowserSettings = settings; TabPage = tabPage; Dock = DockStyle.Fill; }
/// <summary> /// Create a new OffScreen Chromium Browser. If you use <see cref="CefSharpSettings.LegacyJavascriptBindingEnabled"/> = true then you must /// set <paramref name="automaticallyCreateBrowser"/> to false and call <see cref="CreateBrowser"/> after the objects are registered. /// </summary> /// <param name="address">Initial address (url) to load</param> /// <param name="browserSettings">The browser settings to use. If null, the default settings are used.</param> /// <param name="requestContext">See <see cref="RequestContext" /> for more details. Defaults to null</param> /// <param name="automaticallyCreateBrowser">automatically create the underlying Browser</param> /// <exception cref="System.InvalidOperationException">Cef::Initialize() failed</exception> public ChromiumWebBrowser(string address = "", BrowserSettings browserSettings = null, RequestContext requestContext = null, bool automaticallyCreateBrowser = true) { if (!Cef.IsInitialized) { var settings = new CefSettings(); settings.WindowlessRenderingEnabled = true; if (!Cef.Initialize(settings)) { throw new InvalidOperationException("Cef::Initialize() failed"); } } ResourceHandlerFactory = new DefaultResourceHandlerFactory(); BrowserSettings = browserSettings ?? new BrowserSettings(); RequestContext = requestContext; Cef.AddDisposable(this); Address = address; managedCefBrowserAdapter = new ManagedCefBrowserAdapter(this, true); if (automaticallyCreateBrowser) { CreateBrowser(IntPtr.Zero); } RenderHandler = new DefaultRenderHandler(this); }
/// <summary> /// Create a new OffScreen Chromium Browser /// </summary> /// <param name="address">Initial address (url) to load</param> /// <param name="browserSettings">The browser settings to use. If null, the default settings are used.</param> /// <param name="requestContext">See <see cref="RequestContext" /> for more details. Defaults to null</param> /// <param name="automaticallyCreateBrowser">automatically create the underlying Browser</param> /// <exception cref="System.InvalidOperationException">Cef::Initialize() failed</exception> public ChromiumWebBrowser(string address = "", BrowserSettings browserSettings = null, RequestContext requestContext = null, bool automaticallyCreateBrowser = true) { if (!Cef.IsInitialized && !Cef.Initialize()) { throw new InvalidOperationException("Cef::Initialize() failed"); } BitmapFactory = new BitmapFactory(BitmapLock); ResourceHandlerFactory = new DefaultResourceHandlerFactory(); BrowserSettings = browserSettings ?? new BrowserSettings(); RequestContext = requestContext; Cef.AddDisposable(this); Address = address; managedCefBrowserAdapter = new ManagedCefBrowserAdapter(this, true); if (automaticallyCreateBrowser) { CreateBrowser(IntPtr.Zero); } popupPosition = new Point(); popupSize = new Size(); }
private void ClientContainer_Load(object sender, EventArgs e) { Cef.Initialize(new CefSettings() { Locale = "es-AR" }); string start = string.Format("{0}\\App\\dist\\index.html", Application.StartupPath); if (!File.Exists(start)) { MessageBox.Show("Error The html file doesn't exists : " + start); } browser = new ChromiumWebBrowser(start); helper = new CefHelper(browser); browser.RegisterJsObject("CefHelper", helper); browser.RegisterJsObject("PrintHelper", new PrintHelper(Application.StartupPath + "\\PrintConfig.json", CreatePrintModes())); browser.RegisterJsObject("ClientConfig", new ClientConfig { Host = ConfigurationManager.AppSettings["ApiHost"] }); this.Controls.Add(browser); browser.Dock = DockStyle.Fill; //browser.IsBrowserInitializedChanged += ShowDevTools; // Allow the use of local resources in the browser BrowserSettings browserSettings = new BrowserSettings(); browserSettings.FileAccessFromFileUrls = CefState.Enabled; browserSettings.UniversalAccessFromFileUrls = CefState.Enabled; browser.BrowserSettings = browserSettings; browser.Focus(); }
public CrBrowser(MainForm form, string address) { this.form = form; // 初始化浏览器 browser = new ChromiumWebBrowser(address); // BrowserSettings 必须在 Controls.Add 之前 BrowserSettings browserSettings = new BrowserSettings { // FileAccessFromFileUrls 必须 Enabled // 不然 AJAX 请求 file:// 会显示 // Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https. FileAccessFromFileUrls = CefState.Enabled, UniversalAccessFromFileUrls = CefState.Enabled, DefaultEncoding = "UTF-8", BackgroundColor = (uint)ColorTranslator.FromHtml("#21252b").ToArgb() }; browserSettings.WebSecurity = CefState.Disabled; browser.BrowserSettings = browserSettings; browser.MenuHandler = new MenuHandler(this); browser.LifeSpanHandler = new LifeSpanHandler(); browser.LoadHandler = new LoadHandler(); browser.DragHandler = new DragDropHandler(); ((DragDropHandler)browser.DragHandler).Enable = false; browser.FrameLoadEnd += new EventHandler <FrameLoadEndEventArgs>(Browser_onFrameLoadEnd); browser.IsBrowserInitializedChanged += new EventHandler <IsBrowserInitializedChangedEventArgs>(Browser_onIsBrowserInitializedChanged); }
public TabView(MainWindow mw, string url) { InitializeComponent(); //Assignments mainWindow = mw; LastWebsite = ""; WebView.LifeSpanHandler = this; splitChar = (char)42; WebView.DownloadHandler = this; WebView.DisplayHandler = this; BrowserSettings s1 = new BrowserSettings(); s1.LocalStorage = CefState.Enabled; s1.Databases = CefState.Enabled; s1.ApplicationCache = CefState.Enabled; s1.WindowlessFrameRate = 60; WebView.BrowserSettings = s1; refreshing = false; allItems1 = new List <string>(); //Events WebView.FrameLoadEnd += WebView_FrameLoadEnd; WebView.TitleChanged += WebView_TitleChanged; Loaded += TabView_Loaded; WebView.IsBrowserInitializedChanged += WebView_IsBrowserInitializedChanged; WebView.FrameLoadStart += WebView_FrameLoadStart; HideSuggestions(); urlToLoad = url; }
/// <summary> /// Create the underlying browser. The instance address, browser settings and request context will be used. /// </summary> /// <param name="windowInfo">Window information used when creating the browser</param> /// <param name="browserSettings">Browser initialization settings</param> /// <exception cref="System.Exception">An instance of the underlying offscreen browser has already been created, this method can only be called once.</exception> public void CreateBrowser(IWindowInfo windowInfo = null, BrowserSettings browserSettings = null) { if (browserCreated) { throw new Exception("An instance of the underlying offscreen browser has already been created, this method can only be called once."); } browserCreated = true; if (browserSettings == null) { browserSettings = new BrowserSettings(frameworkCreated: true); } if (windowInfo == null) { windowInfo = new WindowInfo(); windowInfo.SetAsWindowless(IntPtr.Zero); } managedCefBrowserAdapter.CreateBrowser(windowInfo, browserSettings, (RequestContext)RequestContext, Address); //Dispose of BrowserSettings if we created it, if user created then they're responsible if (browserSettings.FrameworkCreated) { browserSettings.Dispose(); } browserSettings = null; }
/// <summary> /// Create the underlying browser. The instance address, browser settings and request context will be used. /// </summary> /// <param name="windowInfo">Window information used when creating the browser</param> /// <param name="browserSettings">Browser initialization settings</param> /// <exception cref="System.Exception">An instance of the underlying offscreen browser has already been created, this method can only be called once.</exception> public void CreateBrowser(IWindowInfo windowInfo = null, BrowserSettings browserSettings = null) { if (browserCreated) { throw new Exception("An instance of the underlying offscreen browser has already been created, this method can only be called once."); } browserCreated = true; if (browserSettings == null) { browserSettings = new BrowserSettings(); } else if (browserSettings.IsDisposed) { throw new ObjectDisposedException("browserSettings", "The BrowserSettings reference you have passed has already been disposed. You cannot reuse the BrowserSettings class"); } if (windowInfo == null) { windowInfo = new WindowInfo(); windowInfo.SetAsWindowless(IntPtr.Zero); } //Dispose of browser settings after we've created the browser using (browserSettings) { managedCefBrowserAdapter.CreateBrowser(windowInfo, browserSettings, (RequestContext)RequestContext, Address); } }
private void IPAD_Load(object sender, EventArgs e) { BrowserSettings settings = new BrowserSettings(); web_view = new WebView(this.m_Url, settings); web_view.Dock = DockStyle.Fill; //web_view.ShowDevTools(); this.Controls.Add(web_view); //this.geckoWebBrowser1.Navigate(this.m_Url); //this.geckoWebBrowser1.GetMarkupDocumentViewer().SetFullZoomAttribute(0.5f); }
public static BrowserSettings GetStandardBrowserSettings() { var browserSettings = new BrowserSettings { FileAccessFromFileUrlsAllowed = true, // cross domain http://stackoverflow.com/a/18013586/121466 UniversalAccessFromFileUrlsAllowed = true, // cross domain http://stackoverflow.com/a/18013586/121466 WebSecurityDisabled = false, //false is default TextAreaResizeDisabled = true, }; return browserSettings; }
public Form1() { InitializeComponent(); BrowserSettings bs = new BrowserSettings(); bs.WebGlDisabled = true; bs.PluginsDisabled = true; web_view = new WebView("http://127.0.0.1:8934/blink_1/", bs); web_view.Dock = DockStyle.Fill; web_view.RequestHandler = this; this.Controls.Add(web_view); }
private void Form1_Load(object sender, EventArgs e) { BrowserSettings now = new BrowserSettings(); now.PageCacheDisabled = false; now.LocalStorageDisabled = false; now.DragDropDisabled = false; now.JavaScriptDisabled = false; webView = new WebView("http://127.0.0.1:5000", now); //webView.PropertyChanged += new PropertyChangedEventHandler(webView_PropertyChanged); webView.Dock = DockStyle.Fill; this.Controls.Add(webView); }
private static async void MainAsync(string cachePath, double zoomLevel) { var browserSettings = new BrowserSettings(); //Reduce rendering speed to one frame per second so it's easier to take screen shots browserSettings.WindowlessFrameRate = 1; var requestContextSettings = new RequestContextSettings { CachePath = cachePath }; // RequestContext can be shared between browser instances and allows for custom settings // e.g. CachePath using(var requestContext = new RequestContext(requestContextSettings)) using (var browser = new ChromiumWebBrowser(TestUrl, browserSettings, requestContext)) { if (zoomLevel > 1) { browser.FrameLoadStart += (s, argsi) => { var b = (ChromiumWebBrowser)s; if (argsi.Frame.IsMain) { b.SetZoomLevel(zoomLevel); } }; } await LoadPageAsync(browser); var preferences = requestContext.GetAllPreferences(true); // For Google.com pre-pupulate the search text box await browser.EvaluateScriptAsync("document.getElementById('lst-ib').value = 'CefSharp Was Here!'"); // Wait for the screenshot to be taken, // if one exists ignore it, wait for a new one to make sure we have the most up to date await browser.ScreenshotAsync(true).ContinueWith(DisplayBitmap); await LoadPageAsync(browser, "http://github.com"); //Gets a wrapper around the underlying CefBrowser instance var cefBrowser = browser.GetBrowser(); // Gets a warpper around the CefBrowserHost instance // You can perform a lot of low level browser operations using this interface var cefHost = cefBrowser.GetHost(); //You can call Invalidate to redraw/refresh the image cefHost.Invalidate(PaintElementType.View); // Wait for the screenshot to be taken. await browser.ScreenshotAsync(true).ContinueWith(DisplayBitmap); } }
private void InitializeChrome() { if ((Properties.Settings.Default.firstUse == true) || (Properties.Settings.Default.culture == "") || (Properties.Settings.Default.voicename == "")) { Chrome.Load(@"C:\Git Repos\Synthesizer.net\Synthesizer.net\resources\configurator.html"); } this.Controls.Add(Chrome); this.WindowState = FormWindowState.Maximized; BrowserSettings browserSettings = new BrowserSettings(); browserSettings.FileAccessFromFileUrlsAllowed = true; browserSettings.UniversalAccessFromFileUrlsAllowed = true; Chrome.BrowserSettings = browserSettings; }
/// <summary> /// Create a new OffScreen Chromium Browser /// </summary> /// <param name="address">Initial address (url) to load</param> /// <param name="browserSettings">The browser settings to use. If null, the default settings are used.</param> public ChromiumWebBrowser(string address, BrowserSettings browserSettings = null) { if (!Cef.IsInitialized && !Cef.Initialize()) { throw new InvalidOperationException("Cef::Initialize() failed"); } ResourceHandler = new DefaultResourceHandler(); Cef.AddDisposable(this); Address = address; managedCefBrowserAdapter = new ManagedCefBrowserAdapter(this, true); managedCefBrowserAdapter.CreateOffscreenBrowser(IntPtr.Zero, browserSettings ?? new BrowserSettings(), address); }
bool mLoadFired; // Form was shown once public Form1() { InitializeComponent(); BrowserSettings bs = new BrowserSettings(); bs.WebGlDisabled = true; bs.PluginsDisabled = true; web_view = new WebView("http://127.0.0.1:8934/blink_1/", bs); web_view.Dock = DockStyle.Fill; web_view.RequestHandler = this; this.Controls.Add(web_view); mAllowVisible = !Blink1Server.startMinimized; stripMenuStartMinimized.Checked = !mAllowVisible; }
public Form1() { InitializeComponent(); BrowserSettings bs = new BrowserSettings(); Console.WriteLine("BrowserSettings: " + bs); bs.WebGlDisabled = true; bs.PluginsDisabled = true; //web_view = new WebView("http://stackoverflow.com", bs); web_view = new WebView("http://127.0.0.1:8934/blink_1/", bs); web_view.Dock = DockStyle.Fill; web_view.RequestHandler = this; this.Controls.Add(web_view); //containerControl1.Controls.Add(web_view); }
private void CefStartup() { CefSettings _settings = new CefSettings { PackLoadingDisabled = true }; Cef.Initialize(_settings); BrowserSettings settings = new BrowserSettings { FileAccessFromFileUrlsAllowed = true, UniversalAccessFromFileUrlsAllowed = true, WebSecurityDisabled = true }; b.BrowserSettings = settings; }
public override void SetBrowserSettings(BrowserSettings settings) { if (!init) Init(); var config = new FirefoxConfigReader(); using (var file = new FirefoxConfigFile()) { file.SetConfigFileName(profileName); var reader = file.GetConfigFileReader(); if (reader == null) return; config.LoadConfig(reader); reader.Dispose(); config.SetHomePage(settings.HomePage); config.SetProxySettings(settings.Proxy); config.SaveConfig(file.GetConfigFileWriter()); } }
static void Main(string[] args) { Settings settings = new Settings(); BrowserSettings browserSettings = new BrowserSettings(); if(!CEF.Initialize(settings, browserSettings)) { Console.WriteLine("Couldn't initialise CEF"); return; } CEF.RegisterScheme("test", new TestSchemeHandlerFactory()); CEF.RegisterJsObject("bound", new BoundObject()); Browser browser = new Browser(); Application.Run(browser); }
/// <summary> /// Initializes a new instance of the <see cref="ChromiumWebBrowser"/> class. /// </summary> /// <param name="address">The address.</param> /// <exception cref="System.InvalidOperationException">Cef::Initialize() failed</exception> public ChromiumWebBrowser(string address) { if (!Cef.IsInitialized && !Cef.Initialize()) { throw new InvalidOperationException("Cef::Initialize() failed"); } Cef.AddDisposable(this); Address = address; Dock = DockStyle.Fill; FocusHandler = new DefaultFocusHandler(this); ResourceHandlerFactory = new DefaultResourceHandlerFactory(); BrowserSettings = new BrowserSettings(); managedCefBrowserAdapter = new ManagedCefBrowserAdapter(this, false); }
public AuthorizationView(IRequestHandler requestHandler) { using (var settings = new Settings{ PackLoadingDisabled = true}) if (!CEF.Initialize(settings)) return; InitializeComponent(); BrowserSettings bs = new BrowserSettings { DeveloperToolsDisabled = true, FullscreenEnabled = false, LocalStorageDisabled = true }; webView = new WebView(Constants.AuthorizationURL, bs) { Dock = DockStyle.Fill }; toolStripContainer1.ContentPanel.Controls.Add(webView); webView.RequestHandler = requestHandler; }
public WebViewContentControl() { string data; using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("MetroWebbrowser.Resources.theme.css")) using (var reader = new StreamReader(stream)) { data = reader.ReadToEnd(); } data = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(data)); var bs = new BrowserSettings { UserStyleSheetEnabled = true, UserStyleSheetLocation = @"data:text/css;charset=utf-8;base64," + data }; internal_web_view = new WebView("http://www.google.com", bs); internal_web_view.PropertyChanged += WebViewPropertyChanged; Content = internal_web_view; }
public MainWindow() { InitializeComponent(); CEF.Initialize(new Settings { CachePath = @".\cachepath" }); var browserSettings = new BrowserSettings { UniversalAccessFromFileUrlsAllowed = true }; var urlToNavigate = AppDomain.CurrentDomain.BaseDirectory + @"client\index.html"; webView = new WebView(urlToNavigate, browserSettings); webView.LoadCompleted += webView_LoadCompleted; webView.RegisterJsObject("cefCallback", new CefBridge()); CefSharpContainer.Children.Add(webView); }
private void Form1_Load(object sender, EventArgs e) { if (webView == null) { var setting = new BrowserSettings() { HistoryDisabled = true, MinimumFontSize = 12 }; webView = new WebView(strURL, setting); webView.Dock = DockStyle.Fill; this.Controls.Add(webView); txtURL.Text = strURL; } webView.RequestHandler = new RequestHandler(frmDownloadList); }
/// <summary> /// Create a new OffScreen Chromium Browser /// </summary> /// <param name="address">Initial address (url) to load</param> /// <param name="browserSettings">The browser settings to use. If null, the default settings are used.</param> /// <param name="requestcontext">See <see cref="RequestContext"/> for more details. Defaults to null</param> public ChromiumWebBrowser(string address = "", BrowserSettings browserSettings = null, RequestContext requestcontext = null) { if (!Cef.IsInitialized && !Cef.Initialize()) { throw new InvalidOperationException("Cef::Initialize() failed"); } BitmapFactory = new BitmapFactory(BitmapLock); ResourceHandlerFactory = new DefaultResourceHandlerFactory(); BrowserSettings = browserSettings ?? new BrowserSettings(); RequestContext = requestcontext; Cef.AddDisposable(this); Address = address; managedCefBrowserAdapter = new ManagedCefBrowserAdapter(this, true); managedCefBrowserAdapter.CreateOffscreenBrowser(IntPtr.Zero, BrowserSettings, RequestContext, address); }
public _CefBrowser(string start_url) { var cefSettings = new Settings(); cefSettings.CachePath = (Global.AppDir + @"\cache"); CEF.Initialize(cefSettings); CEF.SetCookiePath(Global.AppDir+@"\cookies"); var bsettings = new BrowserSettings(); bool debug = false; bool.TryParse(Config.get("system", "debug"), out debug); bsettings.DeveloperToolsDisabled = !debug; webview = new WebView(start_url, bsettings); webview.PropertyChanged += (sender, e) => { if (e.PropertyName == "Title") { if(DocumentTitleChanged!=null) DocumentTitleChanged(this, new EventArgs()); webview.ExecuteScript("document.addEventListener('DOMContentLoaded', function(){window.external.dom_ready()}, false); "); } }; }
public ChromiumHeadlessBrowserWithCefSharp(string url, int width, int height) { Cef.Initialize(new CefSettings()); // Create the offscreen Chromium browser var settings = new BrowserSettings { FileAccessFromFileUrlsAllowed = true, UniversalAccessFromFileUrlsAllowed = true, WebSecurityDisabled = true, }; this.browser = new ChromiumWebBrowser(url, settings); // Set the size of the browser this.browser.Size = new Size(width, height); // An event that is fired when the first page is finished loading. // This returns to us from another thread. this.browser.FrameLoadEnd += this.BrowserFrameLoadEnd; this.browser.ConsoleMessage += this.BrowserConsoleMessage; }
public TabView(MainWindow mw, string url) { InitializeComponent(); //Assignments mainWindow = mw; LastWebsite = ""; target = ""; WebView.LifeSpanHandler = this; splitChar = (char) 42; WebView.DownloadHandler = this; WebView.DisplayHandler = this; BrowserSettings s1 = new BrowserSettings(); s1.LocalStorage = CefState.Enabled; s1.Databases = CefState.Enabled; s1.ApplicationCache = CefState.Enabled; WebView.BrowserSettings = s1; refreshing = false; SnackBar.Visibility = Visibility.Hidden; allItems1 = new List<string>(); WebView.MenuHandler = this; //Events WebView.FrameLoadEnd += WebView_FrameLoadEnd; WebView.TitleChanged += WebView_TitleChanged; Loaded += TabView_Loaded; WebView.IsBrowserInitializedChanged += WebView_IsBrowserInitializedChanged; WebView.FrameLoadStart += WebView_FrameLoadStart; //Method calls HideSuggestions(); mw.Pages.Add(this); urlToLoad = url; }
public MainWindow() { InitializeComponent(); Cef.Initialize(new CefSettings { CachePath = @".\cachepath" }); var urlToNavigate = AppDomain.CurrentDomain.BaseDirectory + @"client\index.html"; var browserSettings = new BrowserSettings { UniversalAccessFromFileUrlsAllowed = true, WebSecurityDisabled = true }; webBrowser = new ChromiumWebBrowser(); webBrowser.Address = urlToNavigate; webBrowser.BrowserSettings = browserSettings; webBrowser.RegisterJsObject("cefCallback", new CefBridge()); CefSharpContainer.Children.Add(webBrowser); }