diff --git a/app/src/processing/app/syntax/SketchTextAreaDefaultInputMap.java b/app/src/processing/app/syntax/SketchTextAreaDefaultInputMap.java index 86d3d86a2..4d01d2e1e 100644 --- a/app/src/processing/app/syntax/SketchTextAreaDefaultInputMap.java +++ b/app/src/processing/app/syntax/SketchTextAreaDefaultInputMap.java @@ -1,15 +1,27 @@ package processing.app.syntax; import org.fife.ui.rsyntaxtextarea.RSyntaxTextAreaDefaultInputMap; +import org.fife.ui.rtextarea.RTextAreaEditorKit; +import processing.app.PreferencesData; import javax.swing.*; +import java.awt.event.InputEvent; import java.awt.event.KeyEvent; public class SketchTextAreaDefaultInputMap extends RSyntaxTextAreaDefaultInputMap { public SketchTextAreaDefaultInputMap() { int defaultMod = getDefaultModifier(); + int alt = InputEvent.ALT_MASK; remove(KeyStroke.getKeyStroke(KeyEvent.VK_K, defaultMod)); + + if (PreferencesData.getBoolean("editor.advanced")) { + put(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, alt), RTextAreaEditorKit.rtaLineDownAction); + put(KeyStroke.getKeyStroke(KeyEvent.VK_UP, alt), RTextAreaEditorKit.rtaLineUpAction); + } else { + remove(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, alt)); + remove(KeyStroke.getKeyStroke(KeyEvent.VK_UP, alt)); + } } }