diff --git a/gtk/gtk.symbols b/gtk/gtk.symbols
index 3e515d3..ab8de03 100644
--- a/gtk/gtk.symbols
+++ b/gtk/gtk.symbols
@@ -2760,6 +2760,7 @@ gtk_paned_add1
 gtk_paned_add2
 gtk_paned_get_child1
 gtk_paned_get_child2
+gtk_paned_get_handle_window
 gtk_paned_get_position
 gtk_paned_get_type G_GNUC_CONST
 gtk_paned_pack1
diff --git a/gtk/gtkpaned.c b/gtk/gtkpaned.c
index d0f4443..e633e43 100644
--- a/gtk/gtkpaned.c
+++ b/gtk/gtkpaned.c
@@ -2227,5 +2227,26 @@ gtk_paned_toggle_handle_focus (GtkPaned *paned)
   return FALSE;
 }
 
+/**
+ * gtk_paned_get_handle_window:
+ * @panede: a #GtkPaned
+ *
+ * Returns the #GdkWindow of the handle. This function is
+ * useful when handling button or motion events because it
+ * enables the callback to distinguish between the window
+ * of the paned, a child and the handle.
+ *
+ * Return value: the paned's handle window.
+ *
+ * Since: 2.20
+ **/
+GdkWindow *
+gtk_paned_get_handle_window (GtkPaned *paned)
+{
+  g_return_val_if_fail (GTK_IS_PANED (paned), NULL);
+
+  return paned->handle;
+}
+
 #define __GTK_PANED_C__
 #include "gtkaliasdef.c"
diff --git a/gtk/gtkpaned.h b/gtk/gtkpaned.h
index 178d6cf..1da08a8 100644
--- a/gtk/gtkpaned.h
+++ b/gtk/gtkpaned.h
@@ -127,6 +127,8 @@ void        gtk_paned_set_position (GtkPaned       *paned,
 GtkWidget * gtk_paned_get_child1   (GtkPaned       *paned);
 GtkWidget * gtk_paned_get_child2   (GtkPaned       *paned);
 
+GdkWindow * gtk_paned_get_handle_window (GtkPaned  *paned);
+
 #ifndef GTK_DISABLE_DEPRECATED
 /* Internal function */
 void    gtk_paned_compute_position (GtkPaned  *paned,
