@@ -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