Example #1
0
        private async void Photo_Click(object sender, RoutedEventArgs e)
        {
            var chat = ViewModel.Chat;

            if (chat == null)
            {
                return;
            }

            if (chat.Type is ChatTypePrivate || chat.Type is ChatTypeSecret)
            {
                var user = ViewModel.ProtoService.GetUser(chat);
                if (user == null || user.ProfilePhoto == null)
                {
                    return;
                }

                var viewModel = new UserPhotosViewModel(ViewModel.ProtoService, ViewModel.Aggregator, user);
                await GalleryView.GetForCurrentView().ShowAsync(viewModel, () => Photo);
            }

            //var user = ViewModel.Item as TLUser;
            //var userFull = ViewModel.Full as TLUserFull;
            //if (userFull != null && userFull.ProfilePhoto is TLPhoto && user != null)
            //{
            //    var viewModel = new UserPhotosViewModel(ViewModel.LegacyService, userFull, user);
            //    await GalleryView.Current.ShowAsync(viewModel, () => Photo);
            //}
        }
Example #2
0
        private async void Photo_Click(object sender, RoutedEventArgs e)
        {
            var chat = ViewModel.Chat;

            if (chat == null)
            {
                return;
            }

            if (chat.Type is ChatTypePrivate or ChatTypeSecret)
            {
                var user = ViewModel.ProtoService.GetUser(chat);
                if (user == null || user.ProfilePhoto == null)
                {
                    return;
                }

                var userFull = ViewModel.ProtoService.GetUserFull(user.Id);
                if (userFull?.Photo == null)
                {
                    return;
                }

                var viewModel = new UserPhotosViewModel(ViewModel.ProtoService, ViewModel.Aggregator, user, userFull);
                await GalleryView.GetForCurrentView().ShowAsync(viewModel, () => Photo);
            }
Example #3
0
        private async void Photo_Click(object sender, RoutedEventArgs e)
        {
            var user     = ViewModel.Self;
            var userFull = ViewModel.Full as TLUserFull;

            if (userFull != null && userFull.ProfilePhoto is TLPhoto && user != null)
            {
                var viewModel = new UserPhotosViewModel(ViewModel.ProtoService, userFull, user);
                await GalleryView.Current.ShowAsync(viewModel, () => Photo);
            }
        }
        private async void Photo_Click(object sender, RoutedEventArgs e)
        {
            ConnectedAnimationService.GetForCurrentView().PrepareToAnimate("FullScreenPicture", Photo);

            var user = ViewModel.Self;

            if (user.HasPhoto && user.Photo is TLUserProfilePhoto photo)
            {
                var viewModel = new UserPhotosViewModel(user, ViewModel.ProtoService);
                await GalleryView.Current.ShowAsync(viewModel, () => Photo);
            }
        }