- Update to 2.21.5

- The backup-restore plugin is stable again.
- Remove patch for RH bug #154360 (fixed upstream).
- Remove patch for RH bug #166231 (obsolete, possibly fixed upstream).
- Remove patch for RH bug #178295 (fixed upstream).
- Remove patch for GNOME bug #362638 (fixed upstream).
- Remove patch for GNOME bug #504030 (fixed upstream).
- Remove patch for GNOME bug #507311 (fixed upstream).
This commit is contained in:
Matthew Barnes 2008-01-14 23:16:30 +00:00
parent aca4b000e7
commit 1fe0c31d20
9 changed files with 36 additions and 7808 deletions

View File

@ -1 +1 @@
evolution-2.21.4.tar.bz2
evolution-2.21.5.tar.bz2

View File

@ -1,12 +0,0 @@
diff -up evolution-2.21.4/data/evolution.desktop.in.in.bugzilla-component evolution-2.21.4/data/evolution.desktop.in.in
--- evolution-2.21.4/data/evolution.desktop.in.in.bugzilla-component 2008-01-05 18:39:45.000000000 -0500
+++ evolution-2.21.4/data/evolution.desktop.in.in 2008-01-05 18:39:59.000000000 -0500
@@ -11,7 +11,7 @@ Categories=GNOME;GTK;Office;Email;Calend
StartupNotify=true
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=Evolution
-X-GNOME-Bugzilla-Component=Miscellaneous
+X-GNOME-Bugzilla-Component=BugBuddyBugs
X-GNOME-Bugzilla-Version=@BASE_VERSION@.x
X-GNOME-Bugzilla-OtherBinaries=evolution-data-server-@DATASERVER_EXEC_VERSION@;evolution-exchange-storage;evolution-alarm-notify;

View File

