From 8908237d58d1932cca17b260e0a655c721b3895a Mon Sep 17 00:00:00 2001 From: Tamaranch <41806113+Tamaranch@users.noreply.github.com> Date: Sun, 10 May 2020 00:48:32 +0200 Subject: [PATCH] Update search field with selected text --- mousepad/mousepad-window.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/mousepad/mousepad-window.c b/mousepad/mousepad-window.c index 4458e9e..8ed7afe 100644 --- a/mousepad/mousepad-window.c +++ b/mousepad/mousepad-window.c @@ -4890,20 +4890,17 @@ mousepad_window_action_find (GtkAction *action, g_signal_connect_swapped (G_OBJECT (window->search_bar), "search", G_CALLBACK (mousepad_window_search), window); } - /* set the search entry text if the search bar is hidden*/ - if (gtk_widget_get_visible (window->search_bar) == FALSE) + /* set the search entry text when a new selection takes place */ + if (gtk_text_buffer_get_has_selection (window->active->buffer) == TRUE) { - if (gtk_text_buffer_get_has_selection (window->active->buffer) == TRUE) - { - gtk_text_buffer_get_selection_bounds (window->active->buffer, &selection_start, &selection_end); - selection = gtk_text_buffer_get_text (window->active->buffer, &selection_start, &selection_end, 0); + gtk_text_buffer_get_selection_bounds (window->active->buffer, &selection_start, &selection_end); + selection = gtk_text_buffer_get_text (window->active->buffer, &selection_start, &selection_end, 0); - /* selection should be one line */ - if (g_strrstr (selection, "\n") == NULL && g_strrstr (selection, "\r") == NULL) - mousepad_search_bar_set_text (MOUSEPAD_SEARCH_BAR (window->search_bar), selection); + /* selection should be one line */ + if (g_strrstr (selection, "\n") == NULL && g_strrstr (selection, "\r") == NULL) + mousepad_search_bar_set_text (MOUSEPAD_SEARCH_BAR (window->search_bar), selection); - g_free (selection); - } + g_free (selection); } /* show the search bar */ -- 2.26.2