[gtkhtml] Images are not displayed in gtkhtml-editor-test



commit 7466e465fbbb235b4077437d4dc45c09674fb163
Author: Milan Crha <mcrha redhat com>
Date:   Wed Aug 26 14:54:56 2015 +0200

    Images are not displayed in gtkhtml-editor-test

 components/editor/main.c |   32 ++++++++++++++++++++++++++++++++
 1 files changed, 32 insertions(+), 0 deletions(-)
---
diff --git a/components/editor/main.c b/components/editor/main.c
index e61ee7a..128b208 100644
--- a/components/editor/main.c
+++ b/components/editor/main.c
@@ -62,6 +62,36 @@ handle_error (GError **error)
        }
 }
 
+static void
+editor_test_url_requested_cb (GtkhtmlEditor *editor,
+                             const gchar *uri,
+                             GtkHTMLStream *stream)
+{
+       GFile *file;
+       gchar *contents = NULL;
+       gsize length = 0;
+       GError *error = NULL;
+
+       g_return_if_fail (uri != NULL);
+       g_return_if_fail (stream != NULL);
+
+       if (*uri == '/')
+               file = g_file_new_for_path (uri);
+       else
+               file = g_file_new_for_uri (uri);
+
+       if (g_file_load_contents (file, NULL, &contents, &length, NULL, &error)) {
+               gtk_html_stream_write (stream, contents, length);
+               gtk_html_stream_close (stream, GTK_HTML_STREAM_OK);
+               g_free (contents);
+       } else
+               gtk_html_stream_close (stream, GTK_HTML_STREAM_ERROR);
+
+       handle_error (&error);
+
+       g_object_unref (file);
+}
+
 static GtkPrintOperationResult
 print (GtkhtmlEditor *editor,
        GtkPrintOperationAction action)
@@ -401,6 +431,8 @@ main (gint argc,
        gtk_ui_manager_ensure_update (manager);
        gtk_widget_show (editor);
 
+       g_signal_connect (editor, "uri-requested", G_CALLBACK (editor_test_url_requested_cb), NULL);
+
        g_signal_connect (
                editor, "destroy",
                G_CALLBACK (gtk_main_quit), NULL);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]