[yelp] Remove deprecated method of doing private structs on gobjects



commit e6e3f2547abb0993d08e50688b163eea5b230096
Author: Shaun McCance <shaunm gnome org>
Date:   Mon Mar 9 19:37:19 2020 -0400

    Remove deprecated method of doing private structs on gobjects

 libyelp/yelp-docbook-document.c | 46 +++++++++++------------
 libyelp/yelp-document.c         | 26 ++++++-------
 libyelp/yelp-document.h         | 10 ++---
 libyelp/yelp-help-list.c        | 23 +++++-------
 libyelp/yelp-info-document.c    | 33 ++++++++--------
 libyelp/yelp-mallard-document.c | 49 ++++++++++++------------
 libyelp/yelp-man-document.c     | 29 +++++++-------
 libyelp/yelp-man-parser.c       |  2 +-
 libyelp/yelp-search-entry.c     | 35 ++++++++---------
 libyelp/yelp-settings.c         | 11 ++----
 libyelp/yelp-settings.h         | 12 +++---
 libyelp/yelp-simple-document.c  | 11 ++----
 libyelp/yelp-simple-document.h  | 10 ++---
 libyelp/yelp-sqlite-storage.c   | 35 ++++++++++-------
 libyelp/yelp-transform.c        | 43 ++++++++++-----------
 libyelp/yelp-uri.c              | 83 ++++++++++++++++++++---------------------
 libyelp/yelp-view.c             | 75 ++++++++++++++++++-------------------
 src/yelp-application.c          | 34 ++++++++---------
 src/yelp-window.c               | 77 ++++++++++++++++++--------------------
 19 files changed, 314 insertions(+), 330 deletions(-)
---
diff --git a/libyelp/yelp-docbook-document.c b/libyelp/yelp-docbook-document.c
index 62f40611..f4ff88ac 100644
--- a/libyelp/yelp-docbook-document.c
+++ b/libyelp/yelp-docbook-document.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2003-2009 Shaun McCance  <shaunm gnome org>
+ * Copyright (C) 2003-2020 Shaun McCance  <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -94,9 +94,6 @@ static void           transform_error           (YelpTransform        *transform
 static void           transform_finalized       (YelpDocbookDocument  *docbook,
                                                  gpointer              transform);
 
-G_DEFINE_TYPE (YelpDocbookDocument, yelp_docbook_document, YELP_TYPE_DOCUMENT)
-#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_DOCBOOK_DOCUMENT, 
YelpDocbookDocumentPrivate))
-
 typedef struct _YelpDocbookDocumentPrivate  YelpDocbookDocumentPrivate;
 struct _YelpDocbookDocumentPrivate {
     DocbookState   state;
@@ -129,6 +126,8 @@ struct _YelpDocbookDocumentPrivate {
     GHashTable   *autoids;
 };
 
+G_DEFINE_TYPE_WITH_PRIVATE (YelpDocbookDocument, yelp_docbook_document, YELP_TYPE_DOCUMENT)
+
 /******************************************************************************/
 
 static void
@@ -155,14 +154,12 @@ yelp_docbook_document_class_init (YelpDocbookDocumentClass *klass)
 
     document_class->index = docbook_index;
     document_class->request_page = docbook_request_page;
-
-    g_type_class_add_private (klass, sizeof (YelpDocbookDocumentPrivate));
 }
 
 static void
 yelp_docbook_document_init (YelpDocbookDocument *docbook)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
 
     priv->state = DOCBOOK_STATE_BLANK;
     priv->autoids = NULL;
