Skip to content

Commit 40afb74

Browse files
ddamkeddamke
authored andcommitted
select text when clicking the search field
1 parent 5d97d4d commit 40afb74

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

src/main/java/de/doubleslash/keeptime/view/ProjectsListViewController.java

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@
2424
import java.util.Map.Entry;
2525
import java.util.Optional;
2626

27+
import javafx.application.Platform;
28+
import javafx.beans.value.ChangeListener;
29+
import javafx.beans.value.ObservableValue;
2730
import javafx.scene.input.MouseEvent;
2831
import org.slf4j.Logger;
2932
import org.slf4j.LoggerFactory;
@@ -62,6 +65,7 @@ public class ProjectsListViewController {
6265

6366
private final boolean hideable;
6467

68+
6569
public ProjectsListViewController(final Model model, final Controller controller, final Stage mainStage,
6670
final ListView<Project> availableProjectsListView, final TextField searchTextField, final boolean hideable) {
6771
this.model = model;
@@ -118,13 +122,16 @@ public ProjectsListViewController(final Model model, final Controller controller
118122
searchTextField.setText("");
119123
}
120124
});
121-
searchTextField.addEventFilter(MouseEvent.MOUSE_CLICKED, e -> {
122-
searchTextField.selectAll();
123-
if(e.getClickCount()>1){
124-
searchTextField.deselect();
125-
}
125+
//From https://stackoverflow.com/questions/14965318/javafx-method-selectall-just-works-by-focus-with-keyboard
126+
searchTextField.focusedProperty().addListener(observable -> {
127+
Platform.runLater(() -> {
128+
if(searchTextField.isFocused()){
129+
searchTextField.selectAll();
130+
}
131+
});
126132
});
127133

134+
128135
availableProjectsListView.getSelectionModel().setSelectionMode(SelectionMode.SINGLE);
129136
availableProjectsListView.getSelectionModel().selectFirst();
130137
}

0 commit comments

Comments
 (0)