[139151] Schema editor design page not keyboard navigable
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/BaseGraphicalViewerKeyHandler.java b/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/BaseGraphicalViewerKeyHandler.java
index 104fe6e..a6a7de7 100644
--- a/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/BaseGraphicalViewerKeyHandler.java
+++ b/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/BaseGraphicalViewerKeyHandler.java
@@ -59,20 +59,16 @@
if (direction != -1)
{
GraphicalEditPart focusEditPart = getFocusEditPart();
- //for (EditPart editPart = focusEditPart; editPart != null; editPart = editPart.getParent())
- //{
- // KeyBoardNavigationEditPolicy policy = (KeyBoardNavigationEditPolicy)editPart.getEditPolicy(KeyBoardNavigationEditPolicy.KEY);
KeyBoardNavigationEditPolicy policy = (KeyBoardNavigationEditPolicy)focusEditPart.getEditPolicy(KeyBoardNavigationEditPolicy.KEY);
- if (policy != null && policy.isApplicable(focusEditPart))
+ if (policy != null)
+ {
+ EditPart target = policy.getRelativeEditPart(focusEditPart, direction);
+ if (target != null)
{
- EditPart target = policy.getRelativeEditPart(focusEditPart, direction);
- if (target != null)
- {
- navigateTo(target, event);
- return true;
- }
- }
- //}
+ navigateTo(target, event);
+ return true;
+ }
+ }
}
switch (event.keyCode)
{
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/BaseEditPart.java b/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/BaseEditPart.java
index 8d5d8dd..708c1a8 100644
--- a/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/BaseEditPart.java
+++ b/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editparts/BaseEditPart.java
@@ -185,12 +185,7 @@
protected void createEditPolicies()
{
installEditPolicy(KeyBoardNavigationEditPolicy.KEY, new KeyBoardNavigationEditPolicy()
- {
- public boolean isApplicable(EditPart editPart)
- {
- return true;
- }
-
+ {
public EditPart getRelativeEditPart(EditPart editPart, int direction)
{
return doGetRelativeEditPart(editPart, direction);
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editpolicies/KeyBoardNavigationEditPolicy.java b/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editpolicies/KeyBoardNavigationEditPolicy.java
index 655f70f..d80b2c1 100644
--- a/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editpolicies/KeyBoardNavigationEditPolicy.java
+++ b/bundles/org.eclipse.wst.xsd.ui/src-adt/org/eclipse/wst/xsd/ui/internal/adt/design/editpolicies/KeyBoardNavigationEditPolicy.java
@@ -10,12 +10,7 @@
public static int OUT_TO_PARENT = PositionConstants.ALWAYS_LEFT;
public static int IN_TO_FIRST_CHILD = PositionConstants.ALWAYS_RIGHT;
-
- public boolean isApplicable(EditPart editPart)
- {
- return false;
- }
-
+
public EditPart getRelativeEditPart(EditPart editPart, int direction)
{
return null;