[Xfce4-commits] [apps/xfce4-screenshooter] 01/01: Add support to markdown snippet in imgur upload dialog

noreply at xfce.org noreply at xfce.org
Mon Dec 17 02:19:56 CET 2018


This is an automated email from the git hooks/post-receive script.

a   n   d   r   e       p   u   s   h   e   d       a       c   o   m   m   i   t       t   o       b   r   a   n   c   h       m   a   s   t   e   r   
   in repository apps/xfce4-screenshooter.

commit fabb4c079abed422622ea0add6b52a408a8c466a
Author: Andre Miranda <andreldm at xfce.org>
Date:   Sun Dec 16 22:18:36 2018 -0300

    Add support to markdown snippet in imgur upload dialog
---
 lib/screenshooter-imgur-dialog.c  |  9 ++++++++-
 lib/screenshooter-imgur-dialog.ui | 18 +++++++++++++++++-
 2 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/lib/screenshooter-imgur-dialog.c b/lib/screenshooter-imgur-dialog.c
index 340ea70..64fd706 100644
--- a/lib/screenshooter-imgur-dialog.c
+++ b/lib/screenshooter-imgur-dialog.c
@@ -36,7 +36,7 @@ struct _ScreenshooterImgurDialog
 
   gchar *image_url, *thumbnail_url, *small_thumbnail_url;
   gchar *delete_link;
-  GtkToggleButton *embed_html_toggle, *embed_bb_code_toggle;
+  GtkToggleButton *embed_html_toggle, *embed_markdown_toggle, *embed_bb_code_toggle;
   GtkToggleButton *embed_tiny_toggle, *embed_medium_toggle, *embed_full_toggle;
   GtkToggleButton *embed_link_full_size_toggle;
   GtkTextView *embed_text_view;
@@ -163,6 +163,7 @@ screenshooter_imgur_dialog_new (const gchar *upload_name,
   // Embed tab
 
   self->embed_html_toggle = GTK_TOGGLE_BUTTON (gtk_builder_get_object (builder, "embed_html_toggle"));
+  self->embed_markdown_toggle = GTK_TOGGLE_BUTTON (gtk_builder_get_object (builder, "embed_markdown_toggle"));
   self->embed_bb_code_toggle = GTK_TOGGLE_BUTTON (gtk_builder_get_object (builder, "embed_bb_code_toggle"));
   self->embed_tiny_toggle = GTK_TOGGLE_BUTTON (gtk_builder_get_object (builder, "embed_tiny_toggle"));
   self->embed_medium_toggle = GTK_TOGGLE_BUTTON (gtk_builder_get_object (builder, "embed_medium_toggle"));
@@ -171,6 +172,7 @@ screenshooter_imgur_dialog_new (const gchar *upload_name,
 
   // Regenerate the embed text when any togglebutton on the embed tab is toggled
   g_signal_connect (self->embed_html_toggle, "toggled", (GCallback) cb_generate_embed_text, (gpointer) self);
+  g_signal_connect (self->embed_markdown_toggle, "toggled", (GCallback) cb_generate_embed_text, (gpointer) self);
   g_signal_connect (self->embed_bb_code_toggle, "toggled", (GCallback) cb_generate_embed_text, (gpointer) self);
   g_signal_connect (self->embed_tiny_toggle, "toggled", (GCallback) cb_generate_embed_text, (gpointer) self);
   g_signal_connect (self->embed_medium_toggle, "toggled", (GCallback) cb_generate_embed_text, (gpointer) self);
@@ -323,6 +325,11 @@ cb_generate_embed_text (GtkWidget* widget, gpointer user_data)
       text = g_markup_printf_escaped ("<a href=\"%s\">\n  <img src=\"%s\" />\n</a>", dialog->image_url, link);
     else
       text = g_markup_printf_escaped ("<img src=\"%s\" />", link);
+  else if (gtk_toggle_button_get_active (dialog->embed_markdown_toggle))
+    if (link_to_full_size)
+      text = g_strdup_printf ("[![%s](%s)](%s)", dialog->image_url, link, link);
+    else
+      text = g_strdup_printf ("![%s](%s)", dialog->image_url, link);
   else if (gtk_toggle_button_get_active (dialog->embed_bb_code_toggle))
     if (link_to_full_size)
       text = g_strdup_printf ("[url=%s]\n  [img]%s[/img]\n[/url]", dialog->image_url, link);
diff --git a/lib/screenshooter-imgur-dialog.ui b/lib/screenshooter-imgur-dialog.ui
index 6deaa1b..7fa626e 100644
--- a/lib/screenshooter-imgur-dialog.ui
+++ b/lib/screenshooter-imgur-dialog.ui
@@ -240,6 +240,22 @@
               </packing>
             </child>
             <child>
+              <object class="GtkRadioButton" id="embed_markdown_toggle">
+                <property name="label" translatable="yes">Markdown</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">False</property>
+                <property name="active">True</property>
+                <property name="draw_indicator">False</property>
+                <property name="group">embed_html_toggle</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
               <object class="GtkRadioButton" id="embed_bb_code_toggle">
                 <property name="label" translatable="yes">BBCODE</property>
                 <property name="visible">True</property>
@@ -252,7 +268,7 @@
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">True</property>
-                <property name="position">1</property>
+                <property name="position">2</property>
               </packing>
             </child>
           </object>

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Xfce4-commits mailing list