diff options
| author | Ignacio Etcheverry | 2016-06-11 21:07:04 +0200 |
|---|---|---|
| committer | Ignacio Etcheverry | 2016-06-11 21:07:04 +0200 |
| commit | 9a2d5fa1e19acdeaaf9fef253571677868ad3346 (patch) | |
| tree | 522b425339f7bca69fb59f7a0ed96e801e4124ad /tools/editor/code_editor.cpp | |
| parent | 26d18b74ac8b5cc3f99fe3aa7d8a2438f9dd52cd (diff) | |
| download | godot-9a2d5fa1e19acdeaaf9fef253571677868ad3346.tar.gz godot-9a2d5fa1e19acdeaaf9fef253571677868ad3346.tar.zst godot-9a2d5fa1e19acdeaaf9fef253571677868ad3346.zip | |
FindReplaceBar: Fix search bug when text is selected
Diffstat (limited to '')
| -rw-r--r-- | tools/editor/code_editor.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/tools/editor/code_editor.cpp b/tools/editor/code_editor.cpp index f62209faf..944d4c24b 100644 --- a/tools/editor/code_editor.cpp +++ b/tools/editor/code_editor.cpp @@ -247,8 +247,18 @@ void FindReplaceBar::_get_search_from(int& r_line, int& r_col) { r_col=text_edit->cursor_get_column(); if (text_edit->is_selection_active() && !replace_all_mode) { - r_line=text_edit->get_selection_from_line(); - r_col=text_edit->get_selection_to_column(); + + int selection_line=text_edit->get_selection_from_line(); + + if (text_edit->get_selection_text()==get_search_text() && r_line==selection_line) { + + int selection_from_col=text_edit->get_selection_from_column(); + + if (r_col>=selection_from_col && r_col<=text_edit->get_selection_to_column()) { + r_col=selection_line; + r_col=selection_from_col; + } + } } if (r_line==result_line && r_col>=result_col && r_col<=result_col+get_search_text().length()) { |