@ -1,12 +0,0 @@
diff -up evolution-2.21.4/plugins/mail-notification/mail-notification.c.too-noisy evolution-2.21.4/plugins/mail-notification/mail-notification.c
--- evolution-2.21.4/plugins/mail-notification/mail-notification.c.too-noisy 2007-12-15 10:58:55.000000000 -0500
+++ evolution-2.21.4/plugins/mail-notification/mail-notification.c 2007-12-17 12:41:26.000000000 -0500
@@ -581,7 +581,7 @@ static void
new_notify_sound (EMEventTargetFolder *t)
{
time_t last_newmail;
- struct _SoundNotifyData data = {0, 0};
+ static struct _SoundNotifyData data = {0, 0};
time (&last_newmail);

View File

@ -1,242 +0,0 @@
--- evolution-2.5.5.1/calendar/gui/e-day-view.c.commit-enter-on-calendar 2006-01-16 09:42:17.000000000 -0500
+++ evolution-2.5.5.1/calendar/gui/e-day-view.c 2006-01-25 23:48:24.000000000 -0500
@@ -334,6 +334,10 @@
gint event_num,
gchar *initial_text);
static void e_day_view_stop_editing_event (EDayView *day_view);
+static gboolean e_day_view_text_keypress (GnomeCanvasItem *item,
+ guint keyval,
+ guint state,
+ EDayView *day_view);
static gboolean e_day_view_on_text_item_event (GnomeCanvasItem *item,
GdkEvent *event,
EDayView *day_view);
@@ -4484,6 +4488,8 @@
G_CALLBACK (e_day_view_on_text_item_event), day_view);
g_signal_emit_by_name (G_OBJECT(day_view),
"event_added", event);
+ g_signal_connect (event->canvas_item, "keypress",
+ G_CALLBACK (e_day_view_text_keypress), day_view);
e_day_view_update_long_event_label (day_view, event_num);
}
@@ -4667,6 +4673,8 @@
G_CALLBACK (e_day_view_on_text_item_event), day_view);
g_signal_emit_by_name (G_OBJECT(day_view),
"event_added", event);
+ g_signal_connect (event->canvas_item, "keypress",
+ G_CALLBACK (e_day_view_text_keypress), day_view);
e_day_view_update_event_label (day_view, day, event_num);
}
@@ -5824,46 +5832,74 @@
}
static gboolean
+e_day_view_text_keypress (GnomeCanvasItem *item,
+ guint keyval,
+ guint state,
+ EDayView *day_view)
+{
+ gboolean retval = FALSE;
+
+ tooltip_destroy (day_view, item);
+
+ if (keyval == GDK_Return) {
+ EText *text = E_TEXT (item);
+ gint new_pos = 0;
+
+ /*
+ * HACK: last character which should be \n needs to be deleted
+ * here so that GDK_Return was already processed on EText
+ * before E_TEXT_KEYPRESS event is emitted.
+ */
+ if (text->selection_end >= 1)
+ new_pos = text->selection_end - 1;
+
+ text->selection_end = e_text_model_validate_position (text->model, new_pos);
+ e_text_delete_selection (text);
+
+ day_view->resize_event_num = -1;
+
+ /* We set the keyboard focus to the EDayView, so the
+ EText item loses it and stops the edit. */
+ gtk_widget_grab_focus (GTK_WIDGET (day_view));
+
+ /* Stop the signal last or we will also stop any
+ other events getting to the EText item. */
+ gtk_signal_emit_stop_by_name (GTK_OBJECT (item),
+ "event");
+
+ retval = TRUE;
+ } else if (keyval == GDK_Escape) {
+ cancel_editing (day_view);
+ gtk_signal_emit_stop_by_name (GTK_OBJECT (item), "event");
+ /* focus should go to day view when stop editing */
+ gtk_widget_grab_focus (GTK_WIDGET (day_view));
+
+ retval = TRUE;
+ } else if ((keyval == GDK_Up)
+ && (state & GDK_SHIFT_MASK)
+ && (state & GDK_CONTROL_MASK)
+ && !(state & GDK_MOD1_MASK)) {
+ e_day_view_change_event_end_time_up (day_view);
+
+ retval = TRUE;
+ } else if ((keyval == GDK_Down)
+ && (state & GDK_SHIFT_MASK)
+ && (state & GDK_CONTROL_MASK)
+ && !(state & GDK_MOD1_MASK)) {
+ e_day_view_change_event_end_time_down (day_view);
+
+ retval = TRUE;
+ }
+
+ return retval;
+}
+
+static gboolean
e_day_view_on_text_item_event (GnomeCanvasItem *item,
GdkEvent *event,
EDayView *day_view)
{
switch (event->type) {
- case GDK_KEY_PRESS:
- tooltip_destroy (day_view, item);
- if (event && event->key.keyval == GDK_Return) {
- day_view->resize_event_num = -1;
- day_view->resize_event_num = -1;
-
- /* We set the keyboard focus to the EDayView, so the
- EText item loses it and stops the edit. */
- gtk_widget_grab_focus (GTK_WIDGET (day_view));
-
- /* Stop the signal last or we will also stop any
- other events getting to the EText item. */
- gtk_signal_emit_stop_by_name (GTK_OBJECT (item),
- "event");
- return TRUE;
- } else if (event->key.keyval == GDK_Escape) {
- cancel_editing (day_view);
- gtk_signal_emit_stop_by_name (GTK_OBJECT (item), "event");
- /* focus should go to day view when stop editing */
- gtk_widget_grab_focus (GTK_WIDGET (day_view));
- return TRUE;
- } else if ((event->key.keyval == GDK_Up)
- && (event->key.state & GDK_SHIFT_MASK)
- && (event->key.state & GDK_CONTROL_MASK)
- && !(event->key.state & GDK_MOD1_MASK)) {
- e_day_view_change_event_end_time_up (day_view);
- return TRUE;
- } else if ((event->key.keyval == GDK_Down)
- && (event->key.state & GDK_SHIFT_MASK)
- && (event->key.state & GDK_CONTROL_MASK)
- && !(event->key.state & GDK_MOD1_MASK)) {
- e_day_view_change_event_end_time_down (day_view);
- return TRUE;
- }
- break;
case GDK_2BUTTON_PRESS:
#if 0
g_print ("Item got double-click\n");
--- evolution-2.5.5.1/calendar/gui/e-week-view.c.commit-enter-on-calendar 2006-01-16 09:42:17.000000000 -0500
+++ evolution-2.5.5.1/calendar/gui/e-week-view.c 2006-01-25 23:46:43.000000000 -0500
@@ -175,6 +175,10 @@
const gchar *uid,
EWeekViewForeachEventCallback callback,
gpointer data);
+static gboolean e_week_view_text_keypress (GnomeCanvasItem *item,
+ guint keyval,
+ guint state,
+ EWeekView *week_view);
static gboolean e_week_view_on_text_item_event (GnomeCanvasItem *item,
GdkEvent *event,
EWeekView *week_view);
@@ -2771,6 +2775,8 @@
week_view);
g_signal_emit_by_name (G_OBJECT(week_view),
"event_added", event);
+ g_signal_connect (span->text_item, "keypress",
+ G_CALLBACK (e_week_view_text_keypress), week_view);
}
@@ -3028,6 +3034,51 @@
}
static gboolean
+e_week_view_text_keypress (GnomeCanvasItem *item,
+ guint keyval,
+ guint state,
+ EWeekView *week_view)
+{
+ gboolean retval = FALSE;
+
+ tooltip_destroy (week_view, item);
+
+ if (keyval == GDK_Return) {
+ EText *text = E_TEXT (item);
+ gint new_pos = 0;
+
+ /*
+ * HACK: last charater which should be \n needs to be deleted
+ * here so that GDK_Return was already processed on EText
+ * before E_TEXT_KEYPRESS event is emitted.
+ */
+ if (text->selection_end >= 1)
+ new_pos = text->selection_end - 1;
+
+ text->selection_end = e_text_model_validate_position (text->model, new_pos);
+ e_text_delete_selection (text);
+
+ /* We set the keyboard focus to the EDayView, so the
+ EText item loses it and stops the edit. */
+ gtk_widget_grab_focus (GTK_WIDGET (week_view));
+
+ /* Stop the signal last or we will also stop any
+ other events getting to the EText item. */
+ gtk_signal_emit_stop_by_name (GTK_OBJECT (item),
+ "event");
+ retval = TRUE;
+ } else if (keyval == GDK_Escape) {
+ cancel_editing (week_view);
+ gtk_signal_emit_stop_by_name (GTK_OBJECT (item), "event");
+ /* focus should go to week view when stop editing */
+ gtk_widget_grab_focus (GTK_WIDGET (week_view));
+ retval = TRUE;
+ }
+
+ return retval;
+}
+
+static gboolean
e_week_view_on_text_item_event (GnomeCanvasItem *item,
GdkEvent *gdkevent,
EWeekView *week_view)
@@ -3044,26 +3095,6 @@
#endif
switch (gdkevent->type) {
- case GDK_KEY_PRESS:
- tooltip_destroy (week_view, item);
- if (gdkevent && gdkevent->key.keyval == GDK_Return) {
- /* We set the keyboard focus to the EDayView, so the
- EText item loses it and stops the edit. */
- gtk_widget_grab_focus (GTK_WIDGET (week_view));
-
- /* Stop the signal last or we will also stop any
- other events getting to the EText item. */
- gtk_signal_emit_stop_by_name (GTK_OBJECT (item),
- "event");
- return TRUE;
- } else if (gdkevent->key.keyval == GDK_Escape) {
- cancel_editing (week_view);
- gtk_signal_emit_stop_by_name (GTK_OBJECT (item), "event");
- /* focus should go to week view when stop editing */
- gtk_widget_grab_focus (GTK_WIDGET (week_view));
- return TRUE;
- }
- break;
case GDK_2BUTTON_PRESS:
if (!e_week_view_find_event_from_item (week_view, item,
&event_num, &span_num))

View File

@ -1,22 +0,0 @@
--- evolution-2.7.3/widgets/text/e-text.c.replicated_cjk_input 2006-07-06 09:57:22.000000000 -0400
+++ evolution-2.7.3/widgets/text/e-text.c 2006-07-06 09:58:27.000000000 -0400
@@ -1498,7 +1498,8 @@
}
- insert_preedit_text (text);
+ if (text->im_context_signals_registered)
+ insert_preedit_text (text);
if (!pango_layout_get_text (text->layout))
return;
@@ -2212,7 +2213,8 @@
G_SIGNAL_MATCH_DATA,
0, 0, NULL,
NULL, save_text);
- save_text->im_context_signals_registered = FALSE;
+ save_text->im_context_signals_registered = FALSE;
+ reset_layout (save_text);
}
if (text->im_context) {

View File

@ -1,110 +0,0 @@
--- evolution-2.7.90/widgets/text/e-text.c.deleting-preedit-buffer 2006-07-26 10:16:02.000000000 -0400
+++ evolution-2.7.90/widgets/text/e-text.c 2006-07-26 10:25:29.000000000 -0400
@@ -284,7 +284,7 @@
PangoAttrList *preedit_attrs = NULL;
gchar *preedit_string = NULL;
GString *tmp_string = g_string_new (NULL);
- gint length = 0, cpos = 0, preedit_length = 0;
+ gint length = 0, cpos = 0;
gboolean new_attrs = FALSE;
if (text->layout == NULL || !GTK_IS_IM_CONTEXT (text->im_context))
@@ -295,19 +295,15 @@
g_string_prepend_len (tmp_string, text->text,length);
- if (text->preedit_len)
- gtk_im_context_get_preedit_string (text->im_context,
- &preedit_string, &preedit_attrs,
- NULL);
+ /* we came into this function only when text->preedit_len was not 0
+ so we can saftely fetch the preedit string */
+ gtk_im_context_get_preedit_string (text->im_context, &preedit_string, &preedit_attrs, NULL);
if (preedit_string && g_utf8_validate (preedit_string, -1, NULL))
- text->preedit_len = preedit_length = strlen (preedit_string);
- else
- text->preedit_len = preedit_length = 0;
-
- cpos = g_utf8_offset_to_pointer (text->text, text->selection_start) - text->text;
+ {
+ text->preedit_len = strlen (preedit_string);
+ cpos = g_utf8_offset_to_pointer (text->text, text->selection_start) - text->text;
- if (preedit_length) {
g_string_insert (tmp_string, cpos, preedit_string);
reset_layout_attrs (text);
@@ -320,15 +316,17 @@
pango_layout_set_text (text->layout, tmp_string->str, tmp_string->len);
- pango_attr_list_splice (attrs, preedit_attrs, cpos, preedit_length);
+ pango_attr_list_splice (attrs, preedit_attrs, cpos, text->preedit_len);
if (new_attrs) {
pango_layout_set_attributes (text->layout, attrs);
pango_attr_list_unref (attrs);
- }
+ }
update_im_cursor_position (text);
}
+ else
+ text->preedit_len = 0;
if (preedit_string)
g_free (preedit_string);
@@ -385,9 +383,12 @@
pango_attr_list_insert_before (attrs, attr);
}
}
+
pango_layout_set_attributes (text->layout, attrs);
+
if (attrs)
pango_attr_list_unref (attrs);
+
calc_height (text);
}
@@ -1510,9 +1511,14 @@
}
}
-
- if (text->im_context_signals_registered)
- insert_preedit_text (text);
+ /* Insert preedit text only when im_context signals are connected & text->preedit_len is not zero */
+ if (text->im_context_signals_registered && text->preedit_len)
+ insert_preedit_text (text);
+
+ /* Need to reset the layout to cleanly clear the preedit buffer
+ * when typing in CJK & using backspace on the preedit */
+ if(!text->preedit_len)
+ reset_layout (text);
if (!pango_layout_get_text (text->layout))
return;
@@ -2220,11 +2226,12 @@
*/
if (save_text && save_text->im_context) {
+ gtk_im_context_focus_out(save_text->im_context);
g_signal_handlers_disconnect_matched (save_text->im_context,
G_SIGNAL_MATCH_DATA,
0, 0, NULL,
NULL, save_text);
- save_text->im_context_signals_registered = FALSE;
+ save_text->im_context_signals_registered = FALSE;
reset_layout (save_text);
}
@@ -2240,6 +2247,7 @@
G_CALLBACK (e_text_delete_surrounding_cb), text);
text->im_context_signals_registered = TRUE;
}
+ gtk_im_context_focus_in(text->im_context);
}
start_editing (text);
text->show_cursor = FALSE; /* so we'll redraw and the cursor will be shown */

