diff --git a/gtk/gtksocket.c b/gtk/gtksocket.c
index 876d5aa..35a1166 100644
--- a/gtk/gtksocket.c
+++ b/gtk/gtksocket.c
@@ -589,10 +589,11 @@ gtk_socket_send_configure_event (GtkSocket *socket)
   gdk_error_trap_pop_ignored ();
 
   gtk_widget_get_allocation (GTK_WIDGET(socket), &allocation);
+  gint scale = gtk_widget_get_scale_factor (GTK_WIDGET(socket));
   xconfigure.x = x;
   xconfigure.y = y;
-  xconfigure.width = allocation.width;
-  xconfigure.height = allocation.height;
+  xconfigure.width = allocation.width * scale;
+  xconfigure.height = allocation.height * scale;
 
   xconfigure.border_width = 0;
   xconfigure.above = None;

