Index: calendar/gui/GNOME_Evolution_Calendar.server.in.in
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/GNOME_Evolution_Calendar.server.in.in,v
retrieving revision 1.20
diff -u -p -r1.20 GNOME_Evolution_Calendar.server.in.in
--- calendar/gui/GNOME_Evolution_Calendar.server.in.in	12 Jan 2006 15:08:40 -0000	1.20
+++ calendar/gui/GNOME_Evolution_Calendar.server.in.in	24 Sep 2006 22:19:34 -0000
@@ -49,6 +49,11 @@
 	<oaf_attribute name="evolution:button_tooltips" type="string" _value="Calendars"/>
         <oaf_attribute name="evolution:button_icon" type="string" value="stock_calendar"/>
 	<oaf_attribute name="evolution:button_sort_order" type="string" value="-8"/>
+
+        <oaf_attribute name="evolution:uri_schemas" type="stringv">
+          <item value="calendar"/>
+        </oaf_attribute>
+
 </oaf_server>
 
 <oaf_server iid="OAFIID:GNOME_Evolution_Tasks_Component:@VERSION@"
@@ -69,6 +74,11 @@
 	<oaf_attribute name="evolution:button_tooltips" type="string" _value="Tasks"/>
         <oaf_attribute name="evolution:button_icon" type="string" value="stock_todo"/>
 	<oaf_attribute name="evolution:button_sort_order" type="string" value="-8"/>
+
+        <oaf_attribute name="evolution:uri_schemas" type="stringv">
+          <item value="task"/>
+        </oaf_attribute>
+
 </oaf_server>
 
 <oaf_server iid="OAFIID:GNOME_Evolution_Memos_Component:@VERSION@"
Index: calendar/gui/e-meeting-list-view.c
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/e-meeting-list-view.c,v
retrieving revision 1.33
diff -u -p -r1.33 e-meeting-list-view.c
--- calendar/gui/e-meeting-list-view.c	18 Sep 2006 13:04:34 -0000	1.33
+++ calendar/gui/e-meeting-list-view.c	24 Sep 2006 22:19:39 -0000
@@ -477,7 +477,7 @@ build_table (EMeetingListView *lview)
 	col = gtk_tree_view_get_column (view, pos -1);
 	gtk_tree_view_column_set_resizable (col, TRUE);
 	gtk_tree_view_column_set_reorderable(col, TRUE);
-	g_object_set (col, "width", 50, NULL);
+	g_object_set (col, "min-width", 50, NULL);
 	g_signal_connect (renderer, "cell_edited", G_CALLBACK (attendee_edited_cb), view);
 	g_signal_connect (renderer, "editing-canceled", G_CALLBACK (attendee_editing_canceled_cb), view);
 	g_hash_table_insert (edit_table, GINT_TO_POINTER (E_MEETING_STORE_ATTENDEE_COL), renderer);	
Index: calendar/gui/tasks-component.c
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/tasks-component.c,v
retrieving revision 1.99
diff -u -p -r1.99 tasks-component.c
--- calendar/gui/tasks-component.c	8 Jul 2006 13:29:35 -0000	1.99
+++ calendar/gui/tasks-component.c	24 Sep 2006 22:19:46 -0000
@@ -1154,6 +1154,45 @@ impl_createView (PortableServer_Servant 
 	return BONOBO_OBJREF(ecv);
 }
 
+static void
+impl_handleURI (PortableServer_Servant servant, const char *uri, CORBA_Environment *ev)
+{
+	TasksComponent *task_component = TASKS_COMPONENT (bonobo_object_from_servant (servant));
+
+    	ECal *ecal;
+	icalcomponent *icalcomp;
+	ECalComponent *comp;
+	TaskEditor *editor;
+	
+	if (!strncmp (uri, "task:", strlen("task:"))) {
+
+		ecal = setup_create_ecal (task_component, NULL);
+		if (!ecal) return;
+
+		editor = task_editor_new (ecal, 0);
+                
+		comp = e_cal_component_new ();
+		e_cal_get_object (ecal, uri + strlen("task:"), NULL, &icalcomp, NULL);
+		
+		if (icalcomp == NULL) {
+			g_object_unref (comp);
+			return;
+		}
+
+		if (!e_cal_component_set_icalcomponent (comp, icalcomp)) {
+			g_object_unref (comp);
+			icalcomponent_free (icalcomp);
+			return;
+		}
+
+		comp_editor_edit_comp (COMP_EDITOR (editor), comp);
+		comp_editor_focus (COMP_EDITOR (editor));
+		e_comp_editor_registry_add (comp_editor_registry, COMP_EDITOR (editor), TRUE);
+	} 
+
+	return;
+}
+
 static GNOME_Evolution_CreatableItemTypeList *
 impl__get_userCreatableItems (PortableServer_Servant servant,
 			      CORBA_Environment *ev)
@@ -1285,6 +1324,7 @@ tasks_component_class_init (TasksCompone
 	epv->createView		     = impl_createView;
 	epv->_get_userCreatableItems = impl__get_userCreatableItems;
 	epv->requestCreateItem       = impl_requestCreateItem;
+	epv->handleURI               = impl_handleURI;
 
 	object_class->dispose = impl_dispose;
 	object_class->finalize = impl_finalize;
