diff options
author | Matthias Clasen <maclas@gmx.de> | 2003-11-12 20:53:03 +0000 |
---|---|---|
committer | Matthias Clasen <matthiasc@src.gnome.org> | 2003-11-12 20:53:03 +0000 |
commit | e71bcc8487b3e72504e657796dd2abbe7a2babc1 (patch) | |
tree | 1d8c391ef19ecd6a6e044cdee3ea03177f61103d /gtk/gtkmenuitem.c | |
parent | f3c0fd5991287f15ef7a37ba347cb1286d16a3cf (diff) | |
download | gdk-pixbuf-e71bcc8487b3e72504e657796dd2abbe7a2babc1.tar.gz |
Changes to improve menu positioning on Xinerama (#108328):
Wed Nov 12 21:40:10 2003 Matthias Clasen <maclas@gmx.de>
Changes to improve menu positioning on Xinerama (#108328):
* gtk/gtkmenu.c (struct _GtkMenuPrivate): Add a menu_num field
to store the monitor on which the menu is to be positioned.
* gtk/gtkmenu.[hc] (gtk_menu_position): Store the monitor number
in the GtkMenuPrivate struct and fetch the monitor geometry after
calling the position_func, in case it has been changed.
* gtk/gtkmenu.c (gtk_menu_set_monitor): New function
to be used in GtkMenuPositionFunc implementations for setting
the monitor_num field in GtkMenuPrivate.
* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Call
gtk_menu_set_monitor.
Diffstat (limited to 'gtk/gtkmenuitem.c')
-rw-r--r-- | gtk/gtkmenuitem.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gtk/gtkmenuitem.c b/gtk/gtkmenuitem.c index eca9b4662..312c51107 100644 --- a/gtk/gtkmenuitem.c +++ b/gtk/gtkmenuitem.c @@ -1108,6 +1108,8 @@ gtk_menu_item_position_menu (GtkMenu *menu, */ *x = CLAMP (tx, monitor.x, MAX (monitor.x, monitor.x + monitor.width - twidth)); *y = ty; + + gtk_menu_set_monitor (menu, monitor_num); } /** |