I seem to have "fixed" the problem. But I an not sure it is the best way to do it...
I extended the JSVGCanvas and orverrided the installKeyboardActions() method. In the installKeyboardActions() I commented out the key maps I did not what. Not sure if this is a good way to do this? I does work. Any suggestions of a better way, please tell me. Thanks. Below is my code: public class MyCanvas extends JSVGCanvas { public MyCanvas() { super(); } public MyCanvas(SVGUserAgent ua, boolean eventsEnabled, boolean selectableText) { super(); } // Override the installKeyboardActions() Method in the implementation. @Override protected void installKeyboardActions() { InputMap inputMap = getInputMap(JComponent.WHEN_FOCUSED); KeyStroke key; // I comment out the four key Actions I don't want. (So I my Interactor can use them exclusively.) /* key = KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, 0); inputMap.put(key, SCROLL_RIGHT_ACTION); key = KeyStroke.getKeyStroke(KeyEvent.VK_LEFT, 0); inputMap.put(key, SCROLL_LEFT_ACTION); key = KeyStroke.getKeyStroke(KeyEvent.VK_UP, 0); inputMap.put(key, SCROLL_UP_ACTION); key = KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, 0); inputMap.put(key, SCROLL_DOWN_ACTION); */ key = KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, KeyEvent.SHIFT_MASK); inputMap.put(key, FAST_SCROLL_RIGHT_ACTION); key = KeyStroke.getKeyStroke(KeyEvent.VK_LEFT, KeyEvent.SHIFT_MASK); inputMap.put(key, FAST_SCROLL_LEFT_ACTION); key = KeyStroke.getKeyStroke(KeyEvent.VK_UP, KeyEvent.SHIFT_MASK); inputMap.put(key, FAST_SCROLL_UP_ACTION); key = KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, KeyEvent.SHIFT_MASK); inputMap.put(key, FAST_SCROLL_DOWN_ACTION); key = KeyStroke.getKeyStroke(KeyEvent.VK_I, KeyEvent.CTRL_MASK); inputMap.put(key, ZOOM_IN_ACTION); key = KeyStroke.getKeyStroke(KeyEvent.VK_O, KeyEvent.CTRL_MASK); inputMap.put(key, ZOOM_OUT_ACTION); key = KeyStroke.getKeyStroke(KeyEvent.VK_T, KeyEvent.CTRL_MASK); inputMap.put(key, RESET_TRANSFORM_ACTION); } }