diff --git a/ChangeLog b/ChangeLog
index d529664..b26de89 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,35 @@
+2008-12-13  Przemysław Grzegorczyk  <pgrzegorczyk@gmail.com>
+
+	* system-settings/src/nm-system-config-error.h:
+	* system-settings/src/nm-system-config-hal-manager.h:
+	* system-settings/plugins/ifupdown/plugin.c:
+	* src/vpn-manager/nm-vpn-connection.h:
+	* src/vpn-manager/nm-vpn-manager.h:
+	* src/vpn-manager/nm-vpn-service.h:
+	* src/ppp-manager/nm-ppp-manager.h:
+	* src/ppp-manager/nm-pppd-plugin.c:
+	* src/dnsmasq-manager/nm-dnsmasq-manager.h:
+	* src/dhcp-manager/nm-dhcp-manager.h:
+	* src/NetworkManagerAP.h:
+	* src/nm-activation-request.h:
+	* src/nm-dhcp4-config.h:
+	* src/nm-hal-manager.h:
+	* src/nm-ip4-config.h:
+	* src/nm-manager.h:
+	* libnm-util/nm-setting.h:
+	* libnm-glib/nm-access-point.h:
+	* libnm-glib/nm-active-connection.h:
+	* libnm-glib/nm-client.h:
+	* libnm-glib/nm-device.h:
+	* libnm-glib/nm-dhcp4-config.h:
+	* libnm-glib/nm-ip4-config.h:
+	* libnm-glib/nm-object-cache.h:
+	* libnm-glib/nm-object.h:
+	* libnm-glib/nm-vpn-connection.h:
+	* libnm-glib/nm-vpn-plugin.h:
+	* examples/python/systray/eggtrayicon.h: Cleaned up gtk and glib includes
+	to use only toplevel headers. Bug #564376.
+
 2008-12-11  Dan Williams  <dcbw@redhat.com>
 
 	* Move NetworkManager to git.freedesktop.org
diff --git a/examples/python/systray/eggtrayicon.h b/examples/python/systray/eggtrayicon.h
index e6664fc..c1a2734 100644
--- a/examples/python/systray/eggtrayicon.h
+++ b/examples/python/systray/eggtrayicon.h
@@ -21,7 +21,7 @@
 #ifndef __EGG_TRAY_ICON_H__
 #define __EGG_TRAY_ICON_H__
 
-#include <gtk/gtkplug.h>
+#include <gtk/gtk.h>
 #ifdef GDK_WINDOWING_X11
 #include <gdk/gdkx.h>
 #endif
diff --git a/libnm-glib/nm-access-point.h b/libnm-glib/nm-access-point.h
index c5017bd..865218b 100644
--- a/libnm-glib/nm-access-point.h
+++ b/libnm-glib/nm-access-point.h
@@ -24,7 +24,7 @@
 #ifndef NM_ACCESS_POINT_H
 #define NM_ACCESS_POINT_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <NetworkManager.h>
 #include "nm-object.h"
diff --git a/libnm-glib/nm-active-connection.h b/libnm-glib/nm-active-connection.h
index f75bfbc..e7b34a3 100644
--- a/libnm-glib/nm-active-connection.h
+++ b/libnm-glib/nm-active-connection.h
@@ -24,7 +24,7 @@
 #ifndef NM_ACTIVE_CONNECTION_H
 #define NM_ACTIVE_CONNECTION_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include "nm-object.h"
 #include <nm-connection.h>
diff --git a/libnm-glib/nm-client.h b/libnm-glib/nm-client.h
index 5820ea5..5af95d4 100644
--- a/libnm-glib/nm-client.h
+++ b/libnm-glib/nm-client.h
@@ -24,7 +24,7 @@
 #ifndef NM_CLIENT_H
 #define NM_CLIENT_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 #include <NetworkManager.h>
diff --git a/libnm-glib/nm-device.h b/libnm-glib/nm-device.h
index 39c1e1a..1087afb 100644
--- a/libnm-glib/nm-device.h
+++ b/libnm-glib/nm-device.h
@@ -24,7 +24,7 @@
 #ifndef NM_DEVICE_H
 #define NM_DEVICE_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 #include "nm-object.h"
diff --git a/libnm-glib/nm-dhcp4-config.h b/libnm-glib/nm-dhcp4-config.h
index 76903ce..14e3274 100644
--- a/libnm-glib/nm-dhcp4-config.h
+++ b/libnm-glib/nm-dhcp4-config.h
@@ -24,7 +24,7 @@
 #ifndef NM_DHCP4_CONFIG_H
 #define NM_DHCP4_CONFIG_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 #include "nm-object.h"
