blob: 5e1cd4d917717e2db036df4debab416d3bf89a6d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
diff --color -U 5 -r -Z -B ./org/gtk/gtkmenu.c ./mod/gtk/gtkmenu.c
--- ./org/gtk/gtkmenu.c 2017-10-02 18:00:49.000000000 +0200
+++ ./mod/gtk/gtkmenu.c 2018-01-21 12:47:04.050097042 +0100
@@ -1393,10 +1393,16 @@
const GdkRectangle *final_rect,
gboolean flipped_x,
gboolean flipped_y,
GtkMenu *menu)
{
+ if (GTK_IS_MENU_ITEM (menu->priv->widget) && !flipped_y && flipped_rect->y > final_rect->y)
+ {
+ gint new_height = final_rect->height - (flipped_rect->y - final_rect->y);
+ if (new_height > 200)
+ gdk_window_move_resize (window, final_rect->x, flipped_rect->y, final_rect->width, new_height);
+ }
g_signal_emit (menu,
menu_signals[POPPED_UP],
0,
flipped_rect,
final_rect,
|