aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--calendar/ChangeLog9
-rw-r--r--calendar/gui/e-meeting-time-sel.c26
2 files changed, 13 insertions, 22 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog
index 0dba61eb4b..b831e0020e 100644
--- a/calendar/ChangeLog
+++ b/calendar/ChangeLog
@@ -1,3 +1,12 @@
+2003-03-31 Rodrigo Moya <rodrigo@ximian.com>
+
+ Fixes #39961
+
+ * gui/e-meeting-time-sel.c
+ (e_meeting_time_selector_options_menu_position_callback):
+ (e_meeting_time_selector_autopick_menu_position_callback): use the
+ button's allocation to position the popup menu.
+
2003-03-29 Not Zed <NotZed@Ximian.com>
Fixes #39895
diff --git a/calendar/gui/e-meeting-time-sel.c b/calendar/gui/e-meeting-time-sel.c
index 7b41074085..fec13635f5 100644
--- a/calendar/gui/e-meeting-time-sel.c
+++ b/calendar/gui/e-meeting-time-sel.c
@@ -1413,21 +1413,12 @@ e_meeting_time_selector_options_menu_position_callback (GtkMenu *menu,
gpointer user_data)
{
EMeetingTimeSelector *mts;
- GtkRequisition menu_requisition;
- gint max_x, max_y;
mts = E_MEETING_TIME_SELECTOR (user_data);
/* Calculate our preferred position. */
- gdk_window_get_origin (mts->options_button->window, x, y);
- *y += mts->options_button->allocation.height;
-
- /* Now make sure we are on the screen. */
- gtk_widget_size_request (mts->options_menu, &menu_requisition);
- max_x = MAX (0, gdk_screen_width () - menu_requisition.width);
- max_y = MAX (0, gdk_screen_height () - menu_requisition.height);
- *x = CLAMP (*x, 0, max_x);
- *y = CLAMP (*y, 0, max_y);
+ *x = mts->options_button->allocation.x;
+ *y = mts->options_button->allocation.y + mts->options_button->allocation.height;
}
static void
@@ -1461,21 +1452,12 @@ e_meeting_time_selector_autopick_menu_position_callback (GtkMenu *menu,
gpointer user_data)
{
EMeetingTimeSelector *mts;
- GtkRequisition menu_requisition;
- gint max_x, max_y;
mts = E_MEETING_TIME_SELECTOR (user_data);
/* Calculate our preferred position. */
- gdk_window_get_origin (mts->autopick_button->window, x, y);
- *y += mts->autopick_button->allocation.height;
-
- /* Now make sure we are on the screen. */
- gtk_widget_size_request (mts->autopick_menu, &menu_requisition);
- max_x = MAX (0, gdk_screen_width () - menu_requisition.width);
- max_y = MAX (0, gdk_screen_height () - menu_requisition.height);
- *x = CLAMP (*x, 0, max_x);
- *y = CLAMP (*y, 0, max_y);
+ *x = mts->autopick_button->allocation.x;
+ *y = mts->autopick_button->allocation.y + mts->autopick_button->allocation.height;
}