diff options
author | cadmio <gioresta87@gmail.com> | 2023-11-19 17:14:07 +0100 |
---|---|---|
committer | DiffieHellman <DiffieHellman@endianness.com> | 2023-11-20 21:53:05 +1100 |
commit | 909c8b2b74d0f335ee3bd60acabf4e8697c2ce18 (patch) | |
tree | 8a5ef7cc73afe2b099b9b260d45c1a5e8055e248 | |
parent | 60a425f39f2cf738e081ab4d14d9c4858d1023df (diff) | |
download | litos4-909c8b2b74d0f335ee3bd60acabf4e8697c2ce18.tar.gz litos4-909c8b2b74d0f335ee3bd60acabf4e8697c2ce18.tar.bz2 litos4-909c8b2b74d0f335ee3bd60acabf4e8697c2ce18.zip |
update all
-rw-r--r-- | diffierepo | 39 | ||||
-rw-r--r-- | diffierepo.pub | 1 | ||||
-rw-r--r-- | litosaccels.c | 81 | ||||
-rw-r--r-- | litosappwin.c | 37 |
4 files changed, 135 insertions, 23 deletions
diff --git a/diffierepo b/diffierepo new file mode 100644 index 0000000..7d3304f --- /dev/null +++ b/diffierepo @@ -0,0 +1,39 @@ +-----BEGIN OPENSSH PRIVATE KEY----- +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 +PfQcwtMuuNv39LdojMHRD8wVhDY= +-----END OPENSSH PRIVATE KEY----- diff --git a/diffierepo.pub b/diffierepo.pub new file mode 100644 index 0000000..6165038 --- /dev/null +++ b/diffierepo.pub @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCtT07z7DeFwWiSG9lVPFQ1PPCbwW0YVQOVU9qGMOg1SML8+gSmfLu+vrcB43xdN2YdH80A5HuhME5pw7xl8ZA/sGhCjGczoMDj0teH7NYsMUVclPVLyjp1k/c2PmCCMZGNV1sgrWCbd3zlY4Xt+xMYynqnFTGROPkX26T48Myg+8uJjBT00wjE0vY8GQWS6AlLQRotNodYBLT15zZCaesLowVetIAb5UY61CrJCvw2tTT1MWtOrLFRrgZ4AI+i+/uxV+mNjl+G7jyDyYmXc5ZERkZgPqC+8YT9CQGfRjuyyyhMZv8Rc6XTsk0Etm908Je8calSsjD0MTsMUkBELuiYcNRX/jAHr22oD/htByBXOUy7WVeqg/Gs804pBBDBhNNgJ6oPVkjwKRFpj/py4SEO/TV/fi10lPR3Obgr3++yMhIjZamS1ewFieI4a3OWQRDpIHzy2zfhmK77ujnFCx440Yt6gaXy2jboElxyAYiuVt3/Th3rPdK45CldAaFv5wk= cadmio@debian diff --git a/litosaccels.c b/litosaccels.c index 987e125..180ef5f 100644 --- a/litosaccels.c +++ b/litosaccels.c @@ -260,6 +260,41 @@ insertHtmlTags (GSimpleAction *action, GVariant *parameter, gpointer app) g_free(tag); } +static void +find_selection (GSimpleAction *action, GVariant *parameter, gpointer app) +{ + /* + GtkWindow *window = gtk_application_get_active_window (GTK_APPLICATION (app)); + + LitosAppWindow *win = LITOS_APP_WINDOW(window); + + LitosFile *file = litos_app_window_current_file(win); + + GtkTextBuffer *buffer = litos_file_get_buffer(file); + + const char *stringToSearch = NULL; + + GtkTextIter start, end; + + GtkTextBuffer *buffer = get_current_buffer(litos); + + 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)); + + if (stringToSearch == NULL || *stringToSearch == '\0') + return;*/ +} + void setAccels (GApplication *app) { long unsigned int i; @@ -275,6 +310,7 @@ void setAccels (GApplication *app) {"save", save, NULL, NULL, NULL, {0,0,0}}, {"save_as", save_as_dialog, NULL, NULL, NULL, {0,0,0}}, {"close", close_activated, NULL, NULL, NULL}, + {"find", find_selection, NULL, NULL, NULL, {0,0,0}}, {"quit", quit_activated, NULL, NULL, NULL } }; @@ -283,28 +319,29 @@ void setAccels (GApplication *app) const gchar *action; const gchar *accels[2]; } action_accels[] = { - { "app.open", { "<Control>o", NULL} }, - { "app.new", { "<Control>n", NULL} }, - { "app.save", { "<Control>s", NULL} }, - { "app.save_as", { "<Shift><Control>s", NULL} }, - { "app.close", { "<Control>w", NULL} }, - { "app.quit", { "<Control>q", NULL} }, - { "app.insert_html(\"<b>%s</b>\")", { "<Control>b", NULL} }, - { "app.insert_html(\"<i>%s</i>\")", { "<Control>i", NULL} }, - { "app.insert_html(\"<h2>%s</h2>\")", { "<Control>2", NULL} }, - { "app.insert_html(\"<h3>%s</h3>\")", { "<Control>3", NULL} }, - { "app.insert_html('<a href=\"this.html\">%s</a>')", { "<Control>h", NULL} }, - { "app.insert_html(\"<p>%s</p>\")", { "<Control>p", NULL} }, - { "app.insert_html(\"<li>%s</li>\")", { "<Control>l", NULL} }, - { "app.insert_html(\"<sup>%s</sup>\")", { "<Control>e", NULL} }, - { "app.insert_html(\"<sub>%s</sub>\")", { "<Control>u", NULL} }, - { "app.insert_char('<div class=\"eq\">\n<p>this</p>\n</div>\')", { "<Control>g", NULL} }, - { "app.insert_char(\"−\")", { "<Control>m", NULL} }, - { "app.insert_char(\"⋅\")", { "<Control>d", NULL} }, - { "app.insert_char(\"⟶⟼⇒\")", { "<Control>y", NULL} }, - { "app.insert_char(\"⇌⟵⇐\")", { "<Control><Shift>y", NULL} }, - { "app.insert_char(\"<br>\")", { "<Control>r", NULL} }, - { "app.insert_char(\" ■□\")", { "<Control>t", NULL} }, + { "app.open", { "<Control>o", NULL} }, + { "app.new", { "<Control>n", NULL} }, + { "app.save", { "<Control>s", NULL} }, + { "app.save_as", { "<Shift><Control>s", NULL} }, + { "app.close", { "<Control>w", NULL} }, + { "app.quit", { "<Control>q", NULL} }, + { "app.find", { "<Control>f", NULL} }, + { "app.insert_html(\"<b>%s</b>\")", { "<Control>b", NULL} }, + { "app.insert_html(\"<i>%s</i>\")", { "<Control>i", NULL} }, + { "app.insert_html(\"<h2>%s</h2>\")", { "<Control>2", NULL} }, + { "app.insert_html(\"<h3>%s</h3>\")", { "<Control>3", NULL} }, + { "app.insert_html('<a href=\"this.html\">%s</a>')", { "<Control>h", NULL} }, + { "app.insert_html(\"<p>%s</p>\")", { "<Control>p", NULL} }, + { "app.insert_html(\"<li>%s</li>\")", { "<Control>l", NULL} }, + { "app.insert_html(\"<sup>%s</sup>\")", { "<Control>e", NULL} }, + { "app.insert_html(\"<sub>%s</sub>\")", { "<Control>u", NULL} }, + { "app.insert_char('<div class=\"eq\">\n<p>this</p>\n</div>\')", { "<Control>g", NULL} }, + { "app.insert_char(\"−\")", { "<Control>m", NULL} }, + { "app.insert_char(\"⋅\")", { "<Control>d", NULL} }, + { "app.insert_char(\"⟶⟼⇒\")", { "<Control>y", NULL} }, + { "app.insert_char(\"⇌⟵⇐\")", { "<Control><Shift>y", NULL} }, + { "app.insert_char(\"<br>\")", { "<Control>r", NULL} }, + { "app.insert_char(\" ■□\")", { "<Control>t", NULL} }, }; g_action_map_add_action_entries(G_ACTION_MAP(app), app_entries, G_N_ELEMENTS(app_entries), app); diff --git a/litosappwin.c b/litosappwin.c index becc8b9..d38a5de 100644 --- a/litosappwin.c +++ b/litosappwin.c @@ -113,13 +113,47 @@ GtkSourceView* currentTabSourceView(LitosAppWindow *win) } static void +prev_match(GtkWidget *close_btn, gpointer user_data) +{ + LitosAppWindow *win = LITOS_APP_WINDOW(user_data); + + if (win->search_context != NULL) + { + GtkTextMark* mark; + GtkSourceBuffer *buffer; + GtkTextIter start, match_start, match_end; + + GtkSourceView *view = currentTabSourceView(win); + + buffer = gtk_source_search_context_get_buffer (win->search_context); + + gtk_text_buffer_get_selection_bounds (GTK_TEXT_BUFFER (buffer), + &match_start, + &start); + + if (gtk_source_search_context_backward (win->search_context, &start, &match_start, &match_end, NULL)) + { + GtkSourceView *source_view = currentTabSourceView(win); + + mark = gtk_text_buffer_get_insert(GTK_TEXT_BUFFER(buffer)); + + SCROLL_TO_MARK + + gtk_text_buffer_select_range (GTK_TEXT_BUFFER (buffer), &match_start, &match_end); + + SCROLL_TO_MARK + } + } +} + +static void next_match(GtkWidget *close_btn, gpointer user_data) { LitosAppWindow *win = LITOS_APP_WINDOW(user_data); if (win->search_context != NULL) { - GtkTextMark* mark = NULL; + GtkTextMark* mark; GtkSourceBuffer *buffer; GtkTextIter start, match_start, match_end; @@ -447,6 +481,7 @@ litos_app_window_init (LitosAppWindow *win) litos_app_window_update_font(); g_signal_connect (GTK_WINDOW(win), "close-request", G_CALLBACK (litos_app_window_quit), win); + g_signal_connect (win->next_button, "clicked", G_CALLBACK(prev_match), win); g_signal_connect (win->next_button, "clicked", G_CALLBACK(next_match), win); g_signal_connect (win->search, "clicked", G_CALLBACK(search_btn_clicked), win); |