//private bool? _liveLocation; //public bool? LiveLocation //{ // get // { // return _liveLocation; // } // set // { // _liveLocation = value; // LiveLocationButton.Visibility = value.HasValue ? Visibility.Visible : Visibility.Collapsed; // LiveLocationLabel.Text = value == true ? Strings.Resources.SendLiveLocation : Strings.Resources.StopLiveLocation; // LiveLocationButton.Visibility = Visibility.Collapsed; // } //} public SendLocationPopup() { InitializeComponent(); DataContext = TLContainer.Current.Resolve <SendLocationViewModel>(); //PrimaryButtonText = Strings.Resources.Send; //SecondaryButtonText = Strings.Resources.Cancel; Loaded += OnLoaded; var debouncer = new EventDebouncer <object>(500, handler => mMap.CenterChanged += new TypedEventHandler <MapControl, object>(handler)); debouncer.Invoked += async(s, args) => { await UpdateLocationAsync(mMap.Center); }; var debouncer1 = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => SearchField.TextChanged += new TextChangedEventHandler(handler)); debouncer1.Invoked += (s, args) => { if (string.IsNullOrWhiteSpace(SearchField.Text)) { ViewModel.Search = null; } else { ViewModel.Find(SearchField.Text); } }; }
public AnimationDrawer() { InitializeComponent(); _handler = new AnimatedListHandler(List); _zoomer = new ZoomableListHandler(List); _zoomer.Opening = _handler.UnloadVisibleItems; _zoomer.Closing = _handler.ThrottleVisibleItems; _zoomer.DownloadFile = fileId => ViewModel.ProtoService.DownloadFile(fileId, 32); _zoomer.SessionId = () => ViewModel.ProtoService.SessionId; ElementCompositionPreview.GetElementVisual(this).Clip = Window.Current.Compositor.CreateInsetClip(); var header = DropShadowEx.Attach(Separator); header.Clip = header.Compositor.CreateInsetClip(0, 48, 0, -48); var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => FieldAnimations.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += (s, args) => { ViewModel.Search(FieldAnimations.Text); }; }
private SharePopup() { InitializeComponent(); DataContext = TLContainer.Current.Resolve <ShareViewModel>(); //Title = Strings.Resources.ShareSendTo; PrimaryButtonText = Strings.Resources.Send; SecondaryButtonText = Strings.Resources.Close; EmojiPanel.DataContext = EmojiDrawerViewModel.GetForCurrentView(ViewModel.SessionId); CaptionInput.CustomEmoji = CustomEmoji; ViewModel.PropertyChanged += OnPropertyChanged; var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => SearchField.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += async(s, args) => { var items = ViewModel.Search; if (items != null && string.Equals(SearchField.Text, items.Query)) { await items.LoadMoreItemsAsync(2); await items.LoadMoreItemsAsync(3); } }; }
public SupergroupEditStickerSetPage() { InitializeComponent(); Title = Strings.Resources.GroupStickers; var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => ShortName.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += (s, args) => { ViewModel.CheckAvailability(ShortName.Value); }; }
public SupergroupEditStickerSetPage() { InitializeComponent(); DataContext = TLContainer.Current.Resolve <SupergroupEditStickerSetViewModel>(); var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => ShortName.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += (s, args) => { ViewModel.CheckAvailability(ShortName.Value); }; }
public ChatSearchBar() { InitializeComponent(); _debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => Field.TextChanged += new TextChangedEventHandler(handler)); _debouncer.Invoked += (s, args) => { if (Field.State != ChatSearchState.Members) { ViewModel?.Search(Field.Text, Field.From, Field.Filter?.Filter); } }; }
public ChannelCreateStep2Page() { InitializeComponent(); Title = Strings.Resources.ChannelSettings; var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => Username.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += (s, args) => { if (ViewModel.UpdateIsValid(Username.Value)) { ViewModel.CheckAvailability(Username.Value); } }; }
public SettingsUsernamePage() { InitializeComponent(); DataContext = TLContainer.Current.Resolve <SettingsUsernameViewModel>(); var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => Username.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += (s, args) => { if (ViewModel.UpdateIsValid(Username.Text)) { ViewModel.CheckAvailability(Username.Text); } }; }
public ChannelCreateStep2Page() { InitializeComponent(); DataContext = TLContainer.Current.Resolve <ChannelCreateStep2ViewModel, ISupergroupEditDelegate>(this); var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => Username.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += (s, args) => { if (ViewModel.UpdateIsValid(Username.Value)) { ViewModel.CheckAvailability(Username.Value); } }; }
public SettingsUsernamePopup() { InitializeComponent(); Title = Strings.Resources.Username; PrimaryButtonText = Strings.Resources.Done; SecondaryButtonText = Strings.Resources.Cancel; var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => Username.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += (s, args) => { if (ViewModel.UpdateIsValid(Username.Text)) { ViewModel.CheckAvailability(Username.Text); } }; }
public SupergroupMembersView() { InitializeComponent(); var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => SearchField.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += (s, args) => { if (string.IsNullOrWhiteSpace(SearchField.Text)) { ViewModel.Search?.Clear(); } else { ViewModel.Find(SearchField.Text); } }; }
public SupergroupBannedPage() { InitializeComponent(); DataContext = TLContainer.Current.Resolve <SupergroupBannedViewModel, ISupergroupDelegate>(this); var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => SearchField.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += (s, args) => { if (string.IsNullOrWhiteSpace(SearchField.Text)) { ViewModel.Search?.Clear(); } else { ViewModel.Find(SearchField.Text); } }; }
public StickerDrawer() { InitializeComponent(); ElementCompositionPreview.GetElementVisual(this).Clip = Window.Current.Compositor.CreateInsetClip(); _handler = new AnimatedListHandler(List); _toolbarHandler = new AnimatedListHandler(Toolbar); _zoomer = new ZoomableListHandler(List); _zoomer.Opening = _handler.UnloadVisibleItems; _zoomer.Closing = _handler.ThrottleVisibleItems; _zoomer.DownloadFile = fileId => ViewModel.ProtoService.DownloadFile(fileId, 32); _zoomer.SessionId = () => ViewModel.ProtoService.SessionId; _typeToItemHashSetMapping.Add("AnimatedItemTemplate", new HashSet <SelectorItem>()); _typeToItemHashSetMapping.Add("VideoItemTemplate", new HashSet <SelectorItem>()); _typeToItemHashSetMapping.Add("ItemTemplate", new HashSet <SelectorItem>()); _typeToTemplateMapping.Add("AnimatedItemTemplate", Resources["AnimatedItemTemplate"] as DataTemplate); _typeToTemplateMapping.Add("VideoItemTemplate", Resources["VideoItemTemplate"] as DataTemplate); _typeToTemplateMapping.Add("ItemTemplate", Resources["ItemTemplate"] as DataTemplate); //_toolbarHandler = new AnimatedStickerHandler<StickerSetViewModel>(Toolbar); var header = DropShadowEx.Attach(Separator); header.Clip = header.Compositor.CreateInsetClip(0, 48, 0, -48); var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => FieldStickers.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += async(s, args) => { var items = ViewModel.SearchStickers; if (items != null && string.Equals(FieldStickers.Text, items.Query)) { await items.LoadMoreItemsAsync(1); await items.LoadMoreItemsAsync(2); } }; }
public NetworkService(IProtoService protoService, ISettingsService settingsService, IEventAggregator aggregator) { _protoService = protoService; _settingsService = settingsService; _aggregator = aggregator; _watcher = HttpProxyWatcher.Current; _debouncer = new EventDebouncer <bool>(Constants.HoldingThrottle, handler => _watcher.Changed += new TypedEventHandler <HttpProxyWatcher, bool>(handler), handler => _watcher.Changed -= new TypedEventHandler <HttpProxyWatcher, bool>(handler), true); NetworkInformation.NetworkStatusChanged += OnNetworkStatusChanged; try { Update(NetworkInformation.GetInternetConnectionProfile()); } catch { } Initialize(); }
public SupergroupAddRestrictedPage() { InitializeComponent(); DataContext = TLContainer.Current.Resolve <SupergroupAddRestrictedViewModel>(); var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => SearchField.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += async(s, args) => { var items = ViewModel.Search; if (items != null && string.Equals(SearchField.Text, items.Query)) { await items.LoadMoreItemsAsync(0); await items.LoadMoreItemsAsync(1); await items.LoadMoreItemsAsync(2); await items.LoadMoreItemsAsync(3); } }; }
public SupergroupAddRestrictedPage() { InitializeComponent(); Title = Strings.Resources.ChannelBlockUser; var debouncer = new EventDebouncer <TextChangedEventArgs>(Constants.TypingTimeout, handler => SearchField.TextChanged += new TextChangedEventHandler(handler)); debouncer.Invoked += async(s, args) => { var items = ViewModel.Search; if (items != null && string.Equals(SearchField.Text, items.Query)) { await items.LoadMoreItemsAsync(0); await items.LoadMoreItemsAsync(1); await items.LoadMoreItemsAsync(2); await items.LoadMoreItemsAsync(3); } }; }