public SettingsViewModel(Func <IDataSource> getGetDataSource, IConnectionListener connectionListener, IPurchase purchase) { _getDataSource = getGetDataSource; _regions = new ObservableCollection <string>(I18nLanguages.Languages); var videoQuality = new VideoQuality(); _videoQualities = new ObservableCollection <string>(videoQuality.GetQualityNames()); _applicationThemes = new ObservableCollection <ApplicationTheme>(ThemeManager.GetSupportedThemes()); _applicationLanguages = new ObservableCollection <string>(LanguageManager.GetSupportedLanguages()); _navigatioPanelViewModel = new NavigationPanelViewModel(_getDataSource, connectionListener, purchase); _navigatioPanelViewModel.IsSettingsSelected = true; _selectedRegion = SettingsHelper.GetRegionName(); _selectedQuality = SettingsHelper.GetQuality(); _selectedApplicationTheme = SettingsHelper.GetTheme(); _selectedLanguage = SettingsHelper.GetLanguage(); _currentLanguage = _selectedLanguage; _isAutoplayVideo = SettingsHelper.GetIsAutoPlayVideo(); _isLargeItems = SettingsHelper.GetIsLargeItems(); _oldSelectedApplicationTheme = _selectedApplicationTheme; }