| 5051 if (icon) { |
5051 if (icon) { |
| 5052 char *text = g_strdup(unescaped); /* Do not g_free 'text'. |
5052 char *text = g_strdup(unescaped); /* Do not g_free 'text'. |
| 5053 It will be destroyed when 'anchor' is destroyed. */ |
5053 It will be destroyed when 'anchor' is destroyed. */ |
| 5054 anchor = gtk_text_buffer_create_child_anchor(imhtml->text_buffer, iter); |
5054 anchor = gtk_text_buffer_create_child_anchor(imhtml->text_buffer, iter); |
| 5055 g_object_set_data_full(G_OBJECT(anchor), "gtkimhtml_plaintext", text, g_free); |
5055 g_object_set_data_full(G_OBJECT(anchor), "gtkimhtml_plaintext", text, g_free); |
| 5056 g_object_set_data(G_OBJECT(anchor), "gtkimhtml_tiptext", text); |
5056 g_object_set_data_full(G_OBJECT(anchor), "gtkimhtml_tiptext", g_strdup(text), g_free); |
| 5057 g_object_set_data_full(G_OBJECT(anchor), "gtkimhtml_htmltext", g_strdup(smiley), g_free); |
5057 g_object_set_data_full(G_OBJECT(anchor), "gtkimhtml_htmltext", g_strdup(smiley), g_free); |
| 5058 |
5058 |
| 5059 /* This catches the expose events generated by animated |
5059 /* This catches the expose events generated by animated |
| 5060 * images, and ensures that they are handled by the image |
5060 * images, and ensures that they are handled by the image |
| 5061 * itself, without propagating to the textview and causing |
5061 * itself, without propagating to the textview and causing |