/// <summary> /// Gets the metro targets. /// </summary> /// <returns></returns> private IEnumerable <Target> GetMetroTargets() { if (this._includeMetro && this.HasMetroSupport) { return(MetroManager.GetApplications() .Select( app => { var target = new Target() { Name = app.Name, Description = app.Description, Path = app.AppUserModelId, Icon = app.Icon, Platform = TargetType.Metro, }; target.AddAlias(target.Name); var abbreviation = target.Name.GetAbbreviation(); if (abbreviation.Length > 1) { target.AddAlias(abbreviation); } return target; })); } return(new List <Target>()); }
/// <summary> /// Runs the selected target. /// </summary> public void ExecuteCurrentTarget(bool runAsAdministrator) { this.HideWindow(); if (this.ViewModel.CurrentTarget != null) { this._indexManager.UpdateTermTarget(this.ViewModel.CurrentTarget.TargetId, this.ViewModel.Query); if (this.ViewModel.CurrentTarget.Platform == TargetType.Metro) { MetroManager.Start(this.ViewModel.CurrentTarget.Path); } else { ShellLauncher.Start(this.ViewModel.CurrentTarget.Path, runAsAdministrator); } } }