diff --git a/libnm-glib/nm-ip4-config.h b/libnm-glib/nm-ip4-config.h
index c8dbe19..c3e68ad 100644
--- a/libnm-glib/nm-ip4-config.h
+++ b/libnm-glib/nm-ip4-config.h
@@ -24,7 +24,7 @@
 #ifndef NM_IP4_CONFIG_H
 #define NM_IP4_CONFIG_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 #include "nm-object.h"
diff --git a/libnm-glib/nm-object-cache.h b/libnm-glib/nm-object-cache.h
index 72ed060..b8cf212 100644
--- a/libnm-glib/nm-object-cache.h
+++ b/libnm-glib/nm-object-cache.h
@@ -23,7 +23,7 @@
 #ifndef NM_OBJECT_CACHE_H
 #define NM_OBJECT_CACHE_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include "nm-object.h"
 
diff --git a/libnm-glib/nm-object.h b/libnm-glib/nm-object.h
index da34d3a..06cb512 100644
--- a/libnm-glib/nm-object.h
+++ b/libnm-glib/nm-object.h
@@ -24,7 +24,7 @@
 #ifndef NM_OBJECT_H
 #define NM_OBJECT_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 
diff --git a/libnm-glib/nm-vpn-connection.h b/libnm-glib/nm-vpn-connection.h
index 3c18477..8be8eef 100644
--- a/libnm-glib/nm-vpn-connection.h
+++ b/libnm-glib/nm-vpn-connection.h
@@ -24,7 +24,7 @@
 #ifndef NM_VPN_CONNECTION_H
 #define NM_VPN_CONNECTION_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 #include "nm-active-connection.h"
diff --git a/libnm-glib/nm-vpn-plugin.h b/libnm-glib/nm-vpn-plugin.h
index 3dc2408..88eb1e6 100644
--- a/libnm-glib/nm-vpn-plugin.h
+++ b/libnm-glib/nm-vpn-plugin.h
@@ -24,7 +24,7 @@
 #ifndef NM_VPN_PLUGIN_H
 #define NM_VPN_PLUGIN_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 #include <NetworkManagerVPN.h>
diff --git a/libnm-util/nm-setting.h b/libnm-util/nm-setting.h
index 474d3f6..6806363 100644
--- a/libnm-util/nm-setting.h
+++ b/libnm-util/nm-setting.h
@@ -26,7 +26,7 @@
 #ifndef NM_SETTING_H
 #define NM_SETTING_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 
 G_BEGIN_DECLS
diff --git a/src/NetworkManagerAP.h b/src/NetworkManagerAP.h
index 4ad4fd7..3f2bc61 100644
--- a/src/NetworkManagerAP.h
+++ b/src/NetworkManagerAP.h
@@ -23,7 +23,6 @@
 #define NM_ACCESS_POINT_H
 
 #include <glib.h>
-#include <glib/gtypes.h>
 #include <glib-object.h>
 #include <time.h>
 #include "NetworkManager.h"
diff --git a/src/dhcp-manager/nm-dhcp-manager.h b/src/dhcp-manager/nm-dhcp-manager.h
index 291e1b0..136bea7 100644
--- a/src/dhcp-manager/nm-dhcp-manager.h
+++ b/src/dhcp-manager/nm-dhcp-manager.h
@@ -22,7 +22,7 @@
 #ifndef NM_DHCP_MANAGER_H
 #define NM_DHCP_MANAGER_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 
 #include <nm-setting-ip4-config.h>
diff --git a/src/dnsmasq-manager/nm-dnsmasq-manager.h b/src/dnsmasq-manager/nm-dnsmasq-manager.h
index 9c73db5..1214d06 100644
--- a/src/dnsmasq-manager/nm-dnsmasq-manager.h
+++ b/src/dnsmasq-manager/nm-dnsmasq-manager.h
@@ -21,7 +21,7 @@
 #ifndef NM_DNSMASQ_MANAGER_H
 #define NM_DNSMASQ_MANAGER_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 
 #include "nm-ip4-config.h"
