public static void Show(StockItemHeader stockItemHeader, string referrer) { StickersPackView stickersPackView = new StickersPackView(); stickersPackView.Init(stockItemHeader, referrer); DialogService dialogService = new DialogService(); dialogService.AnimationType = DialogService.AnimationTypes.None; dialogService.AnimationTypeChild = DialogService.AnimationTypes.None; SolidColorBrush solidColorBrush = new SolidColorBrush(Colors.Transparent); dialogService.BackgroundBrush = (Brush)solidColorBrush; int num1 = 0; dialogService.IsOverlayApplied = num1 != 0; int num2 = 0; dialogService.HideOnNavigation = num2 != 0; Action <Action> action = (Action <Action>)(callback => stickersPackView.AnimateHide(false, callback)); dialogService.OnClosingAction = action; StickersPackView._flyout = dialogService; StickersPackView._flyout.Opened += (EventHandler)((sender, args) => { stickersPackView.AnimateShow(); EventAggregator.Current.Publish(new StickersPurchaseFunnelEvent(StickersPurchaseFunnelAction.sticker_page)); }); StickersPackView._flyout.Child = (FrameworkElement)stickersPackView; StickersPackView._flyout.Show(null); }
private static void ShowWithLoader(string referrer, Action <Action <BackendResult <StockItem, ResultCode> >, CancellationToken> loadAction, long userOrChatId = 0, bool isChat = false) { CancellationTokenSource cancellationTokenSource = new CancellationTokenSource(); FullscreenLoader fullscreenLoader = new FullscreenLoader(); fullscreenLoader.HideOnBackKeyPress = true; Action <FullscreenLoaderHiddenEventArgs> action = (Action <FullscreenLoaderHiddenEventArgs>)(args => cancellationTokenSource.Cancel()); fullscreenLoader.HiddenCallback = action; FullscreenLoader loader = fullscreenLoader; loader.Show(null, true); loadAction((Action <BackendResult <StockItem, ResultCode> >)(result => { loader.Hide(false); if (result.ResultCode == ResultCode.Succeeded) { Execute.ExecuteOnUIThread((Action)(() => StickersPackView.Show(result.ResultData, referrer, userOrChatId, isChat))); } else { GenericInfoUC.ShowBasedOnResult((int)result.ResultCode, "", (VKRequestsDispatcher.Error)null); } }), cancellationTokenSource.Token); }
private void OnTap(object sender, System.Windows.Input.GestureEventArgs e) { StockItemHeader dataContext = base.DataContext as StockItemHeader; if (dataContext == null) { return; } CurrentStickersPurchaseFunnelSource.Source = StickersPurchaseFunnelSource.keyboard; StickersPackView.Show(dataContext, "store"); }
private void OnTap(object sender, GestureEventArgs e) { StockItemHeader stockItemHeader = this.DataContext as StockItemHeader; if (stockItemHeader == null) { return; } CurrentStickersPurchaseFunnelSource.Source = StickersPurchaseFunnelSource.keyboard; StickersPackView.Show(stockItemHeader, "store"); }
private void StoreBanner_OnTap(object sender, System.Windows.Input.GestureEventArgs e) { StoreBannerHeader dataContext = ((FrameworkElement)sender).DataContext as StoreBannerHeader; if (dataContext == null) { return; } CurrentStickersPurchaseFunnelSource.Source = StickersPurchaseFunnelSource.banner; StickersPackView.Show(new StockItemHeader(dataContext.StockItem, false, 0, false), "store"); }
private void StoreBanner_OnTap(object sender, GestureEventArgs e) { StoreBannerHeader storeBannerHeader = ((FrameworkElement)sender).DataContext as StoreBannerHeader; if (storeBannerHeader == null) { return; } CurrentStickersPurchaseFunnelSource.Source = StickersPurchaseFunnelSource.banner; StickersPackView.Show(storeBannerHeader.StockItem, "store"); }
public static void ShowAndReloadStickers(long stickerId, string referrer) { StickersPackView.ShowWithLoader(referrer, (Action <Action <BackendResult <StockItem, ResultCode> >, CancellationToken>)((callback, cancellationToken) => StoreService.Instance.GetStockItemByStickerId(stickerId, (Action <BackendResult <StockItem, ResultCode> >)(result => { if (result.ResultCode == ResultCode.Succeeded) { StockItem resultData = result.ResultData; StoreProduct storeProduct = resultData != null ? resultData.product : null; if (storeProduct != null && storeProduct.purchased == 1 && storeProduct.active == 1) { EventAggregator.Current.Publish(new StickersUpdatedEvent(new StockItemHeader(resultData, false, 0, false))); } } Action <BackendResult <StockItem, ResultCode> > action = callback; if (action == null) { return; } BackendResult <StockItem, ResultCode> backendResult = result; action(backendResult); }), new CancellationToken?(cancellationToken))), 0, false); }
public static void Show(StockItem stockItem, string referrer, long userOrChatId = 0, bool isChat = false) { StickersPackView.Show(new StockItemHeader(stockItem, false, userOrChatId, isChat), referrer); }
public static void Show(string stickersPackName, string referrer) { StickersPackView.ShowWithLoader(referrer, (Action <Action <BackendResult <StockItem, ResultCode> >, CancellationToken>)((callback, cancellationToken) => StoreService.Instance.GetStockItemByName(stickersPackName, callback, new CancellationToken?(cancellationToken))), 0, false); }
public static void Show(StockItem stockItem, string referrer) { StickersPackView.Show(new StockItemHeader(stockItem, false), referrer); }