]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkmenu.c
Only push the menu in if the position function said so
[~andy/gtk] / gtk / gtkmenu.c
index 1f0fb37b21cba3fba374658e9203e5a655613761..652aa9a1a5cd1f7bf4b7c686b3585575bacba4f3 100644 (file)
@@ -4796,10 +4796,9 @@ gtk_menu_position (GtkMenu  *menu,
           scroll_offset += monitor.y - y;
           y = monitor.y;
         }
-    }
 
-  /* FIXME: should this be done in the various position_funcs ? */
-  x = CLAMP (x, monitor.x, MAX (monitor.x, monitor.x + monitor.width - requisition.width));
+      x = CLAMP (x, monitor.x, MAX (monitor.x, monitor.x + monitor.width - requisition.width));
+    }
 
   if (GTK_MENU_SHELL (menu)->priv->active)
     {
@@ -4808,16 +4807,6 @@ gtk_menu_position (GtkMenu  *menu,
       priv->position_y = y;
     }
 
-  if (y + requisition.height > monitor.y + monitor.height)
-    requisition.height = (monitor.y + monitor.height) - y;
-
-  if (y < monitor.y)
-    {
-      scroll_offset += monitor.y - y;
-      requisition.height -= monitor.y - y;
-      y = monitor.y;
-    }
-
   if (scroll_offset > 0)
     {
       GtkBorder arrow_border;