# HG changeset patch
# Node ID 7c66e19d6e9b
# Parent  c8a03d3be794
diff --git a/gplugin-gtk4-viewer/gplugin-gtk-viewer-window.c b/gplugin-gtk4-viewer/gplugin-gtk-viewer-window.c
--- a/gplugin-gtk4-viewer/gplugin-gtk-viewer-window.c
+++ b/gplugin-gtk4-viewer/gplugin-gtk-viewer-window.c
@@ -25,7 +25,7 @@
 	GPluginGtkView *view;
 };
 
-G_DEFINE_TYPE(
+G_DEFINE_FINAL_TYPE(
 	GPluginGtkViewerWindow,
 	gplugin_gtk_viewer_window,
 	GTK_TYPE_APPLICATION_WINDOW)
diff --git a/gplugin-gtk4/gplugin-gtk-plugin-page.c b/gplugin-gtk4/gplugin-gtk-plugin-page.c
--- a/gplugin-gtk4/gplugin-gtk-plugin-page.c
+++ b/gplugin-gtk4/gplugin-gtk-plugin-page.c
@@ -182,7 +182,7 @@
 /******************************************************************************
  * GObject Implementation
  *****************************************************************************/
-G_DEFINE_TYPE(GPluginGtkPluginPage, gplugin_gtk_plugin_page, GTK_TYPE_BOX)
+G_DEFINE_FINAL_TYPE(GPluginGtkPluginPage, gplugin_gtk_plugin_page, GTK_TYPE_BOX)
 
 static void
 gplugin_gtk_plugin_page_set_property(
diff --git a/gplugin-gtk4/gplugin-gtk-plugin-row.c b/gplugin-gtk4/gplugin-gtk-plugin-row.c
--- a/gplugin-gtk4/gplugin-gtk-plugin-row.c
+++ b/gplugin-gtk4/gplugin-gtk-plugin-row.c
@@ -83,7 +83,7 @@
 /******************************************************************************
  * GObject Implementation
  *****************************************************************************/
-G_DEFINE_TYPE(
+G_DEFINE_FINAL_TYPE(
 	GPluginGtkPluginRow,
 	gplugin_gtk_plugin_row,
 	GTK_TYPE_LIST_BOX_ROW)
diff --git a/gplugin-gtk4/gplugin-gtk-plugin-settings-list.c b/gplugin-gtk4/gplugin-gtk-plugin-settings-list.c
--- a/gplugin-gtk4/gplugin-gtk-plugin-settings-list.c
+++ b/gplugin-gtk4/gplugin-gtk-plugin-settings-list.c
@@ -521,7 +521,7 @@
 /******************************************************************************
  * GObject Implementation
  *****************************************************************************/
-G_DEFINE_TYPE(
+G_DEFINE_FINAL_TYPE(
 	GPluginGtkPluginSettingsList,
 	gplugin_gtk_plugin_settings_list,
 	GTK_TYPE_BOX)
diff --git a/gplugin-gtk4/gplugin-gtk-view.c b/gplugin-gtk4/gplugin-gtk-view.c
--- a/gplugin-gtk4/gplugin-gtk-view.c
+++ b/gplugin-gtk4/gplugin-gtk-view.c
@@ -199,7 +199,7 @@
 /******************************************************************************
  * GObject Implementation
  *****************************************************************************/
-G_DEFINE_TYPE(GPluginGtkView, gplugin_gtk_view, GTK_TYPE_BOX)
+G_DEFINE_FINAL_TYPE(GPluginGtkView, gplugin_gtk_view, GTK_TYPE_BOX)
 
 static void
 gplugin_gtk_view_set_property(
diff --git a/gplugin-introspection/tests/introspectabletype.c b/gplugin-introspection/tests/introspectabletype.c
--- a/gplugin-introspection/tests/introspectabletype.c
+++ b/gplugin-introspection/tests/introspectabletype.c
@@ -35,7 +35,12 @@
 	gboolean dummy;
 };
 
-G_DEFINE_DYNAMIC_TYPE(IntrospectableType, introspectable_type, G_TYPE_OBJECT)
+G_DEFINE_DYNAMIC_TYPE_EXTENDED(
+	IntrospectableType,
+	introspectable_type,
+	G_TYPE_OBJECT,
+	G_TYPE_FLAG_FINAL,
+	{})
 
 static void
 introspectable_type_get_property(
diff --git a/gplugin/gplugin-file-source.c b/gplugin/gplugin-file-source.c
--- a/gplugin/gplugin-file-source.c
+++ b/gplugin/gplugin-file-source.c
@@ -419,7 +419,7 @@
 /******************************************************************************
  * GObject implementation
  *****************************************************************************/
-G_DEFINE_TYPE_WITH_CODE(
+G_DEFINE_FINAL_TYPE_WITH_CODE(
 	GPluginFileSource,
 	gplugin_file_source,
 	G_TYPE_OBJECT,
diff --git a/gplugin/gplugin-manager.c b/gplugin/gplugin-manager.c
--- a/gplugin/gplugin-manager.c
+++ b/gplugin/gplugin-manager.c
@@ -78,7 +78,7 @@
 	gboolean refresh_needed;
 };
 
-G_DEFINE_TYPE(GPluginManager, gplugin_manager, G_TYPE_OBJECT)
+G_DEFINE_FINAL_TYPE(GPluginManager, gplugin_manager, G_TYPE_OBJECT)
 
 /******************************************************************************
  * Globals
diff --git a/gplugin/gplugin-native-loader.c b/gplugin/gplugin-native-loader.c
--- a/gplugin/gplugin-native-loader.c
+++ b/gplugin/gplugin-native-loader.c
@@ -44,7 +44,10 @@
 	GPluginLoader parent;
 };
 
-G_DEFINE_TYPE(GPluginNativeLoader, gplugin_native_loader, GPLUGIN_TYPE_LOADER)
+G_DEFINE_FINAL_TYPE(
+	GPluginNativeLoader,
+	gplugin_native_loader,
+	GPLUGIN_TYPE_LOADER)
 
 /******************************************************************************
  * Helpers
diff --git a/gplugin/gplugin-native-plugin.c b/gplugin/gplugin-native-plugin.c
--- a/gplugin/gplugin-native-plugin.c
+++ b/gplugin/gplugin-native-plugin.c
@@ -181,7 +181,7 @@
 /******************************************************************************
  * GObject Implementation
  *****************************************************************************/
-G_DEFINE_TYPE_WITH_CODE(
+G_DEFINE_FINAL_TYPE_WITH_CODE(
 	GPluginNativePlugin,
 	gplugin_native_plugin,
 	G_TYPE_TYPE_MODULE,
diff --git a/gplugin/tests/dynamic-type/dynamic-type-provider.c b/gplugin/tests/dynamic-type/dynamic-type-provider.c
--- a/gplugin/tests/dynamic-type/dynamic-type-provider.c
+++ b/gplugin/tests/dynamic-type/dynamic-type-provider.c
@@ -21,7 +21,12 @@
 
 #include "dynamic-test.h"
 
-G_DEFINE_DYNAMIC_TYPE(DynamicTest, dynamic_test, G_TYPE_OBJECT)
+G_DEFINE_DYNAMIC_TYPE_EXTENDED(
+	DynamicTest,
+	dynamic_test,
+	G_TYPE_OBJECT,
+	G_TYPE_FLAG_FINAL,
+	{})
 
 static void
 dynamic_test_init(G_GNUC_UNUSED DynamicTest *inst)
diff --git a/gplugin/tests/test-loader-registration.c b/gplugin/tests/test-loader-registration.c
--- a/gplugin/tests/test-loader-registration.c
+++ b/gplugin/tests/test-loader-registration.c
@@ -70,7 +70,7 @@
 	return FALSE;
 }
 
-G_DEFINE_TYPE(TestGPluginLoader, test_gplugin_loader, GPLUGIN_TYPE_LOADER)
+G_DEFINE_FINAL_TYPE(TestGPluginLoader, test_gplugin_loader, GPLUGIN_TYPE_LOADER)
 
 static void
 test_gplugin_loader_init(G_GNUC_UNUSED TestGPluginLoader *loader)
diff --git a/gplugin/tests/test-loader.c b/gplugin/tests/test-loader.c
--- a/gplugin/tests/test-loader.c
+++ b/gplugin/tests/test-loader.c
@@ -57,7 +57,7 @@
 {
 }
 
-G_DEFINE_TYPE_WITH_CODE(
+G_DEFINE_FINAL_TYPE_WITH_CODE(
 	TestGPluginPlugin,
 	test_gplugin_plugin,
 	G_TYPE_OBJECT,
@@ -238,7 +238,7 @@
 	return TRUE;
 }
 
-G_DEFINE_TYPE(TestGPluginLoader, test_gplugin_loader, GPLUGIN_TYPE_LOADER)
+G_DEFINE_FINAL_TYPE(TestGPluginLoader, test_gplugin_loader, GPLUGIN_TYPE_LOADER)
 
 static void
 test_gplugin_loader_init(G_GNUC_UNUSED TestGPluginLoader *loader)
diff --git a/gplugin/tests/test-source.c b/gplugin/tests/test-source.c
--- a/gplugin/tests/test-source.c
+++ b/gplugin/tests/test-source.c
@@ -49,7 +49,7 @@
 	iface->scan = test_gplugin_source_scan;
 }
 
-G_DEFINE_TYPE_WITH_CODE(
+G_DEFINE_FINAL_TYPE_WITH_CODE(
 	TestGPluginSource,
 	test_gplugin_source,
 	G_TYPE_OBJECT,
diff --git a/lua/gplugin-lua-loader.c b/lua/gplugin-lua-loader.c
--- a/lua/gplugin-lua-loader.c
+++ b/lua/gplugin-lua-loader.c
@@ -29,7 +29,12 @@
 	GPluginLoader parent;
 };
 
-G_DEFINE_DYNAMIC_TYPE(GPluginLuaLoader, gplugin_lua_loader, GPLUGIN_TYPE_LOADER)
+G_DEFINE_DYNAMIC_TYPE_EXTENDED(
+	GPluginLuaLoader,
+	gplugin_lua_loader,
+	GPLUGIN_TYPE_LOADER,
+	G_TYPE_FLAG_FINAL,
+	{})
 
 /******************************************************************************
  * Helpers
diff --git a/lua/gplugin-lua-plugin.c b/lua/gplugin-lua-plugin.c
--- a/lua/gplugin-lua-plugin.c
+++ b/lua/gplugin-lua-plugin.c
@@ -61,7 +61,7 @@
 	GPluginLuaPlugin,
 	gplugin_lua_plugin,
 	G_TYPE_OBJECT,
-	0,
+	G_TYPE_FLAG_FINAL,
 	G_IMPLEMENT_INTERFACE(GPLUGIN_TYPE_PLUGIN, gplugin_lua_plugin_iface_init))
 
 /******************************************************************************
diff --git a/python3/gplugin-python3-loader.c b/python3/gplugin-python3-loader.c
--- a/python3/gplugin-python3-loader.c
+++ b/python3/gplugin-python3-loader.c
@@ -31,10 +31,12 @@
 	GPluginLoader parent;
 };
 
-G_DEFINE_DYNAMIC_TYPE(
+G_DEFINE_DYNAMIC_TYPE_EXTENDED(
 	GPluginPython3Loader,
 	gplugin_python3_loader,
-	GPLUGIN_TYPE_LOADER)
+	GPLUGIN_TYPE_LOADER,
+	G_TYPE_FLAG_FINAL,
+	{})
 
 /******************************************************************************
  * GPluginLoader Implementation
diff --git a/python3/gplugin-python3-plugin.c b/python3/gplugin-python3-plugin.c
--- a/python3/gplugin-python3-plugin.c
+++ b/python3/gplugin-python3-plugin.c
@@ -67,7 +67,7 @@
 	GPluginPython3Plugin,
 	gplugin_python3_plugin,
 	G_TYPE_OBJECT,
-	0,
+	G_TYPE_FLAG_FINAL,
 	G_IMPLEMENT_INTERFACE(
 		GPLUGIN_TYPE_PLUGIN,
 		gplugin_python3_plugin_iface_init))
