Initial feature for drag / drop calendar events.
This commit is contained in:
@@ -2807,6 +2807,9 @@ public class GmailSynchronizer : WinoSynchronizer<IClientServiceRequest, Message
|
||||
return [new HttpRequestBundle<IClientServiceRequest>(updateRequest, request)];
|
||||
}
|
||||
|
||||
public override List<IRequestBundle<IClientServiceRequest>> ChangeStartAndEndDate(ChangeStartAndEndDateRequest request)
|
||||
=> UpdateCalendarEvent(request);
|
||||
|
||||
public override List<IRequestBundle<IClientServiceRequest>> DeleteCalendarEvent(DeleteCalendarEventRequest request)
|
||||
{
|
||||
var calendarItem = request.Item;
|
||||
|
||||
@@ -334,6 +334,15 @@ public class ImapSynchronizer : WinoSynchronizer<ImapRequest, ImapMessageCreatio
|
||||
handler.RequiresConnectedClient);
|
||||
}
|
||||
|
||||
public override List<IRequestBundle<ImapRequest>> ChangeStartAndEndDate(ChangeStartAndEndDateRequest request)
|
||||
{
|
||||
var handler = ResolveCalendarOperationHandler();
|
||||
return CreateCalendarOperationTaskBundle(
|
||||
request,
|
||||
async value => await handler.UpdateCalendarEventAsync(value).ConfigureAwait(false),
|
||||
handler.RequiresConnectedClient);
|
||||
}
|
||||
|
||||
public override List<IRequestBundle<ImapRequest>> DeleteCalendarEvent(DeleteCalendarEventRequest request)
|
||||
{
|
||||
var handler = ResolveCalendarOperationHandler();
|
||||
|
||||
@@ -2856,6 +2856,9 @@ public class OutlookSynchronizer : WinoSynchronizer<RequestInformation, Message,
|
||||
return [new HttpRequestBundle<RequestInformation>(updateRequest, request)];
|
||||
}
|
||||
|
||||
public override List<IRequestBundle<RequestInformation>> ChangeStartAndEndDate(ChangeStartAndEndDateRequest request)
|
||||
=> UpdateCalendarEvent(request);
|
||||
|
||||
public override List<IRequestBundle<RequestInformation>> DeleteCalendarEvent(DeleteCalendarEventRequest request)
|
||||
{
|
||||
var calendarItem = request.Item;
|
||||
|
||||
@@ -437,6 +437,11 @@ public abstract class WinoSynchronizer<TBaseRequest, TMessageType, TCalendarEven
|
||||
.OfType<UpdateCalendarEventRequest>()
|
||||
.SelectMany(UpdateCalendarEvent));
|
||||
break;
|
||||
case CalendarSynchronizerOperation.ChangeStartAndEndDate:
|
||||
nativeRequests.AddRange(group
|
||||
.OfType<ChangeStartAndEndDateRequest>()
|
||||
.SelectMany(ChangeStartAndEndDate));
|
||||
break;
|
||||
case CalendarSynchronizerOperation.DeleteEvent:
|
||||
nativeRequests.AddRange(group
|
||||
.OfType<DeleteCalendarEventRequest>()
|
||||
@@ -600,6 +605,7 @@ public abstract class WinoSynchronizer<TBaseRequest, TMessageType, TCalendarEven
|
||||
|
||||
public virtual List<IRequestBundle<TBaseRequest>> CreateCalendarEvent(CreateCalendarEventRequest request) => throw new NotSupportedException(string.Format(Translator.Exception_UnsupportedSynchronizerOperation, this.GetType()));
|
||||
public virtual List<IRequestBundle<TBaseRequest>> UpdateCalendarEvent(UpdateCalendarEventRequest request) => throw new NotSupportedException(string.Format(Translator.Exception_UnsupportedSynchronizerOperation, this.GetType()));
|
||||
public virtual List<IRequestBundle<TBaseRequest>> ChangeStartAndEndDate(ChangeStartAndEndDateRequest request) => throw new NotSupportedException(string.Format(Translator.Exception_UnsupportedSynchronizerOperation, this.GetType()));
|
||||
public virtual List<IRequestBundle<TBaseRequest>> DeleteCalendarEvent(DeleteCalendarEventRequest request) => throw new NotSupportedException(string.Format(Translator.Exception_UnsupportedSynchronizerOperation, this.GetType()));
|
||||
public virtual List<IRequestBundle<TBaseRequest>> AcceptEvent(AcceptEventRequest request) => throw new NotSupportedException(string.Format(Translator.Exception_UnsupportedSynchronizerOperation, this.GetType()));
|
||||
public virtual List<IRequestBundle<TBaseRequest>> DeclineEvent(DeclineEventRequest request) => throw new NotSupportedException(string.Format(Translator.Exception_UnsupportedSynchronizerOperation, this.GetType()));
|
||||
|
||||
Reference in New Issue
Block a user