Fix notification activation and calendar bootstrap flow
This commit is contained in:
@@ -71,14 +71,20 @@ public sealed partial class CalendarPage : CalendarPageAbstract, ITitleBarSearch
|
||||
}
|
||||
|
||||
var anchorDate = DateOnly.FromDateTime(DateTime.Now.Date);
|
||||
CalendarItemTarget? pendingTarget = null;
|
||||
|
||||
if (e.Parameter is CalendarPageNavigationArgs args && !args.RequestDefaultNavigation)
|
||||
{
|
||||
anchorDate = DateOnly.FromDateTime(args.NavigationDate.Date);
|
||||
pendingTarget = args.PendingTarget;
|
||||
}
|
||||
else if (e.Parameter is CalendarPageNavigationArgs pendingArgs)
|
||||
{
|
||||
pendingTarget = pendingArgs.PendingTarget;
|
||||
}
|
||||
|
||||
var request = new CalendarDisplayRequest(ViewModel.StatePersistanceService.CalendarDisplayType, anchorDate);
|
||||
WeakReferenceMessenger.Default.Send(new LoadCalendarMessage(request));
|
||||
WeakReferenceMessenger.Default.Send(new LoadCalendarMessage(request, PendingTarget: pendingTarget));
|
||||
}
|
||||
|
||||
protected override void OnNavigatedFrom(NavigationEventArgs e)
|
||||
|
||||
@@ -89,7 +89,16 @@ public sealed partial class WinoAppShell : Views.Abstract.WinoAppShellAbstract,
|
||||
public void ActivateMode(WinoApplicationMode mode, ShellModeActivationContext activationContext)
|
||||
{
|
||||
if (_activeMode == mode && InnerShellFrame.Content != null)
|
||||
{
|
||||
if (activationContext.Parameter != null)
|
||||
{
|
||||
ViewModel.SetCurrentMode(mode);
|
||||
ViewModel.CurrentClient.Activate(activationContext);
|
||||
NotifyTitleBarContentChanged();
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
DeactivateCurrentMode();
|
||||
ResetShellModeNavigationState();
|
||||
|
||||
Reference in New Issue
Block a user