Dave Jarvis' Repositories

git clone https://repo.autonoma.ca/repo/keenwrite.git

always put focus into text editor and place caret at first character; disable focus traversable for toolbar buttons and tab pane

AuthorKarl Tauber <email>
Date2015-07-23 22:36:04 GMT+0200
Commit77810842161985ab4468009cb00a521721425585
Parent6fef94a
Delta8 lines added, 1 line removed, 7-line increase
src/main/java/org/markdownwriterfx/editor/MarkdownEditorPane.java
package org.markdownwriterfx.editor;
+import javafx.application.Platform;
import javafx.beans.property.ReadOnlyObjectProperty;
import javafx.beans.property.ReadOnlyObjectWrapper;
public UndoManager getUndoManager() {
return textArea.getUndoManager();
+ }
+
+ public void requestFocus() {
+ Platform.runLater(() -> textArea.requestFocus());
}
// 'markdown' property
public String getMarkdown() { return textArea.getText(); }
- public void setMarkdown(String markdown) { textArea.replaceText(markdown); }
+ public void setMarkdown(String markdown) { textArea.replaceText(markdown); textArea.selectRange(0, 0); }
public ObservableValue<String> markdownProperty() { return textArea.textProperty(); }
src/main/java/org/markdownwriterfx/FileEditorTabPane.java
tabPane = new TabPane();
+ tabPane.setFocusTraversable(false);
tabPane.setTabClosingPolicy(TabClosingPolicy.ALL_TABS);
tabPane.getSelectionModel().selectedItemProperty().addListener((observable, oldTab, newTab) -> {
src/main/java/org/markdownwriterfx/MainWindow.java
tooltip = tooltip + " (" + KeyCombination.valueOf(accelerator).getDisplayText() + ')';
button.setTooltip(new Tooltip(tooltip));
+ button.setFocusTraversable(false);
button.setOnAction(action);
return button;