Browse Source

fix SD-1738 - Ctrl+Shift+Tab does not work in active files dialog

pull/12/head
eusebiu 15 years ago committed by Daniel Grunwald
parent
commit
c1c9366c88
  1. 5
      src/Libraries/AvalonDock/AvalonDock/DockingManager.cs
  2. 3
      src/Libraries/AvalonDock/AvalonDock/NavigatorWindow.cs
  3. 6
      src/Main/Base/Project/Src/Commands/WindowCommands.cs

5
src/Libraries/AvalonDock/AvalonDock/DockingManager.cs

@ -1054,7 +1054,7 @@ namespace AvalonDock @@ -1054,7 +1054,7 @@ namespace AvalonDock
protected override void OnKeyDown(KeyEventArgs e)
{
bool isCtrlDown = Keyboard.Modifiers == ModifierKeys.Control;
bool isCtrlDown = Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl);
bool _navigatorWindowIsVisible = navigatorWindow != null ? navigatorWindow.IsVisible : false;
Debug.WriteLine(string.Format("OnKeyDn {0} CtrlDn={1}", e.Key, isCtrlDown));
@ -1078,7 +1078,7 @@ namespace AvalonDock @@ -1078,7 +1078,7 @@ namespace AvalonDock
protected override void OnKeyUp(KeyEventArgs e)
{
bool isCtrlDown = Keyboard.Modifiers == ModifierKeys.Control;
bool isCtrlDown = Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl);
bool _navigatorWindowIsVisible = navigatorWindow != null ? navigatorWindow.IsVisible : false;
Debug.WriteLine(string.Format("OnKeyUp {0} CtrlDn={1}", e.Key, isCtrlDown));
@ -1087,6 +1087,7 @@ namespace AvalonDock @@ -1087,6 +1087,7 @@ namespace AvalonDock
if (!_navigatorWindowIsVisible && e.Key == Key.Tab)
{
ShowNavigatorWindow();
_navigatorWindowIsVisible = true;
}
if (_navigatorWindowIsVisible)

3
src/Libraries/AvalonDock/AvalonDock/NavigatorWindow.cs

@ -196,6 +196,9 @@ namespace AvalonDock @@ -196,6 +196,9 @@ namespace AvalonDock
{
if (key == Key.Tab)
{
if (Keyboard.IsKeyDown(Key.LeftShift) || Keyboard.IsKeyDown(Key.RightShift))
MoveToPreviousContent();
else
MoveToNextContent();
return true;
}

6
src/Main/Base/Project/Src/Commands/WindowCommands.cs

@ -11,7 +11,8 @@ namespace ICSharpCode.SharpDevelop.Commands @@ -11,7 +11,8 @@ namespace ICSharpCode.SharpDevelop.Commands
{
public override void Run()
{
if (WorkbenchSingleton.Workbench.ActiveWorkbenchWindow == null) {
if (WorkbenchSingleton.Workbench.ActiveWorkbenchWindow == null ||
WorkbenchSingleton.Workbench.WorkbenchWindowCollection.Count == 0) {
return;
}
int index = WorkbenchSingleton.Workbench.WorkbenchWindowCollection.IndexOf(WorkbenchSingleton.Workbench.ActiveWorkbenchWindow);
@ -23,7 +24,8 @@ namespace ICSharpCode.SharpDevelop.Commands @@ -23,7 +24,8 @@ namespace ICSharpCode.SharpDevelop.Commands
{
public override void Run()
{
if (WorkbenchSingleton.Workbench.ActiveWorkbenchWindow == null) {
if (WorkbenchSingleton.Workbench.ActiveWorkbenchWindow == null ||
WorkbenchSingleton.Workbench.WorkbenchWindowCollection.Count == 0) {
return;
}
int index = WorkbenchSingleton.Workbench.WorkbenchWindowCollection.IndexOf(WorkbenchSingleton.Workbench.ActiveWorkbenchWindow);

Loading…
Cancel
Save