@@ -624,6 +624,9 @@ private void OnRectangleMouseDown(object sender, MouseButtonEventArgs e)
624624 private void OnSearchTextChanged ( object sender , TextChangedEventArgs e )
625625 {
626626 FilterRecentProjects ( ) ;
627+
628+ // if nothing selected, select first item
629+ if ( gridRecent . SelectedIndex < 0 ) gridRecent . SelectedIndex = 0 ;
627630 }
628631
629632 private void BtnAddProjectFolder_Click ( object sender , RoutedEventArgs e )
@@ -687,7 +690,7 @@ private void OnGetUnityUpdatesClick(object sender, RoutedEventArgs e)
687690
688691 // refresh installations, if already added some new ones
689692 UpdateUnityInstallationsList ( ) ;
690-
693+ txtSearchBoxUpdates . Text = "" ;
691694 CallGetUnityUpdates ( ) ;
692695
693696 button . IsEnabled = true ;
@@ -727,9 +730,9 @@ private void OnWindowKeyDown(object sender, KeyEventArgs e)
727730 txtSearchBox . Text = "" ;
728731 break ;
729732 case Key . Up :
733+ case Key . Down :
730734 case Key . Left :
731735 case Key . Right :
732- case Key . Down :
733736 break ;
734737 case Key . F2 : // edit arguments or project name
735738 if ( chkEnableProjectRename . IsChecked == false ) return ; //if rename not enabled
@@ -991,7 +994,11 @@ private void TxtSearchBox_PreviewKeyDown(object sender, KeyEventArgs e)
991994 break ;
992995 case Key . Tab :
993996 case Key . Up :
994- Tools . SetFocusToGrid ( gridRecent ) ;
997+ //Tools.SetFocusToGrid(gridRecent);
998+ var currentIndex = gridRecent . SelectedIndex - 1 ;
999+ //Console.WriteLine(currentIndex);
1000+ if ( currentIndex < 0 ) currentIndex = gridRecent . Items . Count - 1 ;
1001+ gridRecent . SelectedIndex = currentIndex ;
9951002 e . Handled = true ;
9961003 break ;
9971004 case Key . Down :
@@ -1002,8 +1009,11 @@ private void TxtSearchBox_PreviewKeyDown(object sender, KeyEventArgs e)
10021009 //}
10031010 //else
10041011 //{
1005- Tools . SetFocusToGrid ( gridRecent ) ;
1012+ // Tools.SetFocusToGrid(gridRecent);
10061013 // }
1014+
1015+ // if in searchbox, then move selected index up or down
1016+ gridRecent . SelectedIndex = ++ gridRecent . SelectedIndex % gridRecent . Items . Count ;
10071017 e . Handled = true ; // to stay in first row
10081018 break ;
10091019 default :
0 commit comments