[Xfce4-commits] r26593 - in xfcalendar/trunk: . panel-plugin src
Juha Kautto
juha at xfce.org
Sat Feb 2 01:42:52 CET 2008
Author: juha
Date: 2008-02-02 00:42:52 +0000 (Sat, 02 Feb 2008)
New Revision: 26593
Modified:
xfcalendar/trunk/configure.in.in
xfcalendar/trunk/panel-plugin/orageclock.c
xfcalendar/trunk/src/mainbox.c
Log:
Fixed Bug 3829 - GLib-Critical on g_source_remove in orageclock
Fixed also
Gtk-CRITICAL **: calendar_invalidate_day_num: assertion `row != -1' failed
which could happen when changing month in Orage main window.
Release 4.5.12.3
Modified: xfcalendar/trunk/configure.in.in
===================================================================
--- xfcalendar/trunk/configure.in.in 2008-02-01 13:46:37 UTC (rev 26592)
+++ xfcalendar/trunk/configure.in.in 2008-02-02 00:42:52 UTC (rev 26593)
@@ -9,7 +9,7 @@
dnl
dnl Version information
-m4_define([orage_version], [4.5.12.2-svn])
+m4_define([orage_version], [4.5.12.3-svn])
m4_define([gtk_minimum_version], [2.6.0])
m4_define([xfce_minimum_version], [4.4.0])
Modified: xfcalendar/trunk/panel-plugin/orageclock.c
===================================================================
--- xfcalendar/trunk/panel-plugin/orageclock.c 2008-02-01 13:46:37 UTC (rev 26592)
+++ xfcalendar/trunk/panel-plugin/orageclock.c 2008-02-02 00:42:52 UTC (rev 26593)
@@ -386,7 +386,9 @@
if (dlg)
gtk_widget_destroy(dlg);
- g_source_remove(clock->timeout_id);
+ if (clock->timeout_id) {
+ g_source_remove(clock->timeout_id);
+ }
g_object_unref(clock->tips);
g_object_unref(clock->line[0].label);
g_object_unref(clock->line[1].label);
Modified: xfcalendar/trunk/src/mainbox.c
===================================================================
--- xfcalendar/trunk/src/mainbox.c 2008-02-01 13:46:37 UTC (rev 26592)
+++ xfcalendar/trunk/src/mainbox.c 2008-02-02 00:42:52 UTC (rev 26593)
@@ -51,9 +51,18 @@
#include "tray_icon.h"
#include "day-view.h"
+/*
+#define ORAGE_DEBUG 1
+*/
+
gboolean orage_mark_appointments()
{
+#undef P_N
+#define P_N "orage_mark_appointments: "
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
if (!xfical_file_open(TRUE))
return(FALSE);
xfical_mark_calendar(GTK_CALENDAR(g_par.xfcal->mCalendar));
@@ -63,9 +72,14 @@
static void mFile_newApp_activate_cb(GtkMenuItem *menuitem, gpointer user_data)
{
+#undef P_N
+#define P_N "mFile_newApp_activate_cb: "
struct tm *t;
char cur_date[9];
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
t = orage_localtime();
g_snprintf(cur_date, 9, "%04d%02d%02d", t->tm_year+1900
, t->tm_mon+1, t->tm_mday);
@@ -75,55 +89,95 @@
static void mFile_interface_activate_cb(GtkMenuItem *menuitem
, gpointer user_data)
{
+#undef P_N
+#define P_N "mFile_interface_activate_cb: "
CalWin *cal = (CalWin *)user_data;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
orage_external_interface(cal);
}
static void mFile_close_activate_cb(GtkMenuItem *menuitem, gpointer user_data)
{
+#undef P_N
+#define P_N "mFile_close_activate_cb: "
CalWin *cal = (CalWin *)user_data;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
gtk_widget_hide(cal->mWindow);
}
static void mFile_quit_activate_cb(GtkMenuItem *menuitem, gpointer user_data)
{
+#undef P_N
+#define P_N "mFile_quit_activate_cb: "
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
gtk_main_quit();
}
static void mEdit_preferences_activate_cb(GtkMenuItem *menuitem
, gpointer user_data)
{
+#undef P_N
+#define P_N "mEdit_preferences_activate_cb: "
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
show_parameters();
}
static void mView_ViewSelectedDate_activate_cb(GtkMenuItem *menuitem
, gpointer user_data)
{
+#undef P_N
+#define P_N "mView_ViewSelectedDate_activate_cb: "
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
create_el_win(NULL);
}
static void mView_ViewSelectedWeek_activate_cb(GtkMenuItem *menuitem
, gpointer user_data)
{
+#undef P_N
+#define P_N "mView_ViewSelectedWeek_activate_cb: "
CalWin *cal = (CalWin *)user_data;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
create_day_win(orage_cal_to_i18_date(GTK_CALENDAR(cal->mCalendar)));
}
static void mView_selectToday_activate_cb(GtkMenuItem *menuitem
, gpointer user_data)
{
+#undef P_N
+#define P_N "mView_selectToday_activate_cb: "
CalWin *cal = (CalWin *)user_data;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
orage_select_today(GTK_CALENDAR(cal->mCalendar));
}
static void mHelp_help_activate_cb(GtkMenuItem *menuitem, gpointer user_data)
{
+#undef P_N
+#define P_N "mHelp_help_activate_cb: "
gchar *helpdoc;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
helpdoc = g_strconcat("xfbrowser4 ", PACKAGE_DATA_DIR
, G_DIR_SEPARATOR_S, "orage"
, G_DIR_SEPARATOR_S, "doc"
@@ -134,38 +188,22 @@
static void mHelp_about_activate_cb(GtkMenuItem *menuitem, gpointer user_data)
{
+#undef P_N
+#define P_N "mHelp_about_activate_cb: "
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
create_wAbout((GtkWidget *)menuitem, user_data);
}
-static void mCalendar_scroll_event_cb(GtkWidget *calendar
- , GdkEventScroll *event)
-{
- guint year, month, day;
- gtk_calendar_get_date(GTK_CALENDAR(calendar), &year, &month, &day);
-
- switch(event->direction) {
- case GDK_SCROLL_UP:
- if (--month == -1) {
- month = 11;
- --year;
- }
- gtk_calendar_select_month(GTK_CALENDAR(calendar), month, year);
- break;
- case GDK_SCROLL_DOWN:
- if (++month == 12) {
- month = 0;
- ++year;
- }
- gtk_calendar_select_month(GTK_CALENDAR(calendar), month, year);
- break;
- default:
- g_warning("Got unknown scroll event!!!");
- }
-}
-
static void mCalendar_day_selected_double_click_cb(GtkCalendar *calendar
, gpointer user_data)
{
+#undef P_N
+#define P_N "mCalendar_day_selected_double_click_cb: "
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
if (g_par.show_days)
create_day_win(orage_cal_to_i18_date(calendar));
else
@@ -174,9 +212,14 @@
static gboolean upd_calendar(GtkCalendar *calendar)
{
+#undef P_N
+#define P_N "upd_calendar: "
static guint year=-1, month=-1;
guint year_n, month_n, day_n;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
/* we only need to do this if it is really a new month. We may get
* many of these while calender is changing months and it is enough
* to show only the last one, which is visible */
@@ -191,6 +234,11 @@
void mCalendar_month_changed_cb(GtkCalendar *calendar, gpointer user_data)
{
+#undef P_N
+#define P_N "mCalendar_month_changed_cb: "
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
/* orage_mark_appointments is rather heavy (=slow), so doing
* it here is not a good idea. We can't keep up with the autorepeat
* speed if we do the whole thing here. bug 2080 proofs it. so let's
@@ -200,9 +248,14 @@
static void build_menu(void)
{
+#undef P_N
+#define P_N "build_menu: "
GtkWidget *menu_separator;
CalWin *cal = g_par.xfcal;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
cal->mMenubar = gtk_menu_bar_new();
gtk_box_pack_start(GTK_BOX(cal->mVbox), cal->mMenubar, FALSE, FALSE, 0);
@@ -283,8 +336,13 @@
static void todo_clicked(GtkWidget *widget
, GdkEventButton *event, gpointer *user_data)
{
+#undef P_N
+#define P_N "todo_clicked: "
gchar *uid;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
if (event->type==GDK_2BUTTON_PRESS) {
uid = g_object_get_data(G_OBJECT(widget), "UID");
create_appt_win("UPDATE", uid, NULL);
@@ -293,6 +351,8 @@
static void add_info_row(xfical_appt *appt)
{
+#undef P_N
+#define P_N "add_info_row: "
GtkWidget *ev, *label;
CalWin *cal = g_par.xfcal;
gchar *tip;
@@ -300,7 +360,9 @@
char *l_time, *s_time, *e_time, *c_time, *na;
gint len;
-
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
ev = gtk_event_box_new();
label = gtk_label_new(appt->title);
gtk_label_set_ellipsize(GTK_LABEL(label), PANGO_ELLIPSIZE_END);
@@ -338,8 +400,13 @@
static void insert_rows(GList **todo_list, char *a_day, xfical_type ical_type
, gchar *file_type)
{
+#undef P_N
+#define P_N "insert_rows: "
xfical_appt *appt;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
for (appt = xfical_appt_get_next_on_day(a_day, TRUE, 0
, ical_type , file_type);
appt;
@@ -351,8 +418,13 @@
static gint todo_order(gconstpointer a, gconstpointer b)
{
+#undef P_N
+#define P_N "todo_order: "
xfical_appt *appt1, *appt2;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
appt1 = (xfical_appt *)a;
appt2 = (xfical_appt *)b;
@@ -361,8 +433,13 @@
static void todo_process(gpointer a, gpointer dummy)
{
+#undef P_N
+#define P_N "todo_process: "
xfical_appt *appt;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
appt = (xfical_appt *)a;
add_info_row(appt);
xfical_appt_free(appt);
@@ -370,8 +447,13 @@
void create_mainbox_info(void)
{
+#undef P_N
+#define P_N "create_mainbox_info: "
CalWin *cal = g_par.xfcal;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
cal->mInfo_scrolledWin = gtk_scrolled_window_new(NULL, NULL);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(cal->mInfo_scrolledWin)
, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
@@ -384,6 +466,8 @@
void build_mainbox_info(void)
{
+#undef P_N
+#define P_N "build_mainbox_info: "
CalWin *cal = g_par.xfcal;
char *s_time;
char a_day[9]; /* yyyymmdd */
@@ -393,6 +477,9 @@
gint i;
GList *todo_list=NULL;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
gtk_widget_destroy(cal->mInfo_scrolledWin);
create_mainbox_info();
@@ -430,10 +517,15 @@
void build_mainWin()
{
+#undef P_N
+#define P_N "build_mainWin: "
GdkPixbuf *orage_logo;
CalWin *cal = g_par.xfcal;
GdkColormap *pic1_cmap;
+#ifdef ORAGE_DEBUG
+ orage_message(-100, P_N);
+#endif
pic1_cmap = gdk_colormap_get_system();
gdk_color_parse("red", &cal->mRed);
gdk_colormap_alloc_color(pic1_cmap, &cal->mRed, FALSE, TRUE);
@@ -479,8 +571,6 @@
gtk_widget_show_all(cal->mInfo_scrolledWin);
/* Signals */
- g_signal_connect((gpointer) cal->mCalendar, "scroll_event"
- , G_CALLBACK(mCalendar_scroll_event_cb), NULL);
g_signal_connect((gpointer) cal->mCalendar, "day_selected_double_click"
, G_CALLBACK(mCalendar_day_selected_double_click_cb)
More information about the Xfce4-commits
mailing list