close #150 Use tab to cycle switch candidates

This commit is contained in:
qianlifeng
2014-08-19 15:21:26 +08:00
parent 0e5155c85a
commit e91e4042ba

View File

@@ -492,17 +492,25 @@ namespace Wox
e.Handled = true;
break;
case Key.Tab:
if (globalHotkey.CheckModifiers().ShiftPressed)
{
SelectPrevItem();
}
else
{
SelectNextItem();
}
e.Handled = true;
break;
case Key.Down:
resultCtrl.SelectNext();
if (IsCMDMode) updateCmdMode();
toolTip.IsOpen = false;
SelectNextItem();
e.Handled = true;
break;
case Key.Up:
resultCtrl.SelectPrev();
if (IsCMDMode) updateCmdMode();
toolTip.IsOpen = false;
SelectPrevItem();
e.Handled = true;
break;
@@ -536,13 +544,26 @@ namespace Wox
break;
case Key.Enter:
case Key.Tab:
AcceptSelect(resultCtrl.GetActiveResult());
e.Handled = true;
break;
}
}
private void SelectPrevItem()
{
resultCtrl.SelectPrev();
if (IsCMDMode) updateCmdMode();
toolTip.IsOpen = false;
}
private void SelectNextItem()
{
resultCtrl.SelectNext();
if (IsCMDMode) updateCmdMode();
toolTip.IsOpen = false;
}
private void AcceptSelect(Result result)
{
if (!resultCtrl.Dirty && result != null)
@@ -551,7 +572,7 @@ namespace Wox
{
bool hideWindow = result.Action(new ActionContext()
{
SpecialKeyState = new GlobalHotkey().CheckModifiers()
SpecialKeyState = globalHotkey.CheckModifiers()
});
if (hideWindow)
{