pidgin/gtkwebview.c

changeset 35671
d1cc97d667a2
parent 35648
6283b3708b03
child 35689
1e257009ac10
child 35731
7a8d87b4e516
equal deleted inserted replaced
35668:ba76659ea73e 35671:d1cc97d667a2
84 gboolean (*activate)(PidginWebView *webview, const char *uri); 84 gboolean (*activate)(PidginWebView *webview, const char *uri);
85 gboolean (*context_menu)(PidginWebView *webview, WebKitDOMHTMLAnchorElement *link, GtkWidget *menu); 85 gboolean (*context_menu)(PidginWebView *webview, WebKitDOMHTMLAnchorElement *link, GtkWidget *menu);
86 } PidginWebViewProtocol; 86 } PidginWebViewProtocol;
87 87
88 struct _PidginWebViewSmiley { 88 struct _PidginWebViewSmiley {
89 gint box_count;
89 gchar *smile; 90 gchar *smile;
90 gchar *file; 91 gchar *file;
91 GdkPixbufAnimation *icon; 92 GdkPixbufAnimation *icon;
92 gboolean hidden; 93 gboolean hidden;
93 GdkPixbufLoader *loader; 94 GdkPixbufLoader *loader;
670 } else { 671 } else {
671 pidgin_webview_append_html(webview, smiley); 672 pidgin_webview_append_html(webview, smiley);
672 } 673 }
673 674
674 g_free(unescaped); 675 g_free(unescaped);
676 }
677
678 /**************************************************************************
679 * PidginWebViewSmiley GBoxed code
680 **************************************************************************/
681
682 static PidginWebViewSmiley *
683 pidgin_webview_smiley_ref(PidginWebViewSmiley *smiley)
684 {
685 g_return_val_if_fail(smiley != NULL, NULL);
686
687 smiley->box_count++;
688
689 return smiley;
690 }
691
692 static void
693 pidgin_webview_smiley_unref(PidginWebViewSmiley *smiley)
694 {
695 g_return_if_fail(smiley != NULL);
696 g_return_if_fail(smiley->box_count >= 0);
697
698 if (!smiley->box_count--)
699 pidgin_webview_smiley_destroy(smiley);
700 }
701
702 GType
703 pidgin_webview_smiley_get_type(void)
704 {
705 static GType type = 0;
706
707 if (type == 0) {
708 type = g_boxed_type_register_static("PidginWebViewSmiley",
709 (GBoxedCopyFunc)pidgin_webview_smiley_ref,
710 (GBoxedFreeFunc)pidgin_webview_smiley_unref);
711 }
712
713 return type;
675 } 714 }
676 715
677 /****************************************************************************** 716 /******************************************************************************
678 * Helpers 717 * Helpers
679 *****************************************************************************/ 718 *****************************************************************************/

mercurial