diff --git a/src/nm-activation-request.h b/src/nm-activation-request.h
index 3f3d93a..bce0dfc 100644
--- a/src/nm-activation-request.h
+++ b/src/nm-activation-request.h
@@ -21,7 +21,7 @@
 #ifndef NM_ACTIVATION_REQUEST_H
 #define NM_ACTIVATION_REQUEST_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include "nm-connection.h"
 #include "nm-active-connection.h"
diff --git a/src/nm-dhcp4-config.h b/src/nm-dhcp4-config.h
index 9a97445..ffaa843 100644
--- a/src/nm-dhcp4-config.h
+++ b/src/nm-dhcp4-config.h
@@ -21,7 +21,7 @@
 #ifndef NM_DHCP4_CONFIG_H
 #define NM_DHCP4_CONFIG_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 
 #define NM_TYPE_DHCP4_CONFIG            (nm_dhcp4_config_get_type ())
diff --git a/src/nm-hal-manager.h b/src/nm-hal-manager.h
index d2203a2..73d9ce8 100644
--- a/src/nm-hal-manager.h
+++ b/src/nm-hal-manager.h
@@ -22,7 +22,7 @@
 #ifndef NM_HAL_MANAGER_H
 #define NM_HAL_MANAGER_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 
 G_BEGIN_DECLS
diff --git a/src/nm-ip4-config.h b/src/nm-ip4-config.h
index 2e9de50..990d5d1 100644
--- a/src/nm-ip4-config.h
+++ b/src/nm-ip4-config.h
@@ -21,7 +21,7 @@
 #ifndef NM_IP4_CONFIG_H
 #define NM_IP4_CONFIG_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 
 #include "nm-setting-ip4-config.h"
diff --git a/src/nm-manager.h b/src/nm-manager.h
index 3b87e8d..486dd15 100644
--- a/src/nm-manager.h
+++ b/src/nm-manager.h
@@ -22,7 +22,7 @@
 #ifndef NM_MANAGER_H
 #define NM_MANAGER_H 1
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 #include "nm-device.h"
diff --git a/src/ppp-manager/nm-ppp-manager.h b/src/ppp-manager/nm-ppp-manager.h
index 293d2b4..30de95b 100644
--- a/src/ppp-manager/nm-ppp-manager.h
+++ b/src/ppp-manager/nm-ppp-manager.h
@@ -22,7 +22,7 @@
 #ifndef NM_PPP_MANAGER_H
 #define NM_PPP_MANAGER_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 
 #include "nm-ppp-status.h"
diff --git a/src/ppp-manager/nm-pppd-plugin.c b/src/ppp-manager/nm-pppd-plugin.c
index fcc7a03..67d46d5 100644
--- a/src/ppp-manager/nm-pppd-plugin.c
+++ b/src/ppp-manager/nm-pppd-plugin.c
@@ -26,7 +26,7 @@
 #include <sys/socket.h>
 #include <netinet/in.h>
 #include <arpa/inet.h>
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 
diff --git a/src/vpn-manager/nm-vpn-connection.h b/src/vpn-manager/nm-vpn-connection.h
index 0d26eea..31a2618 100644
--- a/src/vpn-manager/nm-vpn-connection.h
+++ b/src/vpn-manager/nm-vpn-connection.h
@@ -22,7 +22,7 @@
 #ifndef NM_VPN_CONNECTION_H
 #define NM_VPN_CONNECTION_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include "NetworkManagerVPN.h"
 #include "nm-device.h"
diff --git a/src/vpn-manager/nm-vpn-manager.h b/src/vpn-manager/nm-vpn-manager.h
index 3ab7709..3500c6d 100644
--- a/src/vpn-manager/nm-vpn-manager.h
+++ b/src/vpn-manager/nm-vpn-manager.h
@@ -22,7 +22,7 @@
 #ifndef NM_VPN_MANAGER_H
 #define NM_VPN_MANAGER_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include "nm-vpn-connection.h"
 #include "nm-activation-request.h"
diff --git a/src/vpn-manager/nm-vpn-service.h b/src/vpn-manager/nm-vpn-service.h
index 6a1ebed..9c5e0ee 100644
--- a/src/vpn-manager/nm-vpn-service.h
+++ b/src/vpn-manager/nm-vpn-service.h
@@ -22,7 +22,7 @@
 #ifndef NM_VPN_SERVICE_H
 #define NM_VPN_SERVICE_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include "nm-device.h"
 #include "nm-vpn-connection.h"
