* New rename folder dialog keys. * Insfra work for folder operations and rename folder code. * RenameFolder for Gmail. * Fixed input dialog to take custom take for primary button. * Missing rename for DS call. * Outlook to throw exception in case of error. * Implemented rename folder functionality for Outlook. * Remove default primary text from input dialog. * Fixed an issue where outlook folder rename does not work. * Disable vertical scroll for composing page editor items. * Fixing some issues with imap folder sync. * fix copy pasta * TODO folder update/removed overrides for shell. * New rename folder dialog keys. * Insfra work for folder operations and rename folder code. * RenameFolder for Gmail. * Fixed input dialog to take custom take for primary button. * Missing rename for DS call. * Outlook to throw exception in case of error. * Implemented rename folder functionality for Outlook. * Remove default primary text from input dialog. * Fixed an issue where outlook folder rename does not work. * Disable vertical scroll for composing page editor items. * Fixing some issues with imap folder sync. * fix copy pasta * TODO folder update/removed overrides for shell. * New rename folder dialog keys. * Insfra work for folder operations and rename folder code. * RenameFolder for Gmail. * Fixed input dialog to take custom take for primary button. * Missing rename for DS call. * Outlook to throw exception in case of error. * Implemented rename folder functionality for Outlook. * Remove default primary text from input dialog. * Fixed an issue where outlook folder rename does not work. * Disable vertical scroll for composing page editor items. * Fixing some issues with imap folder sync. * fix copy pasta * TODO folder update/removed overrides for shell. * New rename folder dialog keys. * Fixed an issue where redundant older updates causing pivots to be re-created. * New empty folder request * New rename folder dialog keys. * Insfra work for folder operations and rename folder code. * RenameFolder for Gmail. * Fixed input dialog to take custom take for primary button. * Missing rename for DS call. * Outlook to throw exception in case of error. * Implemented rename folder functionality for Outlook. * Remove default primary text from input dialog. * Fixed an issue where outlook folder rename does not work. * Fixing some issues with imap folder sync. * fix copy pasta * TODO folder update/removed overrides for shell. * New rename folder dialog keys. * New rename folder dialog keys. * New rename folder dialog keys. * Fixed an issue where redundant older updates causing pivots to be re-created. * New empty folder request * Enable empty folder on base sync. * Move updates on event listeners. * Remove folder UI messages. * Reworked folder synchronization for gmail. * Loading folders on the fly as the selected account changed instead of relying on cached menu items. * Merged account folder items, re-navigating to existing rendering page. * - Reworked merged account menu system. - Reworked unread item count loadings. - Fixed back button visibility. - Instant rendering of mails if renderer is active. - Animation fixes. - Menu item re-load crash/hang fixes. * Handle folder renaming on the UI. * Empty folder for all synchronizers. * New execution delay mechanism and handling folder mark as read for all synchronizers. * Revert UI changes on failure for IMAP. * Remove duplicate translation keys. * Cleanup.
58 lines
2.9 KiB
C#
58 lines
2.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Collections.ObjectModel;
|
|
using System.Threading.Tasks;
|
|
using Wino.Core.Domain.Entities;
|
|
using Wino.Core.Domain.Enums;
|
|
using Wino.Core.Domain.Models.Accounts;
|
|
using Wino.Core.Domain.Models.Folders;
|
|
|
|
namespace Wino.Core.Domain.Interfaces
|
|
{
|
|
public interface IDialogService
|
|
{
|
|
Task<string> PickWindowsFolderAsync();
|
|
Task<byte[]> PickWindowsFileContentAsync(params object[] typeFilters);
|
|
Task<bool> ShowConfirmationDialogAsync(string question, string title, string confirmationButtonTitle);
|
|
Task<bool> ShowHardDeleteConfirmationAsync();
|
|
Task<IStoreRatingDialog> ShowRatingDialogAsync();
|
|
Task HandleSystemFolderConfigurationDialogAsync(Guid accountId, IFolderService folderService);
|
|
Task<bool> ShowCustomThemeBuilderDialogAsync();
|
|
|
|
Task ShowMessageAsync(string message, string title);
|
|
void InfoBarMessage(string title, string message, InfoBarMessageType messageType);
|
|
void InfoBarMessage(string title, string message, InfoBarMessageType messageType, string actionButtonText, Action action);
|
|
|
|
void ShowNotSupportedMessage();
|
|
|
|
// Custom dialogs
|
|
Task<IMailItemFolder> ShowMoveMailFolderDialogAsync(List<IMailItemFolder> availableFolders);
|
|
Task<AccountCreationDialogResult> ShowNewAccountMailProviderDialogAsync(List<IProviderDetail> availableProviders);
|
|
IAccountCreationDialog GetAccountCreationDialog(MailProviderType type);
|
|
Task<string> ShowTextInputDialogAsync(string currentInput, string dialogTitle, string dialogDescription, string primaryButtonText);
|
|
Task<MailAccount> ShowEditAccountDialogAsync(MailAccount account);
|
|
Task<MailAccount> ShowAccountPickerDialogAsync(List<MailAccount> availableAccounts);
|
|
|
|
/// <summary>
|
|
/// Displays a dialog to the user for reordering accounts.
|
|
/// </summary>
|
|
/// <param name="availableAccounts">Available accounts in order.</param>
|
|
/// <returns>Result model that has dict of AccountId-AccountOrder.</returns>
|
|
Task ShowAccountReorderDialogAsync(ObservableCollection<IAccountProviderDetailViewModel> availableAccounts);
|
|
|
|
/// <summary>
|
|
/// Presents a dialog to the user for selecting folder.
|
|
/// </summary>
|
|
/// <param name="accountId">Account to get folders for.</param>
|
|
/// <param name="reason">The reason behind the picking operation
|
|
/// <returns>Selected folder structure. Null if none.</returns>
|
|
Task<IMailItemFolder> PickFolderAsync(Guid accountId, PickFolderReason reason, IFolderService folderService);
|
|
|
|
/// <summary>
|
|
/// Presents a dialog to the user for signature creation/modification.
|
|
/// </summary>
|
|
/// <returns>Signature information. Null if canceled.</returns>
|
|
Task<AccountSignature> ShowSignatureEditorDialog(AccountSignature signatureModel = null);
|
|
}
|
|
}
|