@@ -174,7 +171,8 @@ static void
 yelp_docbook_document_dispose (GObject *object)
 {
     gint i;
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (object);
+    YelpDocbookDocumentPrivate *priv =
+        yelp_docbook_document_get_instance_private (YELP_DOCBOOK_DOCUMENT (object));
 
     if (priv->monitors != NULL) {
         for (i = 0; priv->monitors[i]; i++) {
@@ -190,7 +188,8 @@ yelp_docbook_document_dispose (GObject *object)
 static void
 yelp_docbook_document_finalize (GObject *object)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (object);
+    YelpDocbookDocumentPrivate *priv =
+        yelp_docbook_document_get_instance_private (YELP_DOCBOOK_DOCUMENT (object));
 
     if (priv->xmldoc)
         xmlFreeDoc (priv->xmldoc);
@@ -221,7 +220,7 @@ yelp_docbook_document_new (YelpUri *uri)
     docbook = (YelpDocbookDocument *) g_object_new (YELP_TYPE_DOCBOOK_DOCUMENT,
                                                     "document-uri", uri,
                                                     NULL);
-    priv = GET_PRIV (docbook);
+    priv = yelp_docbook_document_get_instance_private (docbook);
 
     path = yelp_uri_get_search_path (uri);
     priv->monitors = g_new0 (GFileMonitor*, g_strv_length (path) + 1);
@@ -250,7 +249,8 @@ docbook_request_page (YelpDocument         *document,
                       gpointer              user_data,
                       GDestroyNotify        notify)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (document);
+    YelpDocbookDocumentPrivate *priv =
+        yelp_docbook_document_get_instance_private (YELP_DOCBOOK_DOCUMENT (document));
     gchar *docuri;
     GError *error;
     gboolean handled;
@@ -311,7 +311,7 @@ docbook_request_page (YelpDocument         *document,
 static void
 docbook_process (YelpDocbookDocument *docbook)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
     YelpDocument *document = YELP_DOCUMENT (docbook);
     GFile *file = NULL;
     gchar *filepath = NULL;
@@ -469,7 +469,7 @@ docbook_process (YelpDocbookDocument *docbook)
 static void
 docbook_disconnect (YelpDocbookDocument *docbook)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
     if (priv->chunk_ready) {
         g_signal_handler_disconnect (priv->transform, priv->chunk_ready);
         priv->chunk_ready = 0;
@@ -491,7 +491,7 @@ docbook_disconnect (YelpDocbookDocument *docbook)
 static gboolean
 docbook_reload (YelpDocbookDocument *docbook)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
 
     if (priv->index_running || priv->process_running || priv->transform_running)
         return TRUE;
@@ -521,7 +521,7 @@ docbook_monitor_changed   (GFileMonitor         *monitor,
                            GFileMonitorEvent     event_type,
                            YelpDocbookDocument  *docbook)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
 
     if (g_get_monotonic_time() - priv->reload_time < 1000)
         return;
@@ -546,7 +546,7 @@ docbook_walk (YelpDocbookDocument *docbook)
     xmlChar     *keywords = NULL;
     xmlNodePtr   cur, old_cur;
     gboolean chunkQ;
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
     YelpDocument *document = YELP_DOCUMENT (docbook);
 
     debug_print (DB_FUNCTION, "entering\n");
@@ -853,7 +853,7 @@ transform_chunk_ready (YelpTransform       *transform,
                        gchar               *chunk_id,
                        YelpDocbookDocument *docbook)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
     gchar *content;
 
     debug_print (DB_FUNCTION, "entering\n");
@@ -880,7 +880,7 @@ static void
 transform_finished (YelpTransform       *transform,
                     YelpDocbookDocument *docbook)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
     YelpDocument *document = YELP_DOCUMENT (docbook);
     gchar *docuri;
     GError *error;
@@ -916,7 +916,7 @@ static void
 transform_error (YelpTransform       *transform,
                  YelpDocbookDocument *docbook)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
     GError *error;
 
     debug_print (DB_FUNCTION, "entering\n");
@@ -938,7 +938,7 @@ static void
 transform_finalized (YelpDocbookDocument *docbook,
                      gpointer             transform)
 {
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
 
     debug_print (DB_FUNCTION, "entering\n");
 
@@ -1007,7 +1007,7 @@ docbook_index_chunk (DocbookIndexData *index)
     gchar *title = NULL;
     gchar *keywords;
     GSList *chunks = NULL;
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (index->docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (index->docbook);
 
     id = xmlGetProp (index->cur, BAD_CAST "id");
     if (!id)
@@ -1092,7 +1092,7 @@ docbook_index_threaded (YelpDocbookDocument *docbook)
     GFile *file = NULL;
     gchar *filename = NULL;
     YelpUri *uri;
-    YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook);
+    YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook);
 
     uri = yelp_document_get_uri (YELP_DOCUMENT (docbook));
     file = yelp_uri_get_file (uri);
@@ -1153,7 +1153,7 @@ docbook_index (YelpDocument *document)
     if (done)
         return;
 
-    priv = GET_PRIV (document);
+    priv = yelp_docbook_document_get_instance_private (YELP_DOCBOOK_DOCUMENT (document));
     g_object_ref (document);
     priv->index = g_thread_new ("docbook-index",
                                 (GThreadFunc)(GCallback) docbook_index_threaded,
diff --git a/libyelp/yelp-document.c b/libyelp/yelp-document.c
index 83582eaf..0a86f3f7 100644
--- a/libyelp/yelp-document.c
+++ b/libyelp/yelp-document.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2003-2009 Shaun McCance  <shaunm gnome org>
+ * Copyright (C) 2003-2020 Shaun McCance  <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -64,7 +64,7 @@ struct _Hash {
     GDestroyNotify  destroy;
 };
 
-struct _YelpDocumentPriv {
+struct _YelpDocumentPrivate {
     GMutex  mutex;
 
     GSList *reqs_all;         /* Holds canonical refs, only free from here */
@@ -97,9 +97,7 @@ struct _YelpDocumentPriv {
     GError *idle_error;
 };
 
-G_DEFINE_TYPE (YelpDocument, yelp_document, G_TYPE_OBJECT)
-
-#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_DOCUMENT, YelpDocumentPriv))
+G_DEFINE_TYPE_WITH_PRIVATE (YelpDocument, yelp_document, G_TYPE_OBJECT)
 
 static void           yelp_document_dispose     (GObject              *object);
 static void           yelp_document_finalize    (GObject              *object);
@@ -292,16 +290,14 @@ yelp_document_class_init (YelpDocumentClass *klass)
                                                           YELP_TYPE_URI,
                                                           G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE |
                                                           G_PARAM_STATIC_STRINGS));
-
-    g_type_class_add_private (klass, sizeof (YelpDocumentPriv));
 }
 
 static void
 yelp_document_init (YelpDocument *document)
 {
-    YelpDocumentPriv *priv;
+    YelpDocumentPrivate *priv;
 
-    document->priv = priv = GET_PRIV (document);
+    document->priv = priv = yelp_document_get_instance_private (document);
 
     g_mutex_init (&priv->mutex);
 
@@ -1263,7 +1259,7 @@ yelp_document_signal (YelpDocument       *document,
 static gboolean
 yelp_document_error_pending_idle (YelpDocument *document)
 {
-    YelpDocumentPriv *priv = GET_PRIV (document);
+    YelpDocumentPrivate *priv = yelp_document_get_instance_private (document);
     GSList *cur;
     Request *request;
 
@@ -1291,7 +1287,7 @@ void
 yelp_document_error_pending (YelpDocument *document,
                             const GError *error)
 {
-    YelpDocumentPriv *priv = GET_PRIV (document);
+    YelpDocumentPrivate *priv = yelp_document_get_instance_private (document);
 
     g_assert (document != NULL && YELP_IS_DOCUMENT (document));
 
@@ -1433,7 +1429,7 @@ static gboolean
 request_idle_contents (Request *request)
 {
     YelpDocument *document;
-    YelpDocumentPriv *priv;
+    YelpDocumentPrivate *priv;
     YelpDocumentCallback callback = NULL;
     gpointer user_data;
 
@@ -1445,7 +1441,7 @@ request_idle_contents (Request *request)
     }
 
     document = g_object_ref (request->document);
-    priv = GET_PRIV (document);
+    priv = yelp_document_get_instance_private (document);
 
     g_mutex_lock (&document->priv->mutex);
 
@@ -1499,7 +1495,7 @@ static gboolean
 request_idle_error (Request *request)
 {
     YelpDocument *document;
-    YelpDocumentPriv *priv;
+    YelpDocumentPrivate *priv;
     YelpDocumentCallback callback = NULL;
     GError *error = NULL;
     gpointer user_data;
@@ -1512,7 +1508,7 @@ request_idle_error (Request *request)
     }
 
     document = g_object_ref (request->document);
-    priv = GET_PRIV (document);
+    priv = yelp_document_get_instance_private (document);
 
     g_mutex_lock (&priv->mutex);
 
diff --git a/libyelp/yelp-document.h b/libyelp/yelp-document.h
index 8ee9203e..d4db68c5 100644
--- a/libyelp/yelp-document.h
+++ b/libyelp/yelp-document.h
@@ -35,9 +35,9 @@ G_BEGIN_DECLS
 #define YELP_IS_DOCUMENT_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), YELP_TYPE_DOCUMENT))
 #define YELP_DOCUMENT_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), YELP_TYPE_DOCUMENT, YelpDocumentClass))
 
-typedef struct _YelpDocument      YelpDocument;
-typedef struct _YelpDocumentClass YelpDocumentClass;
-typedef struct _YelpDocumentPriv  YelpDocumentPriv;
+typedef struct _YelpDocument         YelpDocument;
+typedef struct _YelpDocumentClass    YelpDocumentClass;
+typedef struct _YelpDocumentPrivate  YelpDocumentPrivate;
 
 typedef enum {
     YELP_DOCUMENT_SIGNAL_CONTENTS,
@@ -51,8 +51,8 @@ typedef void      (*YelpDocumentCallback)      (YelpDocument         *document,
                                                 GError               *error);
 
 struct _YelpDocument {
-    GObject           parent;
-    YelpDocumentPriv *priv;
+    GObject              parent;
+    YelpDocumentPrivate *priv;
 };
 
 struct _YelpDocumentClass {
diff --git a/libyelp/yelp-help-list.c b/libyelp/yelp-help-list.c
index cbac98bf..7c21ab1f 100644
--- a/libyelp/yelp-help-list.c
+++ b/libyelp/yelp-help-list.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2010 Shaun McCance  <shaunm gnome org>
+ * Copyright (C) 2010-2020 Shaun McCance  <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -85,9 +85,6 @@ help_list_entry_cmp (HelpListEntry *a, HelpListEntry *b)
     return g_utf8_collate (as, bs);
 }
 
-G_DEFINE_TYPE (YelpHelpList, yelp_help_list, YELP_TYPE_DOCUMENT)
-#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_HELP_LIST, YelpHelpListPrivate))
-
 typedef struct _YelpHelpListPrivate  YelpHelpListPrivate;
 struct _YelpHelpListPrivate {
     GMutex         mutex;
@@ -105,6 +102,8 @@ struct _YelpHelpListPrivate {
     xmlXPathCompExprPtr  get_mallard_desc;
 };
 
+G_DEFINE_TYPE_WITH_PRIVATE (YelpHelpList, yelp_help_list, YELP_TYPE_DOCUMENT)
+
 static void
 yelp_help_list_class_init (YelpHelpListClass *klass)
 {
@@ -115,14 +114,12 @@ yelp_help_list_class_init (YelpHelpListClass *klass)
     object_class->finalize = yelp_help_list_finalize;
 
     document_class->request_page = help_list_request_page;
-
-    g_type_class_add_private (klass, sizeof (YelpHelpListPrivate));
 }
 
 static void
 yelp_help_list_init (YelpHelpList *list)
 {
-    YelpHelpListPrivate *priv = GET_PRIV (list);
+    YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (list);
 
     g_mutex_init (&priv->mutex);
     priv->entries = g_hash_table_new_full (g_str_hash, g_str_equal,
@@ -152,7 +149,7 @@ yelp_help_list_dispose (GObject *object)
 static void
 yelp_help_list_finalize (GObject *object)
 {
-    YelpHelpListPrivate *priv = GET_PRIV (object);
+    YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (YELP_HELP_LIST (object));
 
     g_hash_table_destroy (priv->entries);
     g_mutex_clear (&priv->mutex);
@@ -184,7 +181,7 @@ help_list_request_page (YelpDocument          *document,
                         GDestroyNotify         notify)
 {
     gboolean handled;
-    YelpHelpListPrivate *priv = GET_PRIV (document);
+    YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (YELP_HELP_LIST (document));
 
     if (page_id == NULL)
         page_id = "index";
@@ -223,7 +220,7 @@ help_list_think (YelpHelpList *list)
 {
     const gchar * const *sdatadirs = g_get_system_data_dirs ();
     const gchar * const *langs = g_get_language_names ();
-    YelpHelpListPrivate *priv = GET_PRIV (list);
+    YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (list);
     /* The strings are still owned by GLib; we just own the array. */
     gchar **datadirs;
     gint datadir_i, lang_i;
@@ -445,7 +442,7 @@ help_list_handle_page (YelpHelpList *list,
 {
     gchar **colors, *tmp;
     GList *cur;
-    YelpHelpListPrivate *priv = GET_PRIV (list);
+    YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (list);
     GtkTextDirection direction = gtk_widget_get_default_direction ();
     GString *string = g_string_new
         ("<html xmlns=\"http://www.w3.org/1999/xhtml\";><head><style type='text/css'>\n"
@@ -610,7 +607,7 @@ help_list_process_docbook (YelpHelpList  *list,
     xmlDocPtr xmldoc;
     xmlXPathContextPtr xpath;
     xmlXPathObjectPtr obj = NULL;
-    YelpHelpListPrivate *priv = GET_PRIV (list);
+    YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (list);
 
     parserCtxt = xmlNewParserCtxt ();
     xmldoc = xmlCtxtReadFile (parserCtxt,
@@ -649,7 +646,7 @@ help_list_process_mallard (YelpHelpList  *list,
     xmlDocPtr xmldoc;
     xmlXPathContextPtr xpath;
     xmlXPathObjectPtr obj = NULL;
-    YelpHelpListPrivate *priv = GET_PRIV (list);
+    YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (list);
 
     parserCtxt = xmlNewParserCtxt ();
     xmldoc = xmlCtxtReadFile (parserCtxt,
diff --git a/libyelp/yelp-info-document.c b/libyelp/yelp-info-document.c
index d55be325..0f89f66a 100644
--- a/libyelp/yelp-info-document.c
+++ b/libyelp/yelp-info-document.c
@@ -1,7 +1,7 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
  * Copyright (C) 2007 Don Scorgie <dscorgie svn gnome org>
- * Copyright (C) 2010 Shaun McCance <shaunm gnome org>
+ * Copyright (C) 2010-2020 Shaun McCance <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -66,6 +66,7 @@ struct _YelpInfoDocumentPrivate {
     gchar   *visit_prev_id;
 };
 
+G_DEFINE_TYPE_WITH_PRIVATE (YelpInfoDocument, yelp_info_document, YELP_TYPE_DOCUMENT)
 
 static void           yelp_info_document_dispose          (GObject                *object);
 static void           yelp_info_document_finalize         (GObject                *object);
@@ -97,9 +98,6 @@ static gboolean       info_sections_visit       (GtkTreeModel         *model,
 static void           info_document_disconnect  (YelpInfoDocument     *info);
 
 
-G_DEFINE_TYPE (YelpInfoDocument, yelp_info_document, YELP_TYPE_DOCUMENT)
-#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_INFO_DOCUMENT, 
YelpInfoDocumentPrivate))
-
 static void
 yelp_info_document_class_init (YelpInfoDocumentClass *klass)
 {
@@ -110,14 +108,12 @@ yelp_info_document_class_init (YelpInfoDocumentClass *klass)
     object_class->finalize = yelp_info_document_finalize;
 
     document_class->request_page = info_request_page;
-
-    g_type_class_add_private (klass, sizeof (YelpInfoDocumentPrivate));
 }
 
 static void
 yelp_info_document_init (YelpInfoDocument *info)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (info);
+    YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info);
 
     priv->state = INFO_STATE_BLANK;
     priv->xmldoc = NULL;
@@ -127,7 +123,8 @@ yelp_info_document_init (YelpInfoDocument *info)
 static void
 yelp_info_document_dispose (GObject *object)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (object);
+    YelpInfoDocumentPrivate *priv =
+        yelp_info_document_get_instance_private (YELP_INFO_DOCUMENT (object));
 
     if (priv->sections) {
         g_object_unref (priv->sections);
@@ -145,7 +142,8 @@ yelp_info_document_dispose (GObject *object)
 static void
 yelp_info_document_finalize (GObject *object)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (object);
+    YelpInfoDocumentPrivate *priv =
+        yelp_info_document_get_instance_private (YELP_INFO_DOCUMENT (object));
 
     if (priv->xmldoc)
         xmlFreeDoc (priv->xmldoc);
@@ -182,7 +180,8 @@ info_request_page (YelpDocument         *document,
                    gpointer              user_data,
                    GDestroyNotify        notify)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (document);
+    YelpInfoDocumentPrivate *priv =
+        yelp_info_document_get_instance_private (YELP_INFO_DOCUMENT (document));
     gchar *docuri;
     GError *error;
     gboolean handled;
@@ -244,7 +243,7 @@ transform_chunk_ready (YelpTransform    *transform,
                        gchar            *chunk_id,
                        YelpInfoDocument *info)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (info);
+    YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info);
     gchar *content;
 
     g_assert (transform == priv->transform);
@@ -274,7 +273,7 @@ static void
 transform_finished (YelpTransform    *transform,
                     YelpInfoDocument *info)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (info);
+    YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info);
     gchar *docuri;
     GError *error;
 
@@ -309,7 +308,7 @@ static void
 transform_error (YelpTransform    *transform,
                  YelpInfoDocument *info)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (info);
+    YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info);
     GError *error;
 
     g_assert (transform == priv->transform);
@@ -330,7 +329,7 @@ static void
 transform_finalized (YelpInfoDocument *info,
                      gpointer          transform)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (info);
+    YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info);
  
     if (priv->xmldoc)
        xmlFreeDoc (priv->xmldoc);
@@ -345,7 +344,7 @@ transform_finalized (YelpInfoDocument *info,
 static void
 info_document_process (YelpInfoDocument *info)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (info);
+    YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info);
     GFile *file = NULL;
     gchar *filepath = NULL;
     GError *error;
@@ -429,7 +428,7 @@ info_sections_visit (GtkTreeModel     *model,
                      GtkTreeIter      *iter,
                      YelpInfoDocument *info)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (info);
+    YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info);
     gchar *page_id, *title;
 
     gtk_tree_model_get (model, iter,
@@ -458,7 +457,7 @@ info_sections_visit (GtkTreeModel     *model,
 static void
 info_document_disconnect (YelpInfoDocument *info)
 {
-    YelpInfoDocumentPrivate *priv = GET_PRIV (info);
+    YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info);
     if (priv->chunk_ready) {
         g_signal_handler_disconnect (priv->transform, priv->chunk_ready);
         priv->chunk_ready = 0;
diff --git a/libyelp/yelp-mallard-document.c b/libyelp/yelp-mallard-document.c
index b1565580..f417a361 100644
--- a/libyelp/yelp-mallard-document.c
+++ b/libyelp/yelp-mallard-document.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2009 Shaun McCance  <shaunm gnome org>
+ * Copyright (C) 2009-2020 Shaun McCance  <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -115,9 +115,6 @@ static gboolean       xml_node_is_ns_name       (xmlNodePtr            node,
                                                  const xmlChar        *name);
 
 
-G_DEFINE_TYPE (YelpMallardDocument, yelp_mallard_document, YELP_TYPE_DOCUMENT)
-#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_MALLARD_DOCUMENT, 
YelpMallardDocumentPrivate))
-
 typedef struct _YelpMallardDocumentPrivate  YelpMallardDocumentPrivate;
 struct _YelpMallardDocumentPrivate {
     MallardState   state;
@@ -139,6 +136,8 @@ struct _YelpMallardDocumentPrivate {
     xmlXPathCompExprPtr  normalize;
 };
 
+G_DEFINE_TYPE_WITH_PRIVATE (YelpMallardDocument, yelp_mallard_document, YELP_TYPE_DOCUMENT)
+
 /******************************************************************************/
 
 static void
@@ -152,14 +151,12 @@ yelp_mallard_document_class_init (YelpMallardDocumentClass *klass)
 
     document_class->request_page = mallard_request_page;
     document_class->index = mallard_index;
-
-    g_type_class_add_private (klass, sizeof (YelpMallardDocumentPrivate));
 }
 
 static void
 yelp_mallard_document_init (YelpMallardDocument *mallard)
 {
-    YelpMallardDocumentPrivate *priv = GET_PRIV (mallard);
+    YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (mallard);
     xmlNodePtr cur;
 
     g_mutex_init (&priv->mutex);
@@ -185,7 +182,8 @@ static void
 yelp_mallard_document_dispose (GObject *object)
 {
     gint i;
-    YelpMallardDocumentPrivate *priv = GET_PRIV (object);
+    YelpMallardDocumentPrivate *priv =
+        yelp_mallard_document_get_instance_private (YELP_MALLARD_DOCUMENT (object));
 
     if (priv->monitors != NULL) {
         for (i = 0; priv->monitors[i]; i++) {
@@ -201,7 +199,8 @@ yelp_mallard_document_dispose (GObject *object)
 static void
 yelp_mallard_document_finalize (GObject *object)
 {
-    YelpMallardDocumentPrivate *priv = GET_PRIV (object);
+    YelpMallardDocumentPrivate *priv =
+        yelp_mallard_document_get_instance_private (YELP_MALLARD_DOCUMENT (object));
 
     g_mutex_clear (&priv->mutex);
     g_hash_table_destroy (priv->pages_hash);
@@ -228,7 +227,7 @@ yelp_mallard_document_new (YelpUri *uri)
     mallard = (YelpMallardDocument *) g_object_new (YELP_TYPE_MALLARD_DOCUMENT,
                                                     "document-uri", uri,
                                                     NULL);
-    priv = GET_PRIV (mallard);
+    priv = yelp_mallard_document_get_instance_private (mallard);
 
     yelp_document_set_page_id ((YelpDocument *) mallard, NULL, "index");
     yelp_document_set_page_id ((YelpDocument *) mallard, "index", "index");
@@ -259,7 +258,8 @@ mallard_request_page (YelpDocument         *document,
                       gpointer              user_data,
                       GDestroyNotify        notify)
 {
-    YelpMallardDocumentPrivate *priv = GET_PRIV (document);
+    YelpMallardDocumentPrivate *priv =
+        yelp_mallard_document_get_instance_private (YELP_MALLARD_DOCUMENT (document));
     gchar *docuri;
     GError *error;
     gboolean handled;
@@ -326,7 +326,7 @@ mallard_request_page (YelpDocument         *document,
 static void
 mallard_think (YelpMallardDocument *mallard)
 {
-    YelpMallardDocumentPrivate *priv = GET_PRIV (mallard);
+    YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (mallard);
     GError *error = NULL;
     gboolean editor_mode;
 
@@ -442,7 +442,7 @@ mallard_try_run (YelpMallardDocument *mallard,
                  const gchar         *page_id)
 {
     /* We expect to be in a locked mutex when this function is called. */
-    YelpMallardDocumentPrivate *priv = GET_PRIV (mallard);
+    YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (mallard);
     MallardPageData *page_data = NULL;
     gchar *real_id = NULL;
     GError *error;
@@ -507,7 +507,7 @@ mallard_page_data_cancel (MallardPageData *page_data)
 static void
 mallard_page_data_walk (MallardPageData *page_data)
 {
-    YelpMallardDocumentPrivate *priv = GET_PRIV (page_data->mallard);
+    YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (page_data->mallard);
     xmlParserCtxtPtr parserCtxt = NULL;
     xmlChar *id = NULL;
 
@@ -649,7 +649,8 @@ mallard_page_data_info (MallardPageData *page_data,
                 if (xmlStrEqual (type, BAD_CAST "sort"))
                     page_data->sort_title = TRUE;
                 if (xmlStrEqual (type, BAD_CAST "text")) {
-                    YelpMallardDocumentPrivate *priv = GET_PRIV (page_data->mallard);
+                    YelpMallardDocumentPrivate *priv =
+                        yelp_mallard_document_get_instance_private (page_data->mallard);
                     xmlXPathObjectPtr obj;
                     page_data->xpath->node = child;
                     obj = xmlXPathCompiledEval (priv->normalize, page_data->xpath);
@@ -663,7 +664,7 @@ mallard_page_data_info (MallardPageData *page_data,
             }
         }
         else if (xml_node_is_ns_name (child, MALLARD_NS, BAD_CAST "desc")) {
-            YelpMallardDocumentPrivate *priv = GET_PRIV (page_data->mallard);
+            YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private 
(page_data->mallard);
             xmlXPathObjectPtr obj;
             page_data->xpath->node = child;
             obj = xmlXPathCompiledEval (priv->normalize, page_data->xpath);
@@ -676,7 +677,7 @@ mallard_page_data_info (MallardPageData *page_data,
         else if (xml_node_is_ns_name (child, MALLARD_NS, BAD_CAST "keywords")) {
             /* FIXME: multiple keywords? same for desc/title */
 
-            YelpMallardDocumentPrivate *priv = GET_PRIV (page_data->mallard);
+            YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private 
(page_data->mallard);
             xmlXPathObjectPtr obj;
             page_data->xpath->node = child;
             obj = xmlXPathCompiledEval (priv->normalize, page_data->xpath);
@@ -721,7 +722,7 @@ static void
 mallard_page_data_run (MallardPageData *page_data)
 {
     YelpSettings *settings = yelp_settings_get_default ();
-    YelpMallardDocumentPrivate *priv = GET_PRIV (page_data->mallard);
+    YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (page_data->mallard);
     gchar **params = NULL;
 
     mallard_page_data_cancel (page_data);
@@ -790,7 +791,7 @@ transform_chunk_ready (YelpTransform   *transform,
               YELP_IS_MALLARD_DOCUMENT (page_data->mallard));
     g_assert (transform == page_data->transform);
 
-    priv = GET_PRIV (page_data->mallard);
+    priv = yelp_mallard_document_get_instance_private (page_data->mallard);
 
     if (priv->state == MALLARD_STATE_STOP) {
         mallard_page_data_cancel (page_data);
@@ -819,7 +820,7 @@ transform_finished (YelpTransform   *transform,
               YELP_IS_MALLARD_DOCUMENT (page_data->mallard));
     g_assert (transform == page_data->transform);
 
-    priv = GET_PRIV (page_data->mallard);
+    priv = yelp_mallard_document_get_instance_private (page_data->mallard);
 
     if (priv->state == MALLARD_STATE_STOP) {
         mallard_page_data_cancel (page_data);
@@ -844,7 +845,7 @@ transform_error (YelpTransform   *transform,
               YELP_IS_MALLARD_DOCUMENT (page_data->mallard));
     g_assert (transform == page_data->transform);
 
-    priv = GET_PRIV (page_data->mallard);
+    priv = yelp_mallard_document_get_instance_private (page_data->mallard);
 
     if (priv->state == MALLARD_STATE_STOP) {
         mallard_page_data_cancel (page_data);
@@ -990,7 +991,7 @@ mallard_index_threaded (YelpMallardDocument *mallard)
     GHashTable *ids;
     gchar *doc_uri;
     YelpUri *document_uri;
-    YelpMallardDocumentPrivate *priv = GET_PRIV (mallard);
+    YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (mallard);
 
     document_uri = yelp_document_get_uri (YELP_DOCUMENT (mallard));
     doc_uri = yelp_uri_get_document_uri (document_uri);
@@ -1125,7 +1126,7 @@ mallard_index (YelpDocument *document)
     if (done)
         return;
 
-    priv = GET_PRIV (document);
+    priv = yelp_mallard_document_get_instance_private (YELP_MALLARD_DOCUMENT (document));
     g_object_ref (document);
     priv->index = g_thread_new ("mallard-index",
                                 (GThreadFunc)(GCallback) mallard_index_threaded,
@@ -1143,7 +1144,7 @@ mallard_monitor_changed (GFileMonitor         *monitor,
     gchar **ids;
     gint i;
     xmlNodePtr cur;
-    YelpMallardDocumentPrivate *priv = GET_PRIV (mallard);
+    YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (mallard);
 
     /* Exiting the thinking thread would require a fair amount of retooling.
        For now, we'll just fail to auto-reload if that's still happening.
diff --git a/libyelp/yelp-man-document.c b/libyelp/yelp-man-document.c
index a18248ca..dba8a1d3 100644
--- a/libyelp/yelp-man-document.c
+++ b/libyelp/yelp-man-document.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2007-2010 Shaun McCance <shaunm gnome org>
+ * Copyright (C) 2007-2020 Shaun McCance <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -61,6 +61,8 @@ struct _YelpManDocumentPrivate {
     guint          error;
 };
 
+G_DEFINE_TYPE_WITH_PRIVATE (YelpManDocument, yelp_man_document, YELP_TYPE_DOCUMENT)
+
 static void           yelp_man_document_finalize         (GObject                *object);
 
 /* YelpDocument */
@@ -88,9 +90,6 @@ static void           man_document_process               (YelpManDocument
 static void           man_document_disconnect            (YelpManDocument        *man);
 
 
-G_DEFINE_TYPE (YelpManDocument, yelp_man_document, YELP_TYPE_DOCUMENT)
-#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_MAN_DOCUMENT, 
YelpManDocumentPrivate))
-
 static void
 yelp_man_document_class_init (YelpManDocumentClass *klass)
 {
@@ -100,14 +99,12 @@ yelp_man_document_class_init (YelpManDocumentClass *klass)
     object_class->finalize = yelp_man_document_finalize;
 
     document_class->request_page = man_request_page;
-
-    g_type_class_add_private (klass, sizeof (YelpManDocumentPrivate));
 }
 
 static void
 yelp_man_document_init (YelpManDocument *man)
 {
-    YelpManDocumentPrivate *priv = GET_PRIV (man);
+    YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man);
 
     priv->state = MAN_STATE_BLANK;
     g_mutex_init (&priv->mutex);
@@ -116,7 +113,8 @@ yelp_man_document_init (YelpManDocument *man)
 static void
 yelp_man_document_finalize (GObject *object)
 {
-    YelpManDocumentPrivate *priv = GET_PRIV (object);
+    YelpManDocumentPrivate *priv =
+        yelp_man_document_get_instance_private (YELP_MAN_DOCUMENT (object));
 
     if (priv->xmldoc)
        xmlFreeDoc (priv->xmldoc);
@@ -151,7 +149,8 @@ man_request_page (YelpDocument         *document,
                   gpointer              user_data,
                   GDestroyNotify        notify)
 {
-    YelpManDocumentPrivate *priv = GET_PRIV (document);
+    YelpManDocumentPrivate *priv =
+        yelp_man_document_get_instance_private (YELP_MAN_DOCUMENT (document));
     gchar *docuri, *fulluri;
     GError *error;
     gboolean handled;
@@ -222,7 +221,7 @@ transform_chunk_ready (YelpTransform    *transform,
                        gchar            *chunk_id,
                        YelpManDocument  *man)
 {
-    YelpManDocumentPrivate *priv = GET_PRIV (man);
+    YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man);
     gchar *content;
 
     g_assert (transform == priv->transform);
@@ -252,7 +251,7 @@ static void
 transform_finished (YelpTransform    *transform,
                     YelpManDocument  *man)
 {
-    YelpManDocumentPrivate *priv = GET_PRIV (man);
+    YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man);
     gchar *docuri;
     GError *error;
 
@@ -287,7 +286,7 @@ static void
 transform_error (YelpTransform    *transform,
                  YelpManDocument  *man)
 {
-    YelpManDocumentPrivate *priv = GET_PRIV (man);
+    YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man);
     GError *error;
 
     g_assert (transform == priv->transform);
@@ -308,7 +307,7 @@ static void
 transform_finalized (YelpManDocument  *man,
                      gpointer          transform)
 {
-    YelpManDocumentPrivate *priv = GET_PRIV (man);
+    YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man);
  
     if (priv->xmldoc)
        xmlFreeDoc (priv->xmldoc);
@@ -322,7 +321,7 @@ transform_finalized (YelpManDocument  *man,
 static void
 man_document_process (YelpManDocument *man)
 {
-    YelpManDocumentPrivate *priv = GET_PRIV (man);
+    YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man);
     GFile *file = NULL;
     gchar *filepath = NULL;
     GError *error;
@@ -397,7 +396,7 @@ man_document_process (YelpManDocument *man)
 static void
 man_document_disconnect (YelpManDocument *man)
 {
-    YelpManDocumentPrivate *priv = GET_PRIV (man);
+    YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man);
     if (priv->chunk_ready) {
         g_signal_handler_disconnect (priv->transform, priv->chunk_ready);
         priv->chunk_ready = 0;
diff --git a/libyelp/yelp-man-parser.c b/libyelp/yelp-man-parser.c
index 302ccb31..91522b79 100644
--- a/libyelp/yelp-man-parser.c
+++ b/libyelp/yelp-man-parser.c
@@ -1266,7 +1266,7 @@ unicode_strstrip (gchar *str)
     }
     start = skip_whitespace (str);
 
-    g_memmove (str, start, end - start);
+    memmove (str, start, end - start);
     *(str + (end - start)) = '\0';
 }
 
diff --git a/libyelp/yelp-search-entry.c b/libyelp/yelp-search-entry.c
index 2b5a8196..0284a3f4 100644
--- a/libyelp/yelp-search-entry.c
+++ b/libyelp/yelp-search-entry.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2009-2014 Shaun McCance <shaunm gnome org>
+ * Copyright (C) 2009-2020 Shaun McCance <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -123,8 +123,7 @@ static GHashTable *completions;
 
 static guint search_entry_signals[LAST_SIGNAL] = {0,};
 
-G_DEFINE_TYPE (YelpSearchEntry, yelp_search_entry, GTK_TYPE_SEARCH_ENTRY)
-#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE((object), YELP_TYPE_SEARCH_ENTRY, 
YelpSearchEntryPrivate))
+G_DEFINE_TYPE_WITH_PRIVATE (YelpSearchEntry, yelp_search_entry, GTK_TYPE_SEARCH_ENTRY)
 
 static void
 yelp_search_entry_class_init (YelpSearchEntryClass *klass)
@@ -193,9 +192,6 @@ yelp_search_entry_class_init (YelpSearchEntryClass *klass)
                                                          G_PARAM_READWRITE |
                                                           G_PARAM_STATIC_STRINGS));
 
-    g_type_class_add_private ((GObjectClass *) klass,
-                              sizeof (YelpSearchEntryPrivate));
-
     completions = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref);
 }
 
@@ -207,7 +203,8 @@ yelp_search_entry_init (YelpSearchEntry *entry)
 static void
 search_entry_constructed (GObject *object)
 {
-    YelpSearchEntryPrivate *priv = GET_PRIV (object);
+    YelpSearchEntryPrivate *priv =
+        yelp_search_entry_get_instance_private (YELP_SEARCH_ENTRY (object));
 
     g_signal_connect (object, "activate",
                       G_CALLBACK (entry_activate_cb), object);
@@ -218,7 +215,8 @@ search_entry_constructed (GObject *object)
 static void
 search_entry_dispose (GObject *object)
 {
-    YelpSearchEntryPrivate *priv = GET_PRIV (object);
+    YelpSearchEntryPrivate *priv =
+        yelp_search_entry_get_instance_private (YELP_SEARCH_ENTRY (object));
 
     if (priv->view) {
         g_object_unref (priv->view);
@@ -236,7 +234,8 @@ search_entry_dispose (GObject *object)
 static void
 search_entry_finalize (GObject *object)
 {
-    YelpSearchEntryPrivate *priv = GET_PRIV (object);
+    YelpSearchEntryPrivate *priv =
+        yelp_search_entry_get_instance_private (YELP_SEARCH_ENTRY (object));
 
     g_free (priv->completion_uri);
 
@@ -249,7 +248,8 @@ search_entry_get_property   (GObject      *object,
                                GValue       *value,
                                GParamSpec   *pspec)
 {
-    YelpSearchEntryPrivate *priv = GET_PRIV (object);
+    YelpSearchEntryPrivate *priv =
+        yelp_search_entry_get_instance_private (YELP_SEARCH_ENTRY (object));
 
     switch (prop_id) {
     case PROP_VIEW:
@@ -270,7 +270,8 @@ search_entry_set_property   (GObject      *object,
                                const GValue *value,
                                GParamSpec   *pspec)
 {
-    YelpSearchEntryPrivate *priv = GET_PRIV (object);
+    YelpSearchEntryPrivate *priv =
+        yelp_search_entry_get_instance_private (YELP_SEARCH_ENTRY (object));
 
     switch (prop_id) {
     case PROP_VIEW:
@@ -289,7 +290,7 @@ static void
 search_entry_search_activated  (YelpSearchEntry *entry)
 {
     YelpUri *base, *uri;
-    YelpSearchEntryPrivate *priv = GET_PRIV (entry);
+    YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry);
 
     g_object_get (priv->view, "yelp-uri", &base, NULL);
     if (base == NULL)
@@ -306,7 +307,7 @@ search_entry_bookmark_clicked  (YelpSearchEntry *entry)
 {
     YelpUri *uri;
     gchar *doc_uri, *page_id;
-    YelpSearchEntryPrivate *priv = GET_PRIV (entry);
+    YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry);
 
     g_object_get (priv->view,
                   "yelp-uri", &uri,
@@ -337,7 +338,7 @@ static void
 search_entry_set_completion (YelpSearchEntry *entry,
                             GtkTreeModel    *model)
 {
-    YelpSearchEntryPrivate *priv = GET_PRIV (entry);
+    YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry);
     GList *cells;
     GtkCellRenderer *icon_cell, *bookmark_cell;
 
@@ -401,7 +402,7 @@ cell_set_completion_bookmark_icon (GtkCellLayout     *layout,
                                    GtkTreeIter       *iter,
                                    YelpSearchEntry *entry)
 {
-    YelpSearchEntryPrivate *priv = GET_PRIV (entry);
+    YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry);
 
     if (priv->completion_uri) {
         gchar *page_id = NULL;
@@ -555,7 +556,7 @@ entry_match_selected (GtkEntryCompletion *completion,
     YelpUri *base, *uri;
     gchar *page, *xref;
     gint flags;
-    YelpSearchEntryPrivate *priv = GET_PRIV (entry);
+    YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry);
 
     gtk_tree_model_get (model, iter, COMPLETION_COL_FLAGS, &flags, -1);
     if (flags & COMPLETION_FLAG_ACTIVATE_SEARCH) {
@@ -590,7 +591,7 @@ view_loaded (YelpView          *view,
     YelpUri *uri;
     gchar *doc_uri;
     GtkTreeModel *completion;
-    YelpSearchEntryPrivate *priv = GET_PRIV (entry);
+    YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry);
     YelpDocument *document = yelp_view_get_document (view);
 
     g_object_get (view, "yelp-uri", &uri, NULL);
diff --git a/libyelp/yelp-settings.c b/libyelp/yelp-settings.c
index 05bbfb31..38cb40f3 100644
--- a/libyelp/yelp-settings.c
+++ b/libyelp/yelp-settings.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2004-2009 Shaun McCance <shaunm gnome org>
+ * Copyright (C) 2004-2020 Shaun McCance <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -29,7 +29,7 @@
 
 #include "yelp-settings.h"
 
-struct _YelpSettingsPriv {
+struct _YelpSettingsPrivate {
     GMutex        mutex;
 
     gchar         colors[YELP_SETTINGS_NUM_COLORS][8];
@@ -73,8 +73,7 @@ enum {
 
 static const gchar *icon_names[YELP_SETTINGS_NUM_ICONS];
 
-G_DEFINE_TYPE (YelpSettings, yelp_settings, G_TYPE_OBJECT)
-#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_SETTINGS, YelpSettingsPriv))
+G_DEFINE_TYPE_WITH_PRIVATE (YelpSettings, yelp_settings, G_TYPE_OBJECT)
 
 static void           yelp_settings_constructed  (GObject              *object);
 static void           yelp_settings_finalize     (GObject              *object);
@@ -210,8 +209,6 @@ yelp_settings_class_init (YelpSettingsClass *klass)
                      0, NULL, NULL,
                      g_cclosure_marshal_VOID__VOID,
                      G_TYPE_NONE, 0);
-
-    g_type_class_add_private (klass, sizeof (YelpSettingsPriv));
 }
 
 static void
@@ -219,7 +216,7 @@ yelp_settings_init (YelpSettings *settings)
 {
     gint i;
 
-    settings->priv = GET_PRIV (settings);
+    settings->priv = yelp_settings_get_instance_private (settings);
     g_mutex_init (&settings->priv->mutex);
     settings->priv->icon_size = 24;
 
diff --git a/libyelp/yelp-settings.h b/libyelp/yelp-settings.h
index 447cf4ec..84ced04f 100644
--- a/libyelp/yelp-settings.h
+++ b/libyelp/yelp-settings.h
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2004-2009 Shaun McCance <shaunm gnome org>
+ * Copyright (C) 2004-2020 Shaun McCance <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -32,13 +32,13 @@ G_BEGIN_DECLS
 #define YELP_IS_SETTINGS_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), YELP_TYPE_SETTINGS))
 #define YELP_SETTINGS_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), YELP_TYPE_SETTINGS, YelpSettingsClass))
 
-typedef struct _YelpSettings      YelpSettings;
-typedef struct _YelpSettingsClass YelpSettingsClass;
-typedef struct _YelpSettingsPriv  YelpSettingsPriv;
+typedef struct _YelpSettings        YelpSettings;
+typedef struct _YelpSettingsClass   YelpSettingsClass;
+typedef struct _YelpSettingsPrivate YelpSettingsPrivate;
 
 struct _YelpSettings {
-    GObject           parent;
-    YelpSettingsPriv *priv;
+    GObject              parent;
+    YelpSettingsPrivate *priv;
 };
 
 struct _YelpSettingsClass {
diff --git a/libyelp/yelp-simple-document.c b/libyelp/yelp-simple-document.c
index 595efa83..735e1828 100644
--- a/libyelp/yelp-simple-document.c
+++ b/libyelp/yelp-simple-document.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2003-2009 Shaun McCance  <shaunm gnome org>
+ * Copyright (C) 2003-2020 Shaun McCance  <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -39,7 +39,7 @@ struct _Request {
     gint                  idle_funcs;
 };
 
-struct _YelpSimpleDocumentPriv {
+struct _YelpSimpleDocumentPrivate {
     GFile        *file;
     GInputStream *stream;
     gchar        *page_id;
@@ -56,8 +56,7 @@ struct _YelpSimpleDocumentPriv {
 
 #define BUFFER_SIZE 4096
 
-G_DEFINE_TYPE (YelpSimpleDocument, yelp_simple_document, YELP_TYPE_DOCUMENT)
-#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_SIMPLE_DOCUMENT, 
YelpSimpleDocumentPriv))
+G_DEFINE_TYPE_WITH_PRIVATE (YelpSimpleDocument, yelp_simple_document, YELP_TYPE_DOCUMENT)
 
 static void           yelp_simple_document_dispose     (GObject                 *object);
 static void           yelp_simple_document_finalize    (GObject                 *object);
@@ -107,14 +106,12 @@ yelp_simple_document_class_init (YelpSimpleDocumentClass *klass)
     document_class->read_contents = document_read_contents;
     document_class->finish_read = document_finish_read;
     document_class->get_mime_type = document_get_mime_type;
-
-    g_type_class_add_private (klass, sizeof (YelpSimpleDocumentPriv));
 }
 
 static void
 yelp_simple_document_init (YelpSimpleDocument *document)
 {
-    document->priv = GET_PRIV (document);
+    document->priv = yelp_simple_document_get_instance_private (document);
 
     document->priv->file = NULL;
     document->priv->stream = NULL;
diff --git a/libyelp/yelp-simple-document.h b/libyelp/yelp-simple-document.h
index 4ef78f66..de306f80 100644
--- a/libyelp/yelp-simple-document.h
+++ b/libyelp/yelp-simple-document.h
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2003-2009 Shaun McCance  <shaunm gnome org>
+ * Copyright (C) 2003-2020 Shaun McCance  <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -36,13 +36,13 @@ G_BEGIN_DECLS
 #define YELP_IS_SIMPLE_DOCUMENT_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), YELP_TYPE_SIMPLE_DOCUMENT))
 #define YELP_SIMPLE_DOCUMENT_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), YELP_TYPE_SIMPLE_DOCUMENT, 
YelpSimpleDocumentClass))
 
-typedef struct _YelpSimpleDocument      YelpSimpleDocument;
-typedef struct _YelpSimpleDocumentClass YelpSimpleDocumentClass;
-typedef struct _YelpSimpleDocumentPriv  YelpSimpleDocumentPriv;
+typedef struct _YelpSimpleDocument        YelpSimpleDocument;
+typedef struct _YelpSimpleDocumentClass   YelpSimpleDocumentClass;
+typedef struct _YelpSimpleDocumentPrivate YelpSimpleDocumentPrivate;
 
 struct _YelpSimpleDocument {
     YelpDocument parent;
-    YelpSimpleDocumentPriv *priv;
+    YelpSimpleDocumentPrivate *priv;
 };
 
 struct _YelpSimpleDocumentClass {
diff --git a/libyelp/yelp-sqlite-storage.c b/libyelp/yelp-sqlite-storage.c
index c872f729..42853fbe 100644
--- a/libyelp/yelp-sqlite-storage.c
+++ b/libyelp/yelp-sqlite-storage.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2011 Shaun McCance <shaunm gnome org>
+ * Copyright (C) 2011-2020 Shaun McCance <shaunm gnome org>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -66,13 +66,14 @@ enum {
 
 G_DEFINE_TYPE_WITH_CODE (YelpSqliteStorage, yelp_sqlite_storage, G_TYPE_OBJECT,
                          G_IMPLEMENT_INTERFACE (YELP_TYPE_STORAGE,
-                                                yelp_sqlite_storage_iface_init))
-#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_SQLITE_STORAGE, 
YelpSqliteStoragePrivate))
+                                                yelp_sqlite_storage_iface_init)
+                         G_ADD_PRIVATE (YelpSqliteStorage) )
 
 static void
 yelp_sqlite_storage_finalize (GObject *object)
 {
-    YelpSqliteStoragePrivate *priv = GET_PRIV (object);
+    YelpSqliteStoragePrivate *priv =
+        yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (object));
 
     if (priv->filename)
         g_free (priv->filename);
@@ -88,7 +89,7 @@ yelp_sqlite_storage_finalize (GObject *object)
 static void
 yelp_sqlite_storage_init (YelpSqliteStorage *storage)
 {
-    YelpSqliteStoragePrivate *priv = GET_PRIV (storage);
+    YelpSqliteStoragePrivate *priv = yelp_sqlite_storage_get_instance_private (storage);
     g_mutex_init (&priv->mutex);
 }
 
@@ -97,7 +98,8 @@ yelp_sqlite_storage_constructed (GObject *object)
 {
     int status;
     sqlite3_stmt *stmt = NULL;
-    YelpSqliteStoragePrivate *priv = GET_PRIV (object);
+    YelpSqliteStoragePrivate *priv =
+        yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (object));
 
     if (priv->filename != NULL)
         status = sqlite3_open (priv->filename, &(priv->db));
@@ -137,8 +139,6 @@ yelp_sqlite_storage_class_init (YelpSqliteStorageClass *klass)
     object_class->get_property = yelp_sqlite_storage_get_property;
     object_class->set_property = yelp_sqlite_storage_set_property;
 
-    g_type_class_add_private (klass, sizeof (YelpSqliteStoragePrivate));
-
     g_object_class_install_property (object_class,
                                      PROP_FILENAME,
                                      g_param_spec_string ("filename",
@@ -176,7 +176,8 @@ yelp_sqlite_storage_get_property (GObject    *object,
                                   GValue     *value,
                                   GParamSpec *pspec)
 {
-    YelpSqliteStoragePrivate *priv = GET_PRIV (object);
+    YelpSqliteStoragePrivate *priv =
+        yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (object));
 
     switch (prop_id) {
     case PROP_FILENAME:
@@ -194,7 +195,8 @@ yelp_sqlite_storage_set_property (GObject      *object,
                                   const GValue *value,
                                   GParamSpec   *pspec)
 {
-    YelpSqliteStoragePrivate *priv = GET_PRIV (object);
+    YelpSqliteStoragePrivate *priv =
+        yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (object));
 
     switch (prop_id) {
     case PROP_FILENAME:
@@ -218,7 +220,8 @@ yelp_sqlite_storage_update (YelpStorage   *storage,
                             const gchar   *text)
 {
     sqlite3_stmt *stmt = NULL;
-    YelpSqliteStoragePrivate *priv = GET_PRIV (storage);
+    YelpSqliteStoragePrivate *priv =
+        yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (storage));
 
     g_mutex_lock (&priv->mutex);
 
@@ -256,7 +259,9 @@ yelp_sqlite_storage_search (YelpStorage   *storage,
     sqlite3_stmt *stmt = NULL;
     GVariantBuilder builder;
     GVariant *ret;
-    YelpSqliteStoragePrivate *priv = GET_PRIV (storage);
+    YelpSqliteStoragePrivate *priv =
+        yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (storage));
+
 
     g_mutex_lock (&priv->mutex);
 
@@ -290,7 +295,8 @@ yelp_sqlite_storage_get_root_title (YelpStorage *storage,
 {
     gchar *ret = NULL;
     sqlite3_stmt *stmt = NULL;
-    YelpSqliteStoragePrivate *priv = GET_PRIV (storage);
+    YelpSqliteStoragePrivate *priv =
+        yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (storage));
 
     g_mutex_lock (&priv->mutex);
 
@@ -313,7 +319,8 @@ yelp_sqlite_storage_set_root_title (YelpStorage *storage,
                                     const gchar *title)
 {
     sqlite3_stmt *stmt = NULL;
-    YelpSqliteStoragePrivate *priv = GET_PRIV (storage);
+    YelpSqliteStoragePrivate *priv =
+        yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (storage));
 
     g_mutex_lock (&priv->mutex);
 
diff --git a/libyelp/yelp-transform.c b/libyelp/yelp-transform.c
index 54f56116..0107db9a 100644
--- a/libyelp/yelp-transform.c
+++ b/libyelp/yelp-transform.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2003-2009 Shaun McCance  <shaunm gnome org>
+ * Copyright (C) 2003-2020 Shaun McCance  <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -85,9 +85,6 @@ enum {
 };
 static gint signals[LAST_SIGNAL] = { 0 };
 
-G_DEFINE_TYPE (YelpTransform, yelp_transform, G_TYPE_OBJECT)
-#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_TRANSFORM, YelpTransformPrivate))
-
 typedef struct _YelpTransformPrivate YelpTransformPrivate;
 struct _YelpTransformPrivate {
     xmlDocPtr                input;
@@ -112,12 +109,14 @@ struct _YelpTransformPrivate {
     GError                 *error;
 };
 
+G_DEFINE_TYPE_WITH_PRIVATE (YelpTransform, yelp_transform, G_TYPE_OBJECT)
+
 /******************************************************************************/
 
 static void
 yelp_transform_init (YelpTransform *transform)
 {
-    YelpTransformPrivate *priv = GET_PRIV (transform);
+    YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform);
     priv->queue = g_async_queue_new_full (g_free);
     priv->chunks = g_hash_table_new_full (g_str_hash,
                                           g_str_equal,
@@ -156,8 +155,6 @@ yelp_transform_class_init (YelpTransformClass *klass)
                                    g_cclosure_marshal_VOID__VOID,
                                    G_TYPE_NONE, 0);
 
-    g_type_class_add_private (klass, sizeof (YelpTransformPrivate));
-
     g_object_class_install_property (object_class,
                                      PROP_STYLESHEET,
                                      g_param_spec_string ("stylesheet",
@@ -172,7 +169,8 @@ yelp_transform_class_init (YelpTransformClass *klass)
 static void
 yelp_transform_dispose (GObject *object)
 {
-    YelpTransformPrivate *priv = GET_PRIV (object);
+    YelpTransformPrivate *priv =
+        yelp_transform_get_instance_private (YELP_TRANSFORM (object));
 
     debug_print (DB_FUNCTION, "entering\n");
 
@@ -214,7 +212,8 @@ yelp_transform_dispose (GObject *object)
 static void
 yelp_transform_finalize (GObject *object)
 {
-    YelpTransformPrivate *priv = GET_PRIV (object);
+    YelpTransformPrivate *priv =
+        yelp_transform_get_instance_private (YELP_TRANSFORM (object));
     GHashTableIter iter;
     gpointer chunk;
 
@@ -240,7 +239,8 @@ yelp_transform_get_property (GObject    *object,
                              GValue     *value,
                              GParamSpec *pspec)
 {
-    YelpTransformPrivate *priv = GET_PRIV (object);
+    YelpTransformPrivate *priv =
+        yelp_transform_get_instance_private (YELP_TRANSFORM (object));
 
     switch (prop_id)
         {
@@ -259,7 +259,8 @@ yelp_transform_set_property (GObject      *object,
                              const GValue *value,
                              GParamSpec   *pspec)
 {
-    YelpTransformPrivate *priv = GET_PRIV (object);
+    YelpTransformPrivate *priv =
+        yelp_transform_get_instance_private (YELP_TRANSFORM (object));
 
     switch (prop_id)
         {
@@ -288,7 +289,7 @@ yelp_transform_start (YelpTransform       *transform,
                       xmlDocPtr            auxiliary,
                       const gchar * const *params)
 {
-    YelpTransformPrivate *priv = GET_PRIV (transform);
+    YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform);
 
     priv->input = document;
     priv->aux = auxiliary;
@@ -310,7 +311,7 @@ gchar *
 yelp_transform_take_chunk (YelpTransform *transform,
                            const gchar   *chunk_id)
 {
-    YelpTransformPrivate *priv = GET_PRIV (transform);
+    YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform);
     gchar *buf;
 
     g_mutex_lock (&priv->mutex);
@@ -328,7 +329,7 @@ yelp_transform_take_chunk (YelpTransform *transform,
 void
 yelp_transform_cancel (YelpTransform *transform)
 {
-    YelpTransformPrivate *priv = GET_PRIV (transform);
+    YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform);
     g_mutex_lock (&priv->mutex);
     if (priv->running) {
         priv->cancelled = TRUE;
@@ -341,7 +342,7 @@ yelp_transform_cancel (YelpTransform *transform)
 GError *
 yelp_transform_get_error (YelpTransform *transform)
 {
-    YelpTransformPrivate *priv = GET_PRIV (transform);
+    YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform);
     GError *ret = NULL;
 
     g_mutex_lock (&priv->mutex);
@@ -357,7 +358,7 @@ yelp_transform_get_error (YelpTransform *transform)
 static void
 transform_run (YelpTransform *transform)
 {
-    YelpTransformPrivate *priv = GET_PRIV (transform);
+    YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform);
 
     debug_print (DB_FUNCTION, "entering\n");
 
@@ -424,7 +425,7 @@ transform_run (YelpTransform *transform)
 static gboolean
 transform_chunk (YelpTransform *transform)
 {
-    YelpTransformPrivate *priv = GET_PRIV (transform);
+    YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform);
     gchar *chunk_id;
 
     debug_print (DB_FUNCTION, "entering\n");
@@ -446,7 +447,7 @@ transform_chunk (YelpTransform *transform)
 static gboolean
 transform_error (YelpTransform *transform)
 {
-    YelpTransformPrivate *priv = GET_PRIV (transform);
+    YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform);
 
     debug_print (DB_FUNCTION, "entering\n");
 
@@ -463,7 +464,7 @@ transform_error (YelpTransform *transform)
 static gboolean
 transform_final (YelpTransform *transform)
 {
-    YelpTransformPrivate *priv = GET_PRIV (transform);
+    YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform);
 
     debug_print (DB_FUNCTION, "entering\n");
 
@@ -506,7 +507,7 @@ xslt_yelp_document (xsltTransformContextPtr ctxt,
         return;
 
     transform = YELP_TRANSFORM (ctxt->_private);
-    priv = GET_PRIV (transform);
+    priv = yelp_transform_get_instance_private (transform);
 
     page_id = xsltEvalAttrValueTemplate (ctxt, inst,
                                          (const xmlChar *) "href",
@@ -590,7 +591,7 @@ xslt_yelp_aux (xmlXPathParserContextPtr ctxt, int nargs)
 
     tctxt = xsltXPathGetTransformContext (ctxt);
     transform = YELP_TRANSFORM (tctxt->_private);
-    priv = GET_PRIV (transform);
+    priv = yelp_transform_get_instance_private (transform);
 
     priv->aux_xslt = xsltNewDocument (tctxt, priv->aux);
 
diff --git a/libyelp/yelp-uri.c b/libyelp/yelp-uri.c
index 123983cb..ffc49cc9 100644
--- a/libyelp/yelp-uri.c
+++ b/libyelp/yelp-uri.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2009 Shaun McCance  <shaunm gnome org>
+ * Copyright (C) 2009-2020 Shaun McCance  <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -61,9 +61,6 @@ static void           resolve_gfile              (YelpUri        *uri,
 static gboolean       is_man_path                (const gchar    *uri,
                                                   const gchar    *encoding);
 
-G_DEFINE_TYPE (YelpUri, yelp_uri, G_TYPE_OBJECT)
-#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_URI, YelpUriPrivate))
-
 typedef struct _YelpUriPrivate YelpUriPrivate;
 struct _YelpUriPrivate {
     GThread              *resolver;
@@ -92,6 +89,8 @@ enum {
 };
 static guint uri_signals[LAST_SIGNAL] = {0,};
 
+G_DEFINE_TYPE_WITH_PRIVATE (YelpUri, yelp_uri, G_TYPE_OBJECT)
+
 /******************************************************************************/
 
 static const gchar *mancats[] = {
@@ -135,14 +134,12 @@ yelp_uri_class_init (YelpUriClass *klass)
                       0, NULL, NULL,
                       g_cclosure_marshal_VOID__VOID,
                       G_TYPE_NONE, 0);
-
-    g_type_class_add_private (klass, sizeof (YelpUriPrivate));
 }
 
 static void
 yelp_uri_init (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
 
     priv->query = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
 
@@ -152,7 +149,7 @@ yelp_uri_init (YelpUri *uri)
 static void
 yelp_uri_dispose (GObject *object)
 {
-    YelpUriPrivate *priv = GET_PRIV (object);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (YELP_URI (object));
 
     if (priv->gfile) {
         g_object_unref (priv->gfile);
@@ -175,7 +172,7 @@ yelp_uri_dispose (GObject *object)
 static void
 yelp_uri_finalize (GObject *object)
 {
-    YelpUriPrivate *priv = GET_PRIV (object);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (YELP_URI (object));
 
     g_free (priv->docuri);
     g_free (priv->fulluri);
@@ -203,7 +200,7 @@ yelp_uri_new_relative (YelpUri *base, const gchar *arg)
 
     uri = (YelpUri *) g_object_new (YELP_TYPE_URI, NULL);
 
-    priv = GET_PRIV (uri);
+    priv = yelp_uri_get_instance_private (uri);
     priv->doctype = YELP_URI_DOCUMENT_TYPE_UNRESOLVED;
     if (base)
         priv->res_base = g_object_ref (base);
@@ -222,7 +219,7 @@ yelp_uri_new_search (YelpUri      *base,
 
     uri = (YelpUri *) g_object_new (YELP_TYPE_URI, NULL);
 
-    priv = GET_PRIV (uri);
+    priv = yelp_uri_get_instance_private (uri);
     priv->doctype = YELP_URI_DOCUMENT_TYPE_UNRESOLVED;
     if (base)
         priv->res_base = g_object_ref (base);
@@ -238,7 +235,7 @@ yelp_uri_new_search (YelpUri      *base,
 void
 yelp_uri_resolve (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
 
     if (priv->res_base && !yelp_uri_is_resolved (priv->res_base)) {
         g_signal_connect_swapped (priv->res_base, "resolved",
@@ -254,7 +251,7 @@ yelp_uri_resolve (YelpUri *uri)
 void
 yelp_uri_resolve_sync (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
 
     if (priv->doctype != YELP_URI_DOCUMENT_TYPE_UNRESOLVED)
         return;
@@ -293,7 +290,7 @@ yelp_uri_resolve_sync (YelpUri *uri)
 static void
 resolve_start (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
 
     if (priv->resolver == NULL) {
         g_object_ref (uri);
@@ -306,7 +303,7 @@ resolve_start (YelpUri *uri)
 static void
 resolve_sync (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
 
     if (g_str_has_prefix (priv->res_arg, "ghelp:")
         || g_str_has_prefix (priv->res_arg, "gnome-help:")) {
@@ -333,7 +330,7 @@ resolve_sync (YelpUri *uri)
             priv->tmptype = YELP_URI_DOCUMENT_TYPE_ERROR;
             return;
         }
-        base_priv = GET_PRIV (priv->res_base);
+        base_priv = yelp_uri_get_instance_private (priv->res_base);
         switch (base_priv->doctype) {
         case YELP_URI_DOCUMENT_TYPE_UNRESOLVED:
             break;
@@ -391,7 +388,7 @@ resolve_async (YelpUri *uri)
 static gboolean
 resolve_final (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
 
     priv->resolver = NULL;
 
@@ -420,21 +417,21 @@ resolve_final (YelpUri *uri)
 gboolean
 yelp_uri_is_resolved (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     return priv->doctype != YELP_URI_DOCUMENT_TYPE_UNRESOLVED;
 }
 
 YelpUriDocumentType
 yelp_uri_get_document_type (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     return priv->doctype;
 }
 
 gchar *
 yelp_uri_get_document_uri (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED)
         return NULL;
 
@@ -452,7 +449,7 @@ yelp_uri_get_document_uri (YelpUri *uri)
 gchar *
 yelp_uri_get_canonical_uri (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED)
         return NULL;
     return g_strdup (priv->fulluri);
@@ -461,7 +458,7 @@ yelp_uri_get_canonical_uri (YelpUri *uri)
 GFile *
 yelp_uri_get_file (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED)
         return NULL;
     return priv->gfile ? g_object_ref (priv->gfile) : NULL;
@@ -470,7 +467,7 @@ yelp_uri_get_file (YelpUri *uri)
 gchar **
 yelp_uri_get_search_path (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED)
         return NULL;
     return g_strdupv (priv->search_path);
@@ -479,7 +476,7 @@ yelp_uri_get_search_path (YelpUri *uri)
 gchar *
 yelp_uri_get_page_id (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED)
         return NULL;
     return g_strdup (priv->page_id);
@@ -488,7 +485,7 @@ yelp_uri_get_page_id (YelpUri *uri)
 gchar *
 yelp_uri_get_frag_id (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED)
         return NULL;
     return g_strdup (priv->frag_id);
@@ -498,7 +495,7 @@ gchar *
 yelp_uri_get_query (YelpUri      *uri,
                     const gchar  *key)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     const gchar *ret = g_hash_table_lookup (priv->query, key);
     if (ret)
         return g_strdup (ret);
@@ -512,7 +509,7 @@ gchar *
 yelp_uri_locate_file_uri (YelpUri     *uri,
                           const gchar *filename)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     GFile *gfile;
     gchar *fullpath;
     gchar *returi = NULL;
@@ -546,7 +543,7 @@ yelp_uri_locate_file_uri (YelpUri     *uri,
 static void
 resolve_file_uri (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     gchar *uristr;
     const gchar *hash = strchr (priv->res_arg, '#');
 
@@ -566,7 +563,7 @@ static void
 resolve_file_path (YelpUri *uri)
 {
     YelpUriPrivate *base_priv = NULL;
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     gchar *path;
     const gchar *hash;
 
@@ -578,7 +575,7 @@ resolve_file_path (YelpUri *uri)
     }
 
     if (priv->res_base)
-        base_priv = GET_PRIV (priv->res_base);
+        base_priv = yelp_uri_get_instance_private (priv->res_base);
 
     hash = strchr (priv->res_arg, '#');
     if (hash) {
@@ -632,7 +629,7 @@ resolve_data_dirs (YelpUri      *ret,
     const gchar * const *langs = g_get_language_names ();
     /* The strings are still owned by GLib; we just own the array. */
     gchar **datadirs;
-    YelpUriPrivate *priv = GET_PRIV (ret);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (ret);
     gchar *filename = NULL;
     gchar **searchpath = NULL;
     gint searchi, searchmax;
@@ -727,7 +724,7 @@ resolve_data_dirs (YelpUri      *ret,
 static void
 build_ghelp_fulluri (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
 
     g_assert (priv->tmptype != YELP_URI_DOCUMENT_TYPE_UNRESOLVED);
     g_assert (priv->docuri != NULL);
@@ -746,7 +743,7 @@ resolve_ghelp_uri (YelpUri *uri)
     /* ghelp:/path/to/file
      * ghelp:document[/file][?page][#frag]
      */
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     gchar *document, *slash, *query, *hash;
     gchar *colon, *c; /* do not free */
 
@@ -849,7 +846,7 @@ resolve_help_uri (YelpUri *uri)
 {
     /* help:document[/page][?query][#frag]
      */
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     gchar *document, *slash, *query, *hash;
     gchar *colon, *c; /* do not free */
 
@@ -937,7 +934,7 @@ resolve_help_uri (YelpUri *uri)
 static void
 resolve_help_list_uri (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     priv->docuri = g_strdup ("help-list:");
     priv->fulluri = g_strdup (priv->res_arg);
     priv->page_id = g_strdup ("index");
@@ -999,7 +996,7 @@ find_man_path (gchar* name, gchar* section)
 static void
 build_man_uris (YelpUri *uri, const char *name, const char *section)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
 
     g_assert (priv->tmptype == YELP_URI_DOCUMENT_TYPE_MAN);
     priv->docuri = g_strdup ("man:");
@@ -1016,7 +1013,7 @@ build_man_uris (YelpUri *uri, const char *name, const char *section)
 static void
 resolve_man_uri (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     /* man:/path/to/file
      * man:name(section)
      * man:name.section
@@ -1104,7 +1101,7 @@ resolve_man_uri (YelpUri *uri)
 static void
 build_info_uris (YelpUri *uri, const char *name, const char *section)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
 
     g_assert (priv->tmptype == YELP_URI_DOCUMENT_TYPE_INFO);
     priv->docuri = g_strconcat ("info:", name, NULL);
@@ -1119,7 +1116,7 @@ build_info_uris (YelpUri *uri, const char *name, const char *section)
 static void
 resolve_info_uri (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     /* info:/path/to/file
      * info:name#node
      * info:name
@@ -1252,9 +1249,9 @@ resolve_info_uri (YelpUri *uri)
 static void
 resolve_xref_uri (YelpUri *uri)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     const gchar *arg = priv->res_arg + 5;
-    YelpUriPrivate *base_priv = GET_PRIV (priv->res_base);
+    YelpUriPrivate *base_priv = yelp_uri_get_instance_private (priv->res_base);
 
     priv->tmptype = base_priv->doctype;
     priv->gfile = g_object_ref (base_priv->gfile);
@@ -1324,7 +1321,7 @@ resolve_xref_uri (YelpUri *uri)
 static void
 resolve_page_and_frag (YelpUri *uri, const gchar *arg)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     gchar *hash;
 
     if (!arg || arg[0] == '\0')
@@ -1344,7 +1341,7 @@ resolve_page_and_frag (YelpUri *uri, const gchar *arg)
 static void
 resolve_gfile (YelpUri *uri, const gchar *query, const gchar *hash)
 {
-    YelpUriPrivate *priv = GET_PRIV (uri);
+    YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
     GFileInfo *info;
     GError *error = NULL;
 
diff --git a/libyelp/yelp-view.c b/libyelp/yelp-view.c
index f95fa1a1..1aff9bcf 100644
--- a/libyelp/yelp-view.c
+++ b/libyelp/yelp-view.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2009 Shaun McCance <shaunm gnome org>
+ * Copyright (C) 2009-2020 Shaun McCance <shaunm gnome org>
  * Copyright (C) 2014 Igalia S.L.
  *
  * This program is free software; you can redistribute it and/or
@@ -141,9 +141,6 @@ enum {
 };
 static gint signals[LAST_SIGNAL] = { 0 };
 
-G_DEFINE_TYPE (YelpView, yelp_view, WEBKIT_TYPE_WEB_VIEW)
-#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_VIEW, YelpViewPrivate))
-
 static WebKitSettings *
 yelp_view_get_global_settings (void)
 {
@@ -243,6 +240,8 @@ enum {
     TARGET_URI_LIST
 };
 
+G_DEFINE_TYPE_WITH_PRIVATE (YelpView, yelp_view, WEBKIT_TYPE_WEB_VIEW)
+
 static void
 yelp_view_init (YelpView *view)
 {
@@ -299,7 +298,7 @@ yelp_view_init (YelpView *view)
       }
     };
 
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
 
     priv->cancellable = NULL;
 
@@ -360,7 +359,7 @@ static void
 yelp_view_constructed (GObject *object)
 {
     YelpView *view = YELP_VIEW (object);
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     YelpSettings *settings = yelp_settings_get_default ();
 
     G_OBJECT_CLASS (yelp_view_parent_class)->constructed (object);
@@ -380,7 +379,7 @@ yelp_view_constructed (GObject *object)
 static void
 yelp_view_dispose (GObject *object)
 {
-    YelpViewPrivate *priv = GET_PRIV (object);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (YELP_VIEW (object));
 
     view_clear_load (YELP_VIEW (object));
 
@@ -431,7 +430,7 @@ yelp_view_dispose (GObject *object)
 static void
 yelp_view_finalize (GObject *object)
 {
-    YelpViewPrivate *priv = GET_PRIV (object);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (YELP_VIEW (object));
 
     g_free (priv->popup_link_uri);
     g_free (priv->popup_link_text);
@@ -500,8 +499,6 @@ yelp_view_class_init (YelpViewClass *klass)
                       g_cclosure_marshal_VOID__VOID,
                       G_TYPE_NONE, 0);
 
-    g_type_class_add_private (klass, sizeof (YelpViewPrivate));
-
     g_object_class_install_property (object_class,
                                      PROP_URI,
                                      g_param_spec_object ("yelp-uri",
@@ -573,7 +570,7 @@ yelp_view_get_property (GObject    *object,
                         GValue     *value,
                         GParamSpec *pspec)
 {
-    YelpViewPrivate *priv = GET_PRIV (object);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (YELP_VIEW (object));
 
     switch (prop_id)
         {
@@ -614,7 +611,7 @@ yelp_view_set_property (GObject      *object,
                         GParamSpec   *pspec)
 {
     YelpUri *uri;
-    YelpViewPrivate *priv = GET_PRIV (object);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (YELP_VIEW (object));
 
     switch (prop_id)
         {
@@ -655,7 +652,7 @@ void
 yelp_view_load_uri (YelpView *view,
                     YelpUri  *uri)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
 
     g_object_set (view, "state", YELP_VIEW_STATE_LOADING, NULL);
 
@@ -672,7 +669,7 @@ yelp_view_load_document (YelpView     *view,
                          YelpDocument *document)
 {
     GParamSpec *spec;
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
 
     g_return_if_fail (yelp_uri_is_resolved (uri));
 
@@ -695,7 +692,7 @@ yelp_view_load_document (YelpView     *view,
 YelpDocument *
 yelp_view_get_document (YelpView *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     return priv->document;
 }
 
@@ -703,7 +700,7 @@ void
 yelp_view_register_actions (YelpView   *view,
                             GActionMap *map)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     g_action_map_add_action (map, G_ACTION (priv->print_action));
     g_action_map_add_action (map, G_ACTION (priv->back_action));
     g_action_map_add_action (map, G_ACTION (priv->forward_action));
@@ -717,7 +714,7 @@ static void
 yelp_view_resolve_uri (YelpView *view,
                        YelpUri  *uri)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
 
     if (yelp_uri_is_resolved (uri)) {
         uri_resolved (uri, view);
@@ -880,7 +877,7 @@ yelp_view_add_link_action (YelpView                *view,
                            gpointer                 data)
 {
     YelpActionEntry *entry;
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
 
     entry = g_new0 (YelpActionEntry, 1);
     entry->action = g_object_ref (action);
@@ -893,7 +890,7 @@ yelp_view_add_link_action (YelpView                *view,
 YelpUri *
 yelp_view_get_active_link_uri (YelpView *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     YelpUri *uri;
 
     uri = yelp_uri_new_relative (priv->uri, priv->popup_link_uri);
@@ -904,7 +901,7 @@ yelp_view_get_active_link_uri (YelpView *view)
 gchar *
 yelp_view_get_active_link_text (YelpView *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     return g_strdup (priv->popup_link_text);
 }
 
@@ -992,7 +989,7 @@ view_install_installed (GDBusConnection *connection,
     }
     else if (info->uri) {
         gchar *struri, *docuri;
-        YelpViewPrivate *priv = GET_PRIV (info->view);
+        YelpViewPrivate *priv = yelp_view_get_instance_private (info->view);
         docuri = yelp_uri_get_document_uri (priv->uri);
         if (g_str_equal (docuri, info->uri)) {
             struri = yelp_uri_get_canonical_uri (priv->uri);
@@ -1015,7 +1012,7 @@ view_install_uri (YelpView    *view,
     GVariantBuilder *strv;
     YelpInstallInfo *info;
     guint32 xid = 0;
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     GtkWidget *gtkwin;
     GdkWindow *gdkwin;
     /* do not free */
@@ -1129,7 +1126,7 @@ static void
 popup_open_link (GtkAction   *action,
                  YelpView    *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     YelpUri *uri;
 
     uri = yelp_uri_new_relative (priv->uri, priv->popup_link_uri);
@@ -1148,7 +1145,7 @@ static void
 popup_open_link_new (GtkAction   *action,
                      YelpView    *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     YelpUri *uri;
 
     uri = yelp_uri_new_relative (priv->uri, priv->popup_link_uri);
@@ -1167,7 +1164,7 @@ static void
 popup_copy_link (GtkAction   *action,
                  YelpView    *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     gtk_clipboard_set_text (gtk_widget_get_clipboard (GTK_WIDGET (view), GDK_SELECTION_CLIPBOARD),
                             priv->popup_link_uri,
                             -1);
@@ -1210,7 +1207,7 @@ popup_save_image (GtkAction   *action,
     GtkWidget *dialog, *window;
     gchar *basename;
     gint res;
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
 
     for (window = gtk_widget_get_parent (GTK_WIDGET (view));
          window && !GTK_IS_WINDOW (window);
@@ -1265,7 +1262,7 @@ popup_send_image (GtkAction   *action,
     GAppInfo *app;
     GAppLaunchContext *context;
     GError *error = NULL;
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
 
     command = g_strdup_printf ("%s %s", nautilus_sendto, priv->popup_image_uri);
     context = (GAppLaunchContext *) gdk_display_get_app_launch_context (gtk_widget_get_display (GTK_WIDGET 
(view)));
@@ -1291,7 +1288,7 @@ static void
 popup_copy_code (GtkAction   *action,
                  YelpView    *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     GtkClipboard *clipboard;
 
     if (!priv->popup_code_text)
@@ -1305,7 +1302,7 @@ static void
 popup_save_code (GtkAction   *action,
                  YelpView    *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     GtkWidget *dialog, *window;
     gint res;
 
@@ -1390,7 +1387,7 @@ view_populate_context_menu (YelpView            *view,
                             WebKitHitTestResult *hit_test_result,
                             gpointer             user_data)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     WebKitContextMenuItem *item;
     GtkAction *action;
     GVariant *dom_info_variant;
@@ -1597,7 +1594,7 @@ view_policy_decision_requested (YelpView                *view,
                                 WebKitPolicyDecisionType type,
                                 gpointer                 user_data)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     WebKitNavigationAction *action;
     WebKitURIRequest *request;
     gchar *fixed_uri;
@@ -1639,7 +1636,7 @@ view_load_status_changed (WebKitWebView   *view,
                           WebKitLoadEvent  load_event,
                           gpointer         user_data)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (YELP_VIEW (view));
 
     if (priv->state == YELP_VIEW_STATE_ERROR)
         return;
@@ -1731,7 +1728,7 @@ view_print_action (GAction *action, GVariant *parameter, YelpView *view)
     GtkWidget *window;
     WebKitPrintOperation *print_operation;
     GtkPrintSettings *settings;
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
 
     window = gtk_widget_get_toplevel (GTK_WIDGET (view));
 
@@ -1762,7 +1759,7 @@ view_history_action (GAction   *action,
 static void
 view_history_changed (YelpView *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     WebKitWebView *web_view = WEBKIT_WEB_VIEW (view);
 
     g_simple_action_set_enabled (priv->back_action, webkit_web_view_can_go_back (web_view));
@@ -1774,7 +1771,7 @@ view_navigation_action (GAction  *action,
                         GVariant *parameter,
                         YelpView *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     gchar *page_id, *new_id, *xref;
     YelpUri *new_uri;
 
@@ -1803,7 +1800,7 @@ view_navigation_action (GAction  *action,
 static void
 view_clear_load (YelpView *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
 
     if (priv->resolve_uri != NULL) {
         if (priv->uri_resolved != 0) {
@@ -1860,7 +1857,7 @@ fix_docbook_uri (YelpUri *docbook_uri, YelpDocument* document)
 static void
 view_load_page (YelpView *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     gchar *uri_str, *tmp_uri;
 
     g_return_if_fail (priv->cancellable == NULL);
@@ -1948,7 +1945,7 @@ static void
 view_show_error_page (YelpView *view,
                       GError   *error)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     YelpSettings *settings = yelp_settings_get_default ();
     gchar *page, *title = NULL, *title_m, *content_beg, *content_end;
     gchar *textcolor, *bgcolor, *noteborder, *notebg, *titlecolor, *noteicon, *linkcolor;
@@ -2105,7 +2102,7 @@ static void
 uri_resolved (YelpUri  *uri,
               YelpView *view)
 {
-    YelpViewPrivate *priv = GET_PRIV (view);
+    YelpViewPrivate *priv = yelp_view_get_instance_private (view);
     YelpUriDocumentType doctype;
     YelpDocument *document;
     GError *error = NULL;
diff --git a/src/yelp-application.c b/src/yelp-application.c
index 18d79029..b284757e 100644
--- a/src/yelp-application.c
+++ b/src/yelp-application.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2010 Shaun McCance <shaunm gnome org>
+ * Copyright (C) 2010-2020 Shaun McCance <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -97,11 +97,6 @@ static void          bookmarks_changed                 (GSettings             *s
 static gboolean      window_resized                    (YelpWindow            *window,
                                                         YelpApplication       *app);
 
-G_DEFINE_TYPE_WITH_CODE (YelpApplication, yelp_application, GTK_TYPE_APPLICATION,
-                         G_IMPLEMENT_INTERFACE (YELP_TYPE_BOOKMARKS,
-                                                yelp_application_iface_init))
-#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_APPLICATION, 
YelpApplicationPrivate))
-
 typedef struct _YelpApplicationPrivate YelpApplicationPrivate;
 struct _YelpApplicationPrivate {
     GSList *windows;
@@ -116,10 +111,15 @@ struct _YelpApplicationPrivate {
     GHashTable *docsettings;
 };
 
+G_DEFINE_TYPE_WITH_CODE (YelpApplication, yelp_application, GTK_TYPE_APPLICATION,
+                         G_IMPLEMENT_INTERFACE (YELP_TYPE_BOOKMARKS,
+                                                yelp_application_iface_init)
+                         G_ADD_PRIVATE (YelpApplication) )
+
 static void
 yelp_application_init (YelpApplication *app)
 {
-    YelpApplicationPrivate *priv = GET_PRIV (app);
+    YelpApplicationPrivate *priv = yelp_application_get_instance_private (app);
     priv->docsettings = g_hash_table_new_full (g_str_hash, g_str_equal,
                                                (GDestroyNotify) g_free,
                                                (GDestroyNotify) g_object_unref);
@@ -173,8 +173,6 @@ yelp_application_class_init (YelpApplicationClass *klass)
 
     object_class->dispose = yelp_application_dispose;
     object_class->finalize = yelp_application_finalize;
-
-    g_type_class_add_private (klass, sizeof (YelpApplicationPrivate));
 }
 
 static void
@@ -188,7 +186,7 @@ yelp_application_iface_init (YelpBookmarksInterface *iface)
 static void
 yelp_application_dispose (GObject *object)
 {
-    YelpApplicationPrivate *priv = GET_PRIV (object);
+    YelpApplicationPrivate *priv = yelp_application_get_instance_private (YELP_APPLICATION (object));
 
     if (priv->show_cursor_action) {
         g_object_unref (priv->show_cursor_action);
@@ -216,7 +214,7 @@ yelp_application_dispose (GObject *object)
 static void
 yelp_application_finalize (GObject *object)
 {
-    YelpApplicationPrivate *priv = GET_PRIV (object);
+    YelpApplicationPrivate *priv = yelp_application_get_instance_private (YELP_APPLICATION (object));
 
     g_hash_table_destroy (priv->windows_by_document);
     g_hash_table_destroy (priv->docsettings);
@@ -263,7 +261,7 @@ static void
 yelp_application_startup (GApplication *application)
 {
     YelpApplication *app = YELP_APPLICATION (application);
-    YelpApplicationPrivate *priv = GET_PRIV (app);
+    YelpApplicationPrivate *priv = yelp_application_get_instance_private (app);
     gchar *keyfile;
     YelpSettings *settings;
 
@@ -323,7 +321,7 @@ application_adjust_font (GAction         *action,
                          GVariant        *parameter,
                          YelpApplication *app)
 {
-    YelpApplicationPrivate *priv = GET_PRIV (app);
+    YelpApplicationPrivate *priv = yelp_application_get_instance_private (app);
     gint adjustment = g_settings_get_int (priv->gsettings, "font-adjustment");
     gint adjust = g_str_equal (g_action_get_name (action), "yelp-application-larger-text") ? 1 : -1;
 
@@ -336,7 +334,7 @@ application_adjust_font (GAction         *action,
 static void
 application_set_font_sensitivity (YelpApplication *app)
 {
-    YelpApplicationPrivate *priv = GET_PRIV (app);
+    YelpApplicationPrivate *priv = yelp_application_get_instance_private (app);
     YelpSettings *settings = yelp_settings_get_default ();
     GParamSpec *spec = g_object_class_find_property ((GObjectClass *) YELP_SETTINGS_GET_CLASS (settings),
                                                      "font-adjustment");
@@ -457,7 +455,7 @@ application_uri_resolved (YelpUri             *uri,
     YelpWindow *window;
     gchar *doc_uri;
     GdkWindow *gdk_window;
-    YelpApplicationPrivate *priv = GET_PRIV (data->app);
+    YelpApplicationPrivate *priv = yelp_application_get_instance_private (data->app);
     GFile *gfile;
 
     /* We held the application while resolving the URI, so unhold now. */
@@ -545,7 +543,7 @@ application_window_deleted (YelpWindow      *window,
                             YelpApplication *app)
 {
     gchar *doc_uri; /* owned by windows_by_document */
-    YelpApplicationPrivate *priv = GET_PRIV (app);
+    YelpApplicationPrivate *priv = yelp_application_get_instance_private (app);
 
     priv->windows = g_slist_remove (priv->windows, window);
     doc_uri = g_object_get_data (G_OBJECT (window), "doc_uri");
@@ -558,7 +556,7 @@ application_window_deleted (YelpWindow      *window,
 GSettings *
 application_get_doc_settings (YelpApplication *app, const gchar *doc_uri)
 {
-    YelpApplicationPrivate *priv = GET_PRIV (app);
+    YelpApplicationPrivate *priv = yelp_application_get_instance_private (app);
     GSettings *settings = g_hash_table_lookup (priv->docsettings, doc_uri);
     if (settings == NULL) {
         gchar *tmp, *key, *settings_path;
@@ -756,7 +754,7 @@ static gboolean
 window_resized (YelpWindow        *window,
                 YelpApplication   *app)
 {
-    YelpApplicationPrivate *priv = GET_PRIV (app);
+    YelpApplicationPrivate *priv = yelp_application_get_instance_private (app);
     YelpUri *uri;
     gchar *doc_uri;
     GSettings *settings;
diff --git a/src/yelp-window.c b/src/yelp-window.c
index e5abd635..a648b6ef 100644
--- a/src/yelp-window.c
+++ b/src/yelp-window.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
 /*
- * Copyright (C) 2010 Shaun McCance <shaunm gnome org>
+ * Copyright (C) 2010-2020 Shaun McCance <shaunm gnome org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
@@ -151,9 +151,6 @@ enum {
 
 static guint signals[LAST_SIGNAL] = { 0 };
 
-G_DEFINE_TYPE (YelpWindow, yelp_window, GTK_TYPE_APPLICATION_WINDOW)
-#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_WINDOW, YelpWindowPrivate))
-
 typedef struct _YelpWindowPrivate YelpWindowPrivate;
 struct _YelpWindowPrivate {
     YelpApplication *application;
@@ -188,6 +185,8 @@ struct _YelpWindowPrivate {
     gboolean use_header;
 };
 
+G_DEFINE_TYPE_WITH_PRIVATE (YelpWindow, yelp_window, GTK_TYPE_APPLICATION_WINDOW)
+
 static void
 yelp_window_init (YelpWindow *window)
 {
@@ -222,14 +221,12 @@ yelp_window_class_init (YelpWindowClass *klass)
                       0, NULL, NULL,
                       g_cclosure_marshal_VOID__VOID,
                       G_TYPE_NONE, 0);
-
-    g_type_class_add_private (klass, sizeof (YelpWindowPrivate));
 }
 
 static void
 yelp_window_dispose (GObject *object)
 {
-    YelpWindowPrivate *priv = GET_PRIV (object);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (YELP_WINDOW (object));
 
     if (priv->bookmarks_changed) {
         g_signal_handler_disconnect (priv->application, priv->bookmarks_changed);
@@ -247,7 +244,7 @@ yelp_window_dispose (GObject *object)
 static void
 yelp_window_finalize (GObject *object)
 {
-    YelpWindowPrivate *priv = GET_PRIV (object);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (YELP_WINDOW (object));
     g_free (priv->doc_uri);
     G_OBJECT_CLASS (yelp_window_parent_class)->finalize (object);
 }
@@ -258,7 +255,7 @@ yelp_window_get_property (GObject    *object,
                           GValue     *value,
                           GParamSpec *pspec)
 {
-    YelpWindowPrivate *priv = GET_PRIV (object);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (YELP_WINDOW (object));
     switch (prop_id) {
     case PROP_APPLICATION:
         g_value_set_object (value, priv->application);
@@ -275,7 +272,7 @@ yelp_window_set_property (GObject     *object,
                           const GValue *value,
                           GParamSpec   *pspec)
 {
-    YelpWindowPrivate *priv = GET_PRIV (object);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (YELP_WINDOW (object));
     switch (prop_id) {
     case PROP_APPLICATION:
         priv->application = g_value_get_object (value);
@@ -295,7 +292,7 @@ window_construct (YelpWindow *window)
     GtkCssProvider *css;
     GtkSizeGroup *size_group;
     GMenu *menu, *section;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     GtkStyleContext *headerbar_context;
 
     const GActionEntry entries[] = {
@@ -564,7 +561,7 @@ void
 yelp_window_load_uri (YelpWindow  *window,
                       YelpUri     *uri)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     yelp_view_load_uri (priv->view, uri);
 }
@@ -573,7 +570,7 @@ YelpUri *
 yelp_window_get_uri (YelpWindow *window)
 {
     YelpUri *uri;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     g_object_get (G_OBJECT (priv->view), "yelp-uri", &uri, NULL);
     return uri;
 }
@@ -583,7 +580,7 @@ yelp_window_get_geometry (YelpWindow  *window,
                           gint        *width,
                           gint        *height)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     *width = priv->width;
     *height = priv->height;
 }
@@ -598,7 +595,7 @@ action_new_window (GSimpleAction *action,
     YelpUri *yuri;
     gchar *uri = NULL;
     YelpWindow *window = YELP_WINDOW (userdata);
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     g_object_get (priv->view, "yelp-uri", &yuri, NULL);
     uri = yelp_uri_get_document_uri (yuri);
@@ -622,7 +619,7 @@ action_search (GSimpleAction *action,
                GVariant      *parameter,
                gpointer       userdata)
 {
-    YelpWindowPrivate *priv = GET_PRIV (userdata);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (userdata);
 
     gtk_revealer_set_reveal_child (GTK_REVEALER (priv->find_bar), FALSE);
     gtk_search_bar_set_search_mode (GTK_SEARCH_BAR (priv->search_bar), TRUE);
@@ -634,7 +631,7 @@ action_find (GSimpleAction *action,
              GVariant      *parameter,
              gpointer       userdata)
 {
-    YelpWindowPrivate *priv = GET_PRIV (userdata);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (userdata);
 
     gtk_search_bar_set_search_mode (GTK_SEARCH_BAR (priv->search_bar), FALSE);
     gtk_revealer_set_reveal_child (GTK_REVEALER (priv->find_bar), TRUE);
@@ -646,7 +643,7 @@ action_go_all (GSimpleAction *action,
                GVariant      *parameter,
                gpointer       userdata)
 {
-    YelpWindowPrivate *priv = GET_PRIV (userdata);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (userdata);
     yelp_view_load (priv->view, "help-list:");
 }
 
@@ -655,7 +652,7 @@ action_ctrll (GSimpleAction *action,
               GVariant      *parameter,
               gpointer       userdata)
 {
-    YelpWindowPrivate *priv = GET_PRIV (userdata);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (userdata);
     YelpUri *yuri;
     gchar *uri = NULL;
 
@@ -723,7 +720,7 @@ window_map_event (YelpWindow  *window,
                   GdkEvent    *event,
                   gpointer     user_data)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     priv->configured = TRUE;
     return FALSE;
 }
@@ -733,7 +730,7 @@ window_configure_event (YelpWindow         *window,
                         GdkEventConfigure  *event,
                         gpointer            user_data)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     gboolean skip = TRUE;
     if (priv->width != event->width) {
         skip = FALSE;
@@ -762,7 +759,7 @@ window_configure_event (YelpWindow         *window,
 static gboolean
 window_resize_signal (YelpWindow *window)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     g_signal_emit (window, signals[RESIZE_EVENT], 0);
     priv->resize_signal = 0;
     return FALSE;
@@ -773,7 +770,7 @@ window_key_press (YelpWindow  *window,
                   GdkEventKey *event,
                   gpointer     userdata)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     if (gtk_revealer_get_reveal_child (GTK_REVEALER (priv->find_bar)))
         return FALSE;
@@ -792,7 +789,7 @@ bookmark_activated (GtkListBox    *box,
 {
     YelpUri *base, *uri;
     gchar *xref;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     gtk_widget_hide (priv->bookmark_menu);
 
@@ -816,7 +813,7 @@ bookmark_removed (GtkButton  *button,
     YelpUri *uri;
     gchar *doc_uri;
     gchar *page_id = NULL;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     g_object_get (priv->view, "yelp-uri", &uri, NULL);
     doc_uri = yelp_uri_get_document_uri (uri);
@@ -845,7 +842,7 @@ bookmark_added (GtkButton  *button,
 {
     YelpUri *uri;
     gchar *doc_uri, *page_id, *icon, *title;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     g_object_get (priv->view,
                   "yelp-uri", &uri,
@@ -870,7 +867,7 @@ app_bookmarks_changed (YelpApplication *app,
 {
     YelpUri *uri;
     gchar *this_doc_uri;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     g_object_get (priv->view, "yelp-uri", &uri, NULL);
     this_doc_uri = yelp_uri_get_document_uri (uri);
@@ -914,7 +911,7 @@ window_set_bookmarks (YelpWindow  *window,
     GVariant *value;
     GVariantIter *iter;
     gchar *page_id, *icon, *title;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     GList *children, *cur;
     GSList *entries = NULL;
 
@@ -974,7 +971,7 @@ window_set_bookmark_buttons (YelpWindow *window)
     YelpUri *uri = NULL;
     gchar *doc_uri = NULL, *page_id = NULL;
     gboolean bookmarked;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
 
     g_object_get (priv->view,
@@ -1005,7 +1002,7 @@ window_search_mode (GtkSearchBar  *search_bar,
                     GParamSpec    *pspec,
                     YelpWindow    *window)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     if (gtk_search_bar_get_search_mode (GTK_SEARCH_BAR (search_bar)))
         gtk_revealer_set_reveal_child (GTK_REVEALER (priv->find_bar), FALSE);
@@ -1016,7 +1013,7 @@ find_entry_key_press (GtkEntry    *entry,
                       GdkEventKey *event,
                       YelpWindow  *window)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     WebKitFindController *find_controller;
 
     find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (priv->view));
@@ -1041,7 +1038,7 @@ find_entry_changed (GtkEntry   *entry,
                     YelpWindow *window)
 {
     gchar *text;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     WebKitFindController *find_controller;
 
     find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (priv->view));
@@ -1059,7 +1056,7 @@ static void
 find_prev_clicked (GtkButton  *button,
                    YelpWindow *window)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     WebKitFindController *find_controller;
 
     find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (priv->view));
@@ -1070,7 +1067,7 @@ static void
 find_next_clicked (GtkButton  *button,
                    YelpWindow *window)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     WebKitFindController *find_controller;
 
     find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (priv->view));
@@ -1082,7 +1079,7 @@ view_new_window (YelpView   *view,
                  YelpUri    *uri,
                  YelpWindow *window)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     yelp_application_new_window_uri (priv->application, uri);
 }
 
@@ -1094,7 +1091,7 @@ view_loaded (YelpView   *view,
     YelpUri *uri;
     gchar *doc_uri;
     YelpViewState state;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     g_object_get (view,
                   "yelp-uri", &uri,
@@ -1153,7 +1150,7 @@ view_uri_selected (YelpView     *view,
 {
     YelpUri *uri;
     gchar *doc_uri;
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     g_object_get (G_OBJECT (view), "yelp-uri", &uri, NULL);
     if (uri == NULL)
@@ -1177,7 +1174,7 @@ view_root_title (YelpView    *view,
                  GParamSpec  *pspec,
                  YelpWindow  *window)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     gchar *root_title, *page_title;
     g_object_get (view, "root-title", &root_title, "page-title", &page_title, NULL);
 
@@ -1209,7 +1206,7 @@ static void
 ctrll_entry_activate (GtkEntry    *entry,
                       YelpWindow  *window)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
     YelpUri *uri = yelp_uri_new (gtk_entry_get_text (entry));
 
     yelp_window_load_uri (window, uri);
@@ -1223,7 +1220,7 @@ ctrll_entry_key_press (GtkWidget    *widget,
                        GdkEventKey  *event,
                        YelpWindow   *window)
 {
-    YelpWindowPrivate *priv = GET_PRIV (window);
+    YelpWindowPrivate *priv = yelp_window_get_instance_private (window);
 
     if (event->keyval == GDK_KEY_Escape) {
         gtk_header_bar_set_custom_title (GTK_HEADER_BAR (priv->header), NULL);


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