public IAsyncOperation <ContentDialogBaseResult> ShowAsync(TLMessagesStickerSet parameter, ItemClickEventHandler callback) { ViewModel.IsLoading = false; ViewModel.StickerSet = parameter.Set; ViewModel.Items.ReplaceWith(parameter.Documents); return(ShowAsync()); }
public void Archive(TLStickerSet set) { var set32 = set as TLStickerSet32; if (set32 == null) { return; } var inputStickerSet = new TLInputStickerSetId { Id = set32.Id, AccessHash = set32.AccessHash }; IsWorking = true; MTProtoService.InstallStickerSetAsync(inputStickerSet, TLBool.True, result => BeginOnUIThread(() => { IsWorking = false; set32.Archived = true; Items.Remove(set32); var allStickers43 = StateService.GetAllStickers() as TLAllStickers43; TLMessagesStickerSet messagesSet = null; if (allStickers43 != null) { messagesSet = TLUtils.RemoveStickerSet(allStickers43, set32); StateService.SaveAllStickersAsync(allStickers43); } if (messagesSet != null) { var archivedStickers = StateService.GetArchivedStickers(); if (archivedStickers != null) { TLUtils.AddStickerSetCovered(archivedStickers, messagesSet, archivedStickers.SetsCovered, new TLStickerSetCovered { Cover = messagesSet.Documents.FirstOrDefault() ?? new TLDocumentEmpty { Id = new TLLong(0) }, StickerSet = messagesSet.Set }); archivedStickers.Count.Value = archivedStickers.Sets.Count; UpdateArchivedSetsString(archivedStickers.Count.Value); StateService.SaveArchivedStickersAsync(archivedStickers); } } //EventAggregator.Publish(new UpdateStickerSetsEventArgs(allStickers43)); }), error => BeginOnUIThread(() => { IsWorking = false; Execute.ShowDebugMessage("messages.installStickerSet error " + error); })); }
private void ReorderExecute(TLMessagesStickerSet set) { var stickers = _stickersService.GetStickerSets(_type); var index = Items.IndexOf(set); var old = stickers.IndexOf(set); if (old != index) { stickers.Remove(set); stickers.Insert(index, set); _needReorder = true; } }
public DialogStickersViewModel(IMTProtoService protoService, ICacheService cacheService, ITelegramEventAggregator aggregator, IStickersService stickersService) : base(protoService, cacheService, aggregator) { _stickersService = stickersService; _favedSet = new TLMessagesStickerSet { Set = new TLStickerSet { Title = Strings.Android.FavoriteStickers, ShortName = "tg/favedStickers" } }; _recentSet = new TLMessagesStickerSet { Set = new TLStickerSet { Title = Strings.Android.RecentStickers, ShortName = "tg/recentlyUsed" } }; _groupSet = new TLChannelStickerSet { Set = new TLStickerSet { Title = Strings.Android.GroupStickers, ShortName = "tg/groupStickers", }, }; Aggregator.Subscribe(this); SavedGifs = new MvxObservableCollection <IList <MosaicMediaPosition> >(); FeaturedStickers = new MvxObservableCollection <TLFeaturedStickerSet>(); SavedStickers = new StickerSetCollection(); SyncStickers(); SyncGifs(); InstallCommand = new RelayCommand <TLFeaturedStickerSet>(InstallExecute); }
public DialogStickersViewModel(IMTProtoService protoService, ICacheService cacheService, ITelegramEventAggregator aggregator, IStickersService stickersService) : base(protoService, cacheService, aggregator) { _stickersService = stickersService; _favedSet = new TLMessagesStickerSet { Set = new TLStickerSet { Title = "Favorites", ShortName = "tg/favedStickers" } }; _recentSet = new TLMessagesStickerSet { Set = new TLStickerSet { Title = "Frequently used", ShortName = "tg/recentlyUsed" } }; _groupSet = new TLMessagesStickerSet { Set = new TLStickerSet { Title = "Group stickers", ShortName = "tg/groupStickers", }, }; Aggregator.Subscribe(this); SavedGifs = new MvxObservableCollection <TLDocument>(); FeaturedStickers = new MvxObservableCollection <TLFeaturedStickerSet>(); SavedStickers = new StickerSetCollection(); SyncStickers(); SyncGifs(); }
public DialogStickersViewModel(IMTProtoService protoService, ICacheService cacheService, ITelegramEventAggregator aggregator, IStickersService stickersService) : base(protoService, cacheService, aggregator) { _stickersService = stickersService; _stickersService.RecentsDidLoaded += OnRecentsDidLoaded; _stickersService.StickersDidLoaded += OnStickersDidLoaded; _stickersService.FeaturedStickersDidLoaded += OnFeaturedStickersDidLoaded; _frequentlyUsed = new TLMessagesStickerSet { Set = new TLStickerSet { Title = "Frequently used", ShortName = "tg/recentlyUsed" } }; SavedGifs = new MvxObservableCollection <TLDocument>(); FeaturedStickers = new MvxObservableCollection <TLFeaturedStickerSet>(); SavedStickers = new MvxObservableCollection <TLMessagesStickerSet>(); SyncStickers(); SyncGifs(); }
public IAsyncOperation <ContentDialogBaseResult> ShowAsync(TLMessagesStickerSet parameter) { return(ShowAsync(parameter, null)); }