New chat view using gtkwebkit

This changes the text buffer widget to a WebKitWebView so that we can
use web technologies to control the display.

This change comes with a new dependency: libwebkit2gtk-4.0. Should
this dependency not be available on the system, we can also build the
client using libwebkit2gtk-3.0. However, the links won't be clickable.

New features:
 - Implemented delivery reports.
 - Avatars are now displayed in the chat window.
 - Links in the chat window are now clickable.

When the client is launched with the -d option, you may right click on
the chat view to open up the dev tools.

In order to improve performance, one WebKitWebView is re-used for all
of the ChatViews, since we only display one at a time.

Tuleap: #1073
Change-Id: Ic945fa6c92f92e391f0362310ddc2f0fa16641bf
[stepan.salenikovich@savoirfairelinux.com: added change_view(); start
 loading webkit on window init; destroy webkit on dispose; prevent
 warning when dispose is called more than once on ChatView]
Signed-off-by: Stepan Salenikovich <stepan.salenikovich@savoirfairelinux.com>
diff --git a/src/chatview.h b/src/chatview.h
index 60268df..1dfc65d 100644
--- a/src/chatview.h
+++ b/src/chatview.h
@@ -17,10 +17,10 @@
  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA.
  */
 
-#ifndef _CHATVIEW_H
-#define _CHATVIEW_H
+#pragma once
 
 #include <gtk/gtk.h>
+#include "webkitchatcontainer.h"
 
 class Call;
 class ContactMethod;
@@ -39,14 +39,12 @@
 
 
 GType          chat_view_get_type   (void) G_GNUC_CONST;
-GtkWidget     *chat_view_new_call   (Call*);
-GtkWidget     *chat_view_new_cm     (ContactMethod*);
-GtkWidget     *chat_view_new_person (Person* p);
+GtkWidget     *chat_view_new_call   (WebKitChatContainer* view, Call* call);
+GtkWidget     *chat_view_new_cm     (WebKitChatContainer* view, ContactMethod* cm);
+GtkWidget     *chat_view_new_person (WebKitChatContainer* view, Person* p);
 Call          *chat_view_get_call   (ChatView*);
 ContactMethod *chat_view_get_cm     (ChatView*);
 Person        *chat_view_get_person (ChatView*);
 void           chat_view_set_header_visible(ChatView*, gboolean);
 
 G_END_DECLS
-
-#endif /* _CHATVIEW_H */