InlineEdit: Allow to activate match brackets Codemirror addon

Codemirror matchbrackets.js addon defines an option `matchBrackets`
which, when set to true, causes matching brackets to be highlighted
whenever the cursor is next to them. Set default to be true.

Change-Id: I8d107a70af484562f5938fe41245f0603b820492
This commit is contained in:
David Ostrovsky
2015-05-15 00:00:48 +02:00
parent 85f843a657
commit c232840a1a
8 changed files with 32 additions and 2 deletions

View File

@@ -62,6 +62,7 @@ class EditPreferencesBox extends Composite {
@UiField ToggleButton showTabs;
@UiField ToggleButton whitespaceErrors;
@UiField ToggleButton lineNumbers;
@UiField ToggleButton matchBrackets;
@UiField ListBox theme;
@UiField ListBox keyMap;
@UiField Button apply;
@@ -85,6 +86,7 @@ class EditPreferencesBox extends Composite {
showTabs.setValue(prefs.showTabs());
whitespaceErrors.setValue(prefs.showWhitespaceErrors());
lineNumbers.setValue(prefs.hideLineNumbers());
matchBrackets.setValue(prefs.matchBrackets());
setTheme(prefs.theme());
setKeyMapType(prefs.keyMapType());
}
@@ -149,6 +151,12 @@ class EditPreferencesBox extends Composite {
view.setSyntaxHighlighting(prefs.syntaxHighlighting());
}
@UiHandler("matchBrackets")
void onMatchBrackets(ValueChangeEvent<Boolean> e) {
prefs.matchBrackets(e.getValue());
view.getEditor().setOption("matchBrackets", prefs.matchBrackets());
}
@UiHandler("theme")
void onTheme(@SuppressWarnings("unused") ChangeEvent e) {
final Theme newTheme = Theme.valueOf(theme.getValue(theme.getSelectedIndex()));

View File

@@ -222,6 +222,13 @@ limitations under the License.
<g:downFace><ui:msg>Show</ui:msg></g:downFace>
</g:ToggleButton></td>
</tr>
<tr>
<th><ui:msg>Match Brackets</ui:msg></th>
<td><g:ToggleButton ui:field='matchBrackets'>
<g:upFace><ui:msg>Off</ui:msg></g:upFace>
<g:downFace><ui:msg>On</ui:msg></g:downFace>
</g:ToggleButton></td>
</tr>
<tr>
<td></td>
<td>

View File

@@ -446,6 +446,7 @@ public class EditScreen extends Screen {
.set("lineNumbers", prefs.hideLineNumbers())
.set("tabSize", prefs.tabSize())
.set("lineWrapping", false)
.set("matchBrackets", prefs.matchBrackets())
.set("scrollbarStyle", "overlay")
.set("styleSelectedText", true)
.set("showTrailingSpace", prefs.showWhitespaceErrors())