diff --git a/system-settings/plugins/ifupdown/plugin.c b/system-settings/plugins/ifupdown/plugin.c
index c96917f..491946c 100644
--- a/system-settings/plugins/ifupdown/plugin.c
+++ b/system-settings/plugins/ifupdown/plugin.c
@@ -30,7 +30,7 @@
 #include <gmodule.h>
 #include <glib-object.h>
 #include <glib/gi18n.h>
-#include <glib/gslist.h>
+#include <glib.h>
 #include <nm-setting-connection.h>
 
 #include "interface_parser.h"
diff --git a/system-settings/src/nm-system-config-error.h b/system-settings/src/nm-system-config-error.h
index dbfcfed..63896fc 100644
--- a/system-settings/src/nm-system-config-error.h
+++ b/system-settings/src/nm-system-config-error.h
@@ -22,7 +22,7 @@
 #ifndef NM_SYSTEM_CONFIG_ERROR_H
 #define NM_SYSTEM_CONFIG_ERROR_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 
 enum {
diff --git a/system-settings/src/nm-system-config-hal-manager.h b/system-settings/src/nm-system-config-hal-manager.h
index cdf854e..0ffdfdd 100644
--- a/system-settings/src/nm-system-config-hal-manager.h
+++ b/system-settings/src/nm-system-config-hal-manager.h
@@ -22,7 +22,7 @@
 #ifndef NM_SYSTEM_CONFIG_HAL_MANAGER_H
 #define NM_SYSTEM_CONFIG_HAL_MANAGER_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 #include "NetworkManager.h"
diff --git a/vpn-daemons/openvpn/ChangeLog b/vpn-daemons/openvpn/ChangeLog
index 2b38cd5..da94ea8 100644
--- a/vpn-daemons/openvpn/ChangeLog
+++ b/vpn-daemons/openvpn/ChangeLog
@@ -1,3 +1,11 @@
+2008-12-13  Przemysław Grzegorczyk  <pgrzegorczyk@gmail.com>
+
+	* src/nm-openvpn-service.h:
+	* properties/auth-helpers.h:
+	* auth-dialog/gnome-two-password-dialog.c:
+	* auth-dialog/gnome-two-password-dialog.h: Cleared up gtk and glib includes
+	to use only toplevel headers. Bug #564376.
+
 2008-10-28  Tambet Ingo  <tambet@gmail.com>
 
 	Patch from Bin Li <libin.charles@gmail.com>.
diff --git a/vpn-daemons/openvpn/auth-dialog/gnome-two-password-dialog.c b/vpn-daemons/openvpn/auth-dialog/gnome-two-password-dialog.c
index b3f3b0e..ad9248a 100644
--- a/vpn-daemons/openvpn/auth-dialog/gnome-two-password-dialog.c
+++ b/vpn-daemons/openvpn/auth-dialog/gnome-two-password-dialog.c
@@ -25,19 +25,6 @@
 #include <config.h>
 //#include "gnome-i18nP.h"
 #include "gnome-two-password-dialog.h"
-#include <gtk/gtkbox.h>
-#include <gtk/gtkcheckbutton.h>
-#include <gtk/gtkentry.h>
-#include <gtk/gtkhbox.h>
-#include <gtk/gtkimage.h>
-#include <gtk/gtklabel.h>
-#include <gtk/gtkmain.h>
-#include <gtk/gtksignal.h>
-#include <gtk/gtkstock.h>
-#include <gtk/gtktable.h>
-#include <gtk/gtkvbox.h>
-#include <gtk/gtkradiobutton.h>
-#include <gtk/gtkstock.h>
 
 #include <glib/gi18n.h>
 #include <gtk/gtk.h>
diff --git a/vpn-daemons/openvpn/auth-dialog/gnome-two-password-dialog.h b/vpn-daemons/openvpn/auth-dialog/gnome-two-password-dialog.h
index 58235da..b9ee751 100644
--- a/vpn-daemons/openvpn/auth-dialog/gnome-two-password-dialog.h
+++ b/vpn-daemons/openvpn/auth-dialog/gnome-two-password-dialog.h
@@ -28,7 +28,7 @@
 #ifndef GNOME_TWO_PASSWORD_DIALOG_H
 #define GNOME_TWO_PASSWORD_DIALOG_H
 
-#include <gtk/gtkdialog.h>
+#include <gtk/gtk.h>
 
 G_BEGIN_DECLS
 
diff --git a/vpn-daemons/openvpn/properties/auth-helpers.h b/vpn-daemons/openvpn/properties/auth-helpers.h
index 0d3f53a..b5ea395 100644
--- a/vpn-daemons/openvpn/properties/auth-helpers.h
+++ b/vpn-daemons/openvpn/properties/auth-helpers.h
@@ -24,7 +24,6 @@
 
 #include <glib.h>
 #include <gtk/gtk.h>
-#include <gtk/gtkfilefilter.h>
 #include <glade/glade.h>
 
 #include <nm-connection.h>
diff --git a/vpn-daemons/openvpn/src/nm-openvpn-service.h b/vpn-daemons/openvpn/src/nm-openvpn-service.h
index 82158b5..8cd8ae2 100644
--- a/vpn-daemons/openvpn/src/nm-openvpn-service.h
+++ b/vpn-daemons/openvpn/src/nm-openvpn-service.h
@@ -23,7 +23,7 @@
 #ifndef NM_OPENVPN_SERVICE_H
 #define NM_OPENVPN_SERVICE_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <nm-vpn-plugin.h>
 
diff --git a/vpn-daemons/pptp/ChangeLog b/vpn-daemons/pptp/ChangeLog
index 830a9ac..c4ee066 100644
--- a/vpn-daemons/pptp/ChangeLog
+++ b/vpn-daemons/pptp/ChangeLog
@@ -1,3 +1,12 @@
+2008-12-13  Przemysław Grzegorczyk  <pgrzegorczyk@gmail.com>
+
+	* src/nm-pptp-pppd-plugin.c:
+	* src/nm-pptp-service.h:
+	* properties/advanced-dialog.h:
+	* auth-dialog/gnome-two-password-dialog.c:
+	* auth-dialog/gnome-two-password-dialog.h: Cleared up gtk and glib includes
+	to use only toplevel headers. Bug #564376.
+
 2008-11-29  Dan Williams  <dcbw@redhat.com>
 
 	* properties/nm-pptp.c
diff --git a/vpn-daemons/pptp/auth-dialog/gnome-two-password-dialog.c b/vpn-daemons/pptp/auth-dialog/gnome-two-password-dialog.c
index f000379..da3eed8 100644
--- a/vpn-daemons/pptp/auth-dialog/gnome-two-password-dialog.c
+++ b/vpn-daemons/pptp/auth-dialog/gnome-two-password-dialog.c
@@ -25,19 +25,6 @@
 #include <config.h>
 //#include "gnome-i18nP.h"
 #include "gnome-two-password-dialog.h"
-#include <gtk/gtkbox.h>
-#include <gtk/gtkcheckbutton.h>
-#include <gtk/gtkentry.h>
-#include <gtk/gtkhbox.h>
-#include <gtk/gtkimage.h>
-#include <gtk/gtklabel.h>
-#include <gtk/gtkmain.h>
-#include <gtk/gtksignal.h>
-#include <gtk/gtkstock.h>
-#include <gtk/gtktable.h>
-#include <gtk/gtkvbox.h>
-#include <gtk/gtkradiobutton.h>
-#include <gtk/gtkstock.h>
 
 #include <glib/gi18n.h>
 #include <gtk/gtk.h>
diff --git a/vpn-daemons/pptp/auth-dialog/gnome-two-password-dialog.h b/vpn-daemons/pptp/auth-dialog/gnome-two-password-dialog.h
index 4a38e8e..4fac37c 100644
--- a/vpn-daemons/pptp/auth-dialog/gnome-two-password-dialog.h
+++ b/vpn-daemons/pptp/auth-dialog/gnome-two-password-dialog.h
@@ -28,7 +28,7 @@
 #ifndef GNOME_TWO_PASSWORD_DIALOG_H
 #define GNOME_TWO_PASSWORD_DIALOG_H
 
-#include <gtk/gtkdialog.h>
+#include <gtk/gtk.h>
 
 G_BEGIN_DECLS
 
diff --git a/vpn-daemons/pptp/properties/advanced-dialog.h b/vpn-daemons/pptp/properties/advanced-dialog.h
index 6752e11..d907ef3 100644
--- a/vpn-daemons/pptp/properties/advanced-dialog.h
+++ b/vpn-daemons/pptp/properties/advanced-dialog.h
@@ -24,7 +24,6 @@
 
 #include <glib.h>
 #include <gtk/gtk.h>
-#include <gtk/gtkwidget.h>
 
 #include <nm-connection.h>
 
diff --git a/vpn-daemons/pptp/src/nm-pptp-pppd-plugin.c b/vpn-daemons/pptp/src/nm-pptp-pppd-plugin.c
index 2f10072..f6cc21e 100644
--- a/vpn-daemons/pptp/src/nm-pptp-pppd-plugin.c
+++ b/vpn-daemons/pptp/src/nm-pptp-pppd-plugin.c
@@ -28,7 +28,7 @@
 #include <sys/socket.h>
 #include <netinet/in.h>
 #include <arpa/inet.h>
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <dbus/dbus-glib.h>
 
diff --git a/vpn-daemons/pptp/src/nm-pptp-service.h b/vpn-daemons/pptp/src/nm-pptp-service.h
index dc1880c..ff02092 100644
--- a/vpn-daemons/pptp/src/nm-pptp-service.h
+++ b/vpn-daemons/pptp/src/nm-pptp-service.h
@@ -23,7 +23,7 @@
 #ifndef NM_PPTP_PLUGIN_H
 #define NM_PPTP_PLUGIN_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <nm-vpn-plugin.h>
 
diff --git a/vpn-daemons/vpnc/ChangeLog b/vpn-daemons/vpnc/ChangeLog
index a0f00a6..45be502 100644
--- a/vpn-daemons/vpnc/ChangeLog
+++ b/vpn-daemons/vpnc/ChangeLog
@@ -1,3 +1,10 @@
+2008-12-13  Przemysław Grzegorczyk  <pgrzegorczyk@gmail.com>
+
+	* src/nm-vpnc-service.h:
+	* auth-dialog/gnome-two-password-dialog.c:
+	* auth-dialog/gnome-two-password-dialog.h: Cleared up gtk and glib includes
+	to use only toplevel headers. Bug #564376.
+
 2008-12-05  Dan Williams  <dcbw@redhat.com>
 
 	* auth-dialog/gnome-two-password-dialog.c
diff --git a/vpn-daemons/vpnc/auth-dialog/gnome-two-password-dialog.c b/vpn-daemons/vpnc/auth-dialog/gnome-two-password-dialog.c
index 7ea6fb8..7b958ec 100644
--- a/vpn-daemons/vpnc/auth-dialog/gnome-two-password-dialog.c
+++ b/vpn-daemons/vpnc/auth-dialog/gnome-two-password-dialog.c
@@ -24,20 +24,6 @@
 
 #include <config.h>
 #include "gnome-two-password-dialog.h"
-#include <gtk/gtkbox.h>
-#include <gtk/gtkcheckbutton.h>
-#include <gtk/gtkentry.h>
-#include <gtk/gtkhbox.h>
-#include <gtk/gtkimage.h>
-#include <gtk/gtklabel.h>
-#include <gtk/gtkmain.h>
-#include <gtk/gtksignal.h>
-#include <gtk/gtkstock.h>
-#include <gtk/gtktable.h>
-#include <gtk/gtkvbox.h>
-#include <gtk/gtkradiobutton.h>
-#include <gtk/gtkstock.h>
-#include <gtk/gtkcombobox.h>
 #include <gnome-keyring-memory.h>
 
 #include <glib/gi18n.h>
diff --git a/vpn-daemons/vpnc/auth-dialog/gnome-two-password-dialog.h b/vpn-daemons/vpnc/auth-dialog/gnome-two-password-dialog.h
index 66cb880..b1d6806 100644
--- a/vpn-daemons/vpnc/auth-dialog/gnome-two-password-dialog.h
+++ b/vpn-daemons/vpnc/auth-dialog/gnome-two-password-dialog.h
@@ -28,7 +28,7 @@
 #ifndef VPN_PASSWORD_DIALOG_H
 #define VPN_PASSWORD_DIALOG_H
 
-#include <gtk/gtkdialog.h>
+#include <gtk/gtk.h>
 
 G_BEGIN_DECLS
 
diff --git a/vpn-daemons/vpnc/src/nm-vpnc-service.h b/vpn-daemons/vpnc/src/nm-vpnc-service.h
index 6cc174c..97330ac 100644
--- a/vpn-daemons/vpnc/src/nm-vpnc-service.h
+++ b/vpn-daemons/vpnc/src/nm-vpnc-service.h
@@ -3,7 +3,7 @@
 #ifndef NM_VPNC_PLUGIN_H
 #define NM_VPNC_PLUGIN_H
 
-#include <glib/gtypes.h>
+#include <glib.h>
 #include <glib-object.h>
 #include <nm-vpn-plugin.h>
 
