public static IBrowser GetBrowser() { if (_browser.Value == null) { var settings = new BrowserSetting(_variables.Value); settings.Create(); return(Create(settings)); } return(_browser.Value); }
public UWPHttpProviderSelector(IShellContextService shell, BrowserSetting settings, ProxySetting proxy) { if (settings.Debug.InitialValue) { Current = new DebugHttpProvider(shell); } else { Current = new EdgeHttpProvider(proxy); } Settings = settings; }
public BrowserSelector(IBrowserProvider[] browsers, BrowserSetting settings, IShellContextService shell) { browsers = browsers.Where(x => x.IsSupported).ToArray(); AvailableBrowsers = browsers.Select(x => x.Id).ToBindable(); Settings = settings; if (settings.Debug.Value) { Current = new DebugHttpProvider(shell); } else { string engine = settings.BrowserEngine.InitialValue; SelectedBrowser = browsers.FirstOrDefault(x => x.Id == engine) ?? browsers.FirstOrDefault() ?? throw new InvalidOperationException("It must have at least one browser provider."); SelectedBrowser.Initialize(); Current = SelectedBrowser.HttpProvider; } }