public static async void StartGateway() { if (Gateway == null) { await RESTCalls.SetupToken(); } //Ready Gateway.Ready += Gateway_Ready; //Message Gateway.MessageCreated += Gateway_MessageCreated; Gateway.MessageDeleted += Gateway_MessageDeleted; Gateway.MessageUpdated += Gateway_MessageUpdated; Gateway.MessageAck += Gateway_MessageAck; //MessageReaction Gateway.MessageReactionAdded += Gateway_MessageReactionAdded; Gateway.MessageReactionRemoved += Gateway_MessageReactionRemoved; Gateway.MessageReactionRemovedAll += Gateway_MessageReactionRemovedAll; //DMs Gateway.DirectMessageChannelCreated += Gateway_DirectMessageChannelCreated; Gateway.DirectMessageChannelDeleted += Gateway_DirectMessageChannelDeleted; //GuildChannel Gateway.GuildChannelCreated += Gateway_GuildChannelCreated; Gateway.GuildChannelDeleted += Gateway_GuildChannelDeleted; Gateway.GuildChannelUpdated += Gateway_GuildChannelUpdated; //ChannelRecipientAdded is handled exclusively by MainPage //ChannelRecipientRemoved is handled exclusively by MainPage //Guild Gateway.GuildCreated += Gateway_GuildCreated; Gateway.GuildDeleted += Gateway_GuildDeleted; Gateway.GuildUpdated += Gateway_GuildUpdated; Gateway.GuildSynced += Gateway_GuildSynced; //GuildMember Gateway.GuildMemberAdded += Gateway_GuildMemberAdded; Gateway.GuildMemberChunk += Gateway_GuildMemberChunk; Gateway.GuildMemberRemoved += Gateway_GuildMemberRemoved; Gateway.GuildMemberUpdated += Gateway_GuildMemberUpdated; //GuildBan Gateway.GuildBanAdded += Gateway_GuildBanAdded; Gateway.GuildBanRemoved += Gateway_GuildBanRemoved; //Presence Gateway.PresenceUpdated += Gateway_PresenceUpdated; //RelationShip Gateway.RelationShipAdded += Gateway_RelationShipAdded; Gateway.RelationShipRemoved += Gateway_RelationShipRemoved; Gateway.RelationShipUpdated += Gateway_RelationShipUpdated; //Typing Gateway.TypingStarted += Gateway_TypingStarted; //Note Gateway.UserNoteUpdated += Gateway_UserNoteUpdated; //UserSettings Gateway.UserSettingsUpdated += Gateway_UserSettingsUpdated; //Voice Gateway.VoiceServerUpdated += Gateway_VoiceServerUpdated; Gateway.VoiceStateUpdated += Gateway_VoiceStateUpdated; //Other Gateway.SessionReplaced += Gateway_SessionReplaced; await Gateway.ConnectAsync(); }
protected override async void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); if (e.Parameter != null) { if (e.Parameter is DataPackageView view) { var param = await view.GetStorageItemsAsync(); foreach (var file in param) { AddAttachement(file as StorageFile); } } else if (e.Parameter.GetType() == typeof(App.MessageEditorNavigationArgs)) { Editor.Text = (e.Parameter as App.MessageEditorNavigationArgs).Content; if ((e.Parameter as App.MessageEditorNavigationArgs).Paste == true) { DataPackageView dataPackageView = Clipboard.GetContent(); HandleDataPackage(dataPackageView, "Clipboard"); } } else if (e.Parameter is Contact contact) { shareContact = contact; } else { Editor.Text = e.Parameter.ToString(); } } if (App.shareop != null) { header.Text = App.GetString("/Dialogs/Share"); if (shareContact == null) { shareTarget.Visibility = Visibility.Visible; SaveButton.IsEnabled = false; } mediumTrigger.MinWindowWidth = 10000; mediumTrigger.MinWindowHeight = 10000; if (App.LoggedIn() == false) { MessageDialog md = new MessageDialog(App.GetString("/Dialogs/MustBeLoggedIn"), App.GetString("/Dialogs/Sorry")); await md.ShowAsync(); App.shareop.DismissUI(); } else { HandleDataPackage(App.shareop.Data, "Shared Image"); await RESTCalls.SetupToken(true); if (shareContact == null) { List <SimpleGuild> guilds = new List <SimpleGuild>(); var userguilds = await RESTCalls.GetGuilds(); guilds.Add(new SimpleGuild() { Id = "@me", Name = App.GetString("/Main/DirectMessages"), ImageURL = "https://discordapp.com/assets/89576a4bb71f927eb20e8aef987b499b.svg" }); foreach (var guild in userguilds) { guilds.Add(GuildManager.CreateGuild(guild)); } serverOption.ItemsSource = guilds; } else { } } } }