File diff suppressed because it is too large Load Diff

View File

@ -44,8 +44,8 @@
### Abstract ###
Name: evolution
Version: 2.21.4
Release: 2%{?dist}
Version: 2.21.5
Release: 1%{?dist}
License: GPLv2 and GFDL+
Group: Applications/Productivity
Summary: GNOME's next-generation groupware suite
@ -60,51 +60,33 @@ Obsoletes: libgal2 <= %{last_libgal2_version}
# bad hack
Patch10: evolution-1.4.4-ldap-x86_64-hack.patch
# Fix for RH bug #154360:
Patch11: evolution-2.5.5.1-commit-enter-on-calendar.patch
# Fix for RH bug 164957 (was for 145552):
Patch12: evolution-2.0.2-fix-145552.patch
Patch11: evolution-2.0.2-fix-145552.patch
# Patches for conduits, based upon
# rh-161817-attach-116019-conduit_pilot_link_updates.diff
# (the latter patch was originally by Mark G. Adams):
# Patch13: evolution-2.5.4-fix-conduits.patch
# Patch12: evolution-2.5.4-fix-conduits.patch
# Move .conduit files from share to lib (for the sake of multilib)
# This patch effects other parts of evolution.spec and so is necessary
# for a successful build.
Patch14: evolution-2.5.4-fix-conduit-dir.patch
Patch13: evolution-2.5.4-fix-conduit-dir.patch
# Remove gnome-common macros from configure.in.
# We do not ship gnome-common (or at least we're not supposed to).
Patch15: evolution-2.7.1-no-gnome-common.patch
Patch14: evolution-2.7.1-no-gnome-common.patch
#Patch16: evolution-2.7.1-notification-cleanups.patch
# RH bug #166231 / GNOME bug #264485
Patch17: evolution-2.7.3-replicated-cjk-input.patch
# RH bug #178295 / GNOME bug #348638
Patch18: evolution-2.7.4-deleting-preedit-buffer.patch
# GNOME bug #362638
Patch19: evolution-2.8.1-kill-ethread.patch
#Patch15: evolution-2.7.1-notification-cleanups.patch
# GNOME bug #363695
Patch20: evolution-2.9.1-kill-ememory.patch
Patch16: evolution-2.9.1-kill-ememory.patch
# RH bug #176400
Patch21: evolution-2.9.1-im-context-reset.patch
Patch17: evolution-2.9.1-im-context-reset.patch
# RH bug #215478 / GNOME bug #383842
Patch22: evolution-2.9.3-source-path-entry.patch
# GNOME bug #504030
Patch23: evolution-2.21.4-too-noisy.patch
# GNOME bug #507311
Patch24: evolution-2.21.4-bugzilla-component.patch
Patch18: evolution-2.9.3-source-path-entry.patch
## Dependencies ###
@ -242,20 +224,14 @@ This package contains the plugin to filter junk mail using SpamAssassin.
%prep
%setup -q -n evolution-%{version}
%patch10 -p1 -b .ldaphack
%patch11 -p1 -b .commit-enter-on-calendar
%patch12 -p1 -b .fix-164957
#patch13 -p1 -b .fix-conduits # leave commented
%patch14 -p1 -b .fix-conduit-dir
%patch15 -p1 -b .no-gnome-common
#patch16 -p1 -b .notification-cleanups
%patch17 -p1 -b .replicated-cjk-input
%patch18 -p1 -b .deleting-preedit-buffer
%patch19 -p1 -b .kill-ethread
%patch20 -p1 -b .kill-ememory
%patch21 -p1 -b .im-context-reset
%patch22 -p1 -b .source-path-entry
%patch23 -p1 -b .too-noisy
%patch24 -p1 -b .bugzilla-component
%patch11 -p1 -b .fix-164957
#patch12 -p1 -b .fix-conduits # leave commented
%patch13 -p1 -b .fix-conduit-dir
%patch14 -p1 -b .no-gnome-common
#patch15 -p1 -b .notification-cleanups
%patch16 -p1 -b .kill-ememory
%patch17 -p1 -b .im-context-reset
%patch18 -p1 -b .source-path-entry
mkdir -p krb5-fakeprefix/include
mkdir -p krb5-fakeprefix/lib
@ -499,6 +475,7 @@ rm -rf $RPM_BUILD_ROOT
%{_libexecdir}/evolution/%{evo_major}/evolution-addressbook-clean
%{_libexecdir}/evolution/%{evo_major}/evolution-addressbook-export
%{_libexecdir}/evolution/%{evo_major}/evolution-alarm-notify
%{_libexecdir}/evolution/%{evo_major}/evolution-backup
%{_libexecdir}/evolution/%{evo_major}/killev
# The plugin directory:
@ -524,6 +501,10 @@ rm -rf $RPM_BUILD_ROOT
%{evo_plugin_dir}/liborg-gnome-audio-inline.so
%endif
%{evo_plugin_dir}/org-gnome-backup-restore.eplug
%{evo_plugin_dir}/org-gnome-backup-restore.xml
%{evo_plugin_dir}/liborg-gnome-backup-restore.so
%{evo_plugin_dir}/org-gnome-calendar-file.eplug
%{evo_plugin_dir}/liborg-gnome-calendar-file.so
@ -593,9 +574,6 @@ rm -rf $RPM_BUILD_ROOT
%{evo_plugin_dir}/org-gnome-mark-calendar-offline.eplug
%{evo_plugin_dir}/liborg-gnome-mark-calendar-offline.so
%{evo_plugin_dir}/org-gnome-new-mail-notify.eplug
%{evo_plugin_dir}/liborg-gnome-new-mail-notify.so
%{evo_plugin_dir}/org-gnome-plugin-manager.eplug
%{evo_plugin_dir}/liborg-gnome-plugin-manager.so
%{evo_plugin_dir}/org-gnome-plugin-manager.xml
@ -688,7 +666,17 @@ rm -rf $RPM_BUILD_ROOT
%{evo_plugin_dir}/liborg-gnome-sa-junk-plugin.so
%changelog
* Sat Jun 05 2008 Matthew Barnes <mbarnes@redhat.com> - 2.21.4-2.fc9
* Mon Jan 14 2008 Matthew Barnes <mbarnes@redhat.com> - 2.21.5-1.fc9
- Update to 2.21.5
- The backup-restore plugin is stable again.
- Remove patch for RH bug #154360 (fixed upstream).
- Remove patch for RH bug #166231 (obsolete, possibly fixed upstream).
- Remove patch for RH bug #178295 (fixed upstream).
- Remove patch for GNOME bug #362638 (fixed upstream).
- Remove patch for GNOME bug #504030 (fixed upstream).
- Remove patch for GNOME bug #507311 (fixed upstream).
* Sat Jan 05 2008 Matthew Barnes <mbarnes@redhat.com> - 2.21.4-2.fc9
- Add patch for GNOME bug #507311 (send Bug Buddy reports to the new
BugBuddyBugs Bugzilla component).

View File

@ -1 +1 @@
04f7d3aada64a21b6ee41ff4164f4246 evolution-2.21.4.tar.bz2
80982f22860e447e51ddc4475cfedd70 evolution-2.21.5.tar.bz2