diff --git a/build/geanyvc.m4 b/build/geanyvc.m4
index bd374f5..2886acc 100644
--- a/build/geanyvc.m4
+++ b/build/geanyvc.m4
@@ -1,7 +1,6 @@
 AC_DEFUN([GP_CHECK_GEANYVC],
 [
     GP_ARG_DISABLE([GeanyVC], [auto])
-    GP_CHECK_PLUGIN_GTK2_ONLY([GeanyVC])
     GP_COMMIT_PLUGIN_STATUS([GeanyVC])
     AC_ARG_ENABLE(gtkspell,
         AC_HELP_STRING([--enable-gtkspell=ARG],
diff --git a/geanyvc/src/geanyvc.c b/geanyvc/src/geanyvc.c
index 10e86ce..7d8d570 100644
--- a/geanyvc/src/geanyvc.c
+++ b/geanyvc/src/geanyvc.c
@@ -1259,9 +1259,17 @@ get_diff_color(G_GNUC_UNUSED GeanyDocument * doc, gint style)
 	return &c;
 }
 
+#if GTK_MAJOR_VERSION == 3
+#define GLADE_HOOKUP_OBJECT(component,widget,name) \
+  g_object_set_data_full (G_OBJECT (component), name, \
+    g_object_ref (widget), (GDestroyNotify) g_object_unref)
+#else
 #define GLADE_HOOKUP_OBJECT(component,widget,name) \
   g_object_set_data_full (G_OBJECT (component), name, \
     gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
+#endif
+
+
 
 #define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
   g_object_set_data (G_OBJECT (component), name, widget)
@@ -1334,7 +1342,11 @@ create_commitDialog(void)
 	gtk_window_set_type_hint(GTK_WINDOW(commitDialog), GDK_WINDOW_TYPE_HINT_DIALOG);
 	gtk_dialog_set_has_separator(GTK_DIALOG(commitDialog), FALSE);
 
+#if GTK_MAJOR_VERSION == 3
+	dialog_vbox1 = gtk_dialog_get_content_area (GTK_DIALOG(commitDialog));
+#else
 	dialog_vbox1 = GTK_DIALOG(commitDialog)->vbox;
+#endif
 	gtk_widget_show(dialog_vbox1);
 
 	vpaned1 = gtk_vpaned_new();
@@ -1415,7 +1427,11 @@ create_commitDialog(void)
 	gtk_frame_set_label_widget(GTK_FRAME(frame1), label1);
 	gtk_label_set_use_markup(GTK_LABEL(label1), TRUE);
 
+#if GTK_MAJOR_VERSION == 3
+	dialog_action_area1 = gtk_dialog_get_action_area (GTK_DIALOG(commitDialog));
+#else
 	dialog_action_area1 = GTK_DIALOG(commitDialog)->action_area;
+#endif
 	gtk_widget_show(dialog_action_area1);
 	gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1), GTK_BUTTONBOX_END);
 
@@ -2258,8 +2274,8 @@ plugin_init(G_GNUC_UNUSED GeanyData * data)
 				ui_lookup_widget(geany->main_widgets->window, "menubar1"));
 
 		menu_vc = gtk_menu_item_new_with_mnemonic(_("_VC"));
-		gtk_menu_shell_insert(
-			menubar, menu_vc, g_list_length(menubar->children)-1);
+		
+		gtk_menu_shell_append(menubar, menu_vc);
 	}
 	else
 	{
