summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcadmio <gioresta87@gmail.com>2023-12-02 11:05:38 +0100
committercadmio <gioresta87@gmail.com>2023-12-02 11:05:38 +0100
commit041005da0b3d1b08712ee029e0fc8f4efb61a6d2 (patch)
treeafc21a52eb82a7ed9ae0a24b47cacd91b8307bf1
parentf439785f65e432dd5927471e42ad4bfc57d92e67 (diff)
downloadlitos4-041005da0b3d1b08712ee029e0fc8f4efb61a6d2.tar.gz
litos4-041005da0b3d1b08712ee029e0fc8f4efb61a6d2.tar.bz2
litos4-041005da0b3d1b08712ee029e0fc8f4efb61a6d2.zip
update all
-rw-r--r--litosaccels.c30
-rw-r--r--litosappwin.c44
2 files changed, 46 insertions, 28 deletions
diff --git a/litosaccels.c b/litosaccels.c
index 83ffe9c..554065d 100644
--- a/litosaccels.c
+++ b/litosaccels.c
@@ -20,11 +20,12 @@ LitosFile * litos_app_window_current_file(LitosAppWindow *win);
LitosFile * litos_app_window_new_file(LitosAppWindow *win);
guint litos_app_window_get_array_len(LitosAppWindow *win);
gboolean litos_app_window_quit (GtkWindow *window, gpointer user_data);
-void search_btn_clicked (GtkWidget *search_btn, gpointer user_data);
+void ctrl_f(LitosAppWindow *win);
void litos_app_error_dialog(GtkWindow *window, GError *error, char *filename);
gboolean litos_app_check_duplicate(char *filename, LitosAppWindow *win);
+void set_search_entry(LitosAppWindow *win);
static void
open_cb (GtkWidget *dialog, gint response, gpointer window)
@@ -266,32 +267,11 @@ find_selection (GSimpleAction *action, GVariant *parameter, gpointer app)
{
GtkWindow *window = gtk_application_get_active_window (GTK_APPLICATION (app));
- LitosAppWindow *win = LITOS_APP_WINDOW(window);
-
- /*GtkTextIter start, end;
- LitosFile *file = litos_app_window_current_file(win);
-
- GtkTextBuffer *buffer = litos_file_get_buffer(file);
-
- const char *stringToSearch = NULL;
+ LitosAppWindow *win = LITOS_APP_WINDOW(window);
- if (gtk_text_buffer_get_selection_bounds(buffer, &start, &end))
- {
- stringToSearch = gtk_text_buffer_get_text (buffer,
- &start,
- &end,
- FALSE);
-
- gtk_entry_set_text(GTK_ENTRY(search_entry), gtk_text_iter_get_text (&start, &end));
- }
-
- else
- stringToSearch = gtk_entry_get_text(GTK_ENTRY(search_entry));
+ ctrl_f(win);
- if (stringToSearch == NULL || *stringToSearch == '\0')
- return;
- else*/
- search_btn_clicked(NULL, win);
+ //set_search_entry(win);
}
void setAccels (GApplication *app)
diff --git a/litosappwin.c b/litosappwin.c
index 86bdb35..b5e0e5f 100644
--- a/litosappwin.c
+++ b/litosappwin.c
@@ -33,6 +33,7 @@ GtkWidget * litos_file_get_view(LitosFile *file);
GtkWidget * litos_file_get_lbl(LitosFile *file);
GtkWidget * litos_file_get_tabbox(LitosFile *file);
gboolean litos_file_load (LitosFile *file, GError **error);
+GtkTextBuffer *litos_file_get_buffer(LitosFile *file);
GtkCssProvider * litos_app_get_css_provider(LitosApp *app);
GSettings *litos_app_get_settings(LitosApp *app);;
@@ -189,6 +190,12 @@ litos_app_window_set_search_context(LitosAppWindow *win, const char *stringToSea
GtkTextBuffer *buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW(source_view));
+ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(win->button_check_case)))
+ gtk_source_search_settings_set_case_sensitive (settings, TRUE);
+
+ else
+ gtk_source_search_settings_set_case_sensitive (settings, FALSE);
+
gtk_source_search_settings_set_search_text (settings, stringToSearch);
win->search_context = gtk_source_search_context_new(GTK_SOURCE_BUFFER(buffer), settings);
@@ -242,12 +249,43 @@ search_text_changed (GtkEntry *entry,
}
}
+void set_search_entry(LitosAppWindow *win)
+{
+ /*GtkTextIter start, end;
+ LitosFile *file = litos_app_window_current_file(win);
+ GtkEntryBuffer *entry_buffer;
+
+ GtkTextBuffer *buffer = litos_file_get_buffer(file);
+
+ const char *stringToSearch = NULL;
+
+ if (gtk_text_buffer_get_selection_bounds(buffer, &start, &end))
+ {
+ stringToSearch = gtk_text_buffer_get_text (buffer,
+ &start,
+ &end,
+ FALSE);
+
+ gtk_entry_buffer_insert_text (entry_buffer,
+ 0,
+ stringToSearch,
+ -1
+ );
+
+ gtk_entry_set_buffer(GTK_ENTRY(win->search_entry), entry_buffer);
+ }*/
+}
+
+void ctrl_f(LitosAppWindow *win)
+{
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(LITOS_APP_WINDOW(win)->search), TRUE);
+ gtk_widget_grab_focus(LITOS_APP_WINDOW(win)->search_entry);
+}
+
void search_btn_clicked (GtkWidget *search_btn, gpointer user_data)
{
/* auto grab search entry box on clicking search button */
gtk_widget_grab_focus(LITOS_APP_WINDOW(user_data)->search_entry);
-
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(LITOS_APP_WINDOW(user_data)->search), TRUE);
}
static void
@@ -535,7 +573,7 @@ litos_app_window_class_init (LitosAppWindowClass *class)
BIND_CHILD (search)
BIND_CHILD (prev_button)
BIND_CHILD (next_button)
- //BIND_CHILD (button_check_case)
+ BIND_CHILD (button_check_case)
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), about_dialog);
gtk_widget_class_bind_template_callback (GTK_WIDGET_CLASS (class), search_text_changed);