aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-week-view.c
diff options
context:
space:
mode:
authorMilan Crha <mcrha@src.gnome.org>2007-08-23 22:33:10 +0800
committerMilan Crha <mcrha@src.gnome.org>2007-08-23 22:33:10 +0800
commitebb7bb517c697e05b3f64b07f8e993a9d9bd865c (patch)
tree8186c07fb446271397f9b5fa339017aff3a33b5b /calendar/gui/e-week-view.c
parent4dc713c7197dd5475ef077097561710e45cf5ee0 (diff)
downloadgsoc2013-evolution-ebb7bb517c697e05b3f64b07f8e993a9d9bd865c.tar
gsoc2013-evolution-ebb7bb517c697e05b3f64b07f8e993a9d9bd865c.tar.gz
gsoc2013-evolution-ebb7bb517c697e05b3f64b07f8e993a9d9bd865c.tar.bz2
gsoc2013-evolution-ebb7bb517c697e05b3f64b07f8e993a9d9bd865c.tar.lz
gsoc2013-evolution-ebb7bb517c697e05b3f64b07f8e993a9d9bd865c.tar.xz
gsoc2013-evolution-ebb7bb517c697e05b3f64b07f8e993a9d9bd865c.tar.zst
gsoc2013-evolution-ebb7bb517c697e05b3f64b07f8e993a9d9bd865c.zip
2007-08-23 mcrha Fix for bug #201201 and bug #201202
svn path=/trunk/; revision=34076
Diffstat (limited to 'calendar/gui/e-week-view.c')
-rw-r--r--calendar/gui/e-week-view.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/calendar/gui/e-week-view.c b/calendar/gui/e-week-view.c
index 97e08fe840..1be7358406 100644
--- a/calendar/gui/e-week-view.c
+++ b/calendar/gui/e-week-view.c
@@ -505,6 +505,9 @@ e_week_view_init (EWeekView *week_view)
/* String to use in 12-hour time format for times in the afternoon. */
week_view->pm_string = _("pm");
+ week_view->bc_event_time = 0;
+ week_view->before_click_dtstart = 0;
+ week_view->before_click_dtend = 0;
/*
* Titles Canvas. Note that we don't show it is only shown in the
@@ -2061,6 +2064,12 @@ e_week_view_on_button_press (GtkWidget *widget,
return FALSE;
if (event->button == 1 && event->type == GDK_2BUTTON_PRESS) {
+ time_t dtstart, dtend;
+
+ e_calendar_view_get_selected_time_range ((ECalendarView *) week_view, &dtstart, &dtend);
+ if (dtstart < week_view->before_click_dtend && dtend > week_view->before_click_dtstart) {
+ e_week_view_set_selected_time_range ((ECalendarView *) week_view, week_view->before_click_dtstart, week_view->before_click_dtend);
+ }
e_calendar_view_new_appointment_full (E_CALENDAR_VIEW (week_view), FALSE, FALSE, FALSE);
return TRUE;
}
@@ -2074,6 +2083,9 @@ e_week_view_on_button_press (GtkWidget *widget,
GDK_POINTER_MOTION_MASK
| GDK_BUTTON_RELEASE_MASK,
FALSE, NULL, event->time) == 0) {
+ if (event->time - week_view->bc_event_time > 250)
+ e_calendar_view_get_selected_time_range ((ECalendarView *) week_view, &week_view->before_click_dtstart, &week_view->before_click_dtend);
+ week_view->bc_event_time = event->time;
week_view->selection_start_day = day;
week_view->selection_end_day = day;
week_view->selection_drag_pos = E_WEEK_VIEW_DRAG_END;