diff -ru ../wxaui-0.9.2.orig/src/manager.cpp ./src/manager.cpp
--- ../wxaui-0.9.2.orig/src/manager.cpp	2006-04-19 16:19:35.000000000 +0100
+++ ./src/manager.cpp	2006-04-19 20:29:32.000000000 +0100
@@ -2845,8 +2845,10 @@
              Row(part->dock->dock_row).
              Position(dock_drop_offset);
 
-        if (pt.y < part->dock->rect.y + 2 &&
-            part->dock->panes.GetCount() > 1)
+        if ((
+            ((pt.y < part->dock->rect.y + 2) && part->dock->IsHorizontal()) ||
+            ((pt.x < part->dock->rect.x + 2) && part->dock->IsVertical())
+            ) && part->dock->panes.GetCount() > 1)
         {
             int row = drop.dock_row;
             DoInsertDockRow(panes, part->dock->dock_direction,
@@ -2855,8 +2857,10 @@
             drop.dock_row = row;
         }
         
-        if (pt.y > part->dock->rect.y + part->dock->rect.height - 2 &&
-            part->dock->panes.GetCount() > 1)
+        if ((
+            ((pt.y > part->dock->rect.y + part->dock->rect.height - 2 ) && part->dock->IsHorizontal()) ||
+            ((pt.x > part->dock->rect.x + part->dock->rect.width - 2 ) && part->dock->IsVertical())
+            ) && part->dock->panes.GetCount() > 1)
         {
             DoInsertDockRow(panes, part->dock->dock_direction,
                             part->dock->dock_layer,
Only in ./src: manager.cpp.orig
