protected override void OnDisappearing()
 {
     base.OnDisappearing();
     ListView.ItemSelected -= CipherSelected;
     AddCipherItem.Dispose();
     SearchItem.Dispose();
 }
 protected override void OnAppearing()
 {
     base.OnAppearing();
     ListView.ItemSelected += CipherSelected;
     AddCipherItem.InitEvents();
     SearchItem.InitEvents();
     _filterResultsCancellationTokenSource = FetchAndLoadVault();
 }
Ejemplo n.º 3
0
        protected override void OnDisappearing()
        {
            base.OnDisappearing();
            MessagingCenter.Unsubscribe <Application, bool>(Application.Current, "SyncCompleted");

            ListView.ItemSelected -= GroupingSelected;
            AddCipherItem?.Dispose();
            SearchItem?.Dispose();
        }
Ejemplo n.º 4
0
        protected override void OnDisappearing()
        {
            base.OnDisappearing();
            MessagingCenter.Unsubscribe <Application, bool>(Application.Current, "SyncCompleted");

            AddCipherItem?.Dispose();
            ListView.ItemSelected      -= GroupingOrCipherSelected;
            Search.TextChanged         -= SearchBar_TextChanged;
            Search.SearchButtonPressed -= SearchBar_SearchButtonPressed;
        }
        protected async override void OnAppearing()
        {
            base.OnAppearing();
            MessagingCenter.Subscribe<Application, bool>(Application.Current, "SyncCompleted", (sender, success) =>
            {
                if(success)
                {
                    _filterResultsCancellationTokenSource = FetchAndLoadVault();
                }
            });

            ListView.ItemSelected += GroupingOrCipherSelected;
            AddCipherItem?.InitEvents();
            SearchItem?.InitEvents();

            if(lastTappedItem != null)
            {
                ListView.ScrollTo(lastTappedItem, ScrollToPosition.Center, false);
            }
            else
            {
                _filterResultsCancellationTokenSource = FetchAndLoadVault();
            }

            // Push registration
            if(_connectivity.IsConnected)
            {
                var lastPushRegistration = _settings.GetValueOrDefault(Constants.PushLastRegistrationDate,
                    DateTime.MinValue);

                if(Device.RuntimePlatform == Device.iOS)
                {
                    var pushPromptShow = _settings.GetValueOrDefault(Constants.PushInitialPromptShown, false);
                    if(!pushPromptShow)
                    {
                        _settings.AddOrUpdateValue(Constants.PushInitialPromptShown, true);
                        await DisplayAlert(AppResources.EnableAutomaticSyncing, AppResources.PushNotificationAlert,
                            AppResources.OkGotIt);
                    }

                    if(!pushPromptShow || DateTime.UtcNow - lastPushRegistration > TimeSpan.FromDays(1))
                    {
                        _pushNotification.Register();
                    }
                }
                else if(Device.RuntimePlatform == Device.Android &&
                    DateTime.UtcNow - lastPushRegistration > TimeSpan.FromDays(1))
                {
                    _pushNotification.Register();
                }
            }
        }
Ejemplo n.º 6
0
        protected override void OnAppearing()
        {
            base.OnAppearing();
            MessagingCenter.Subscribe <Application, bool>(Application.Current, "SyncCompleted", (sender, success) =>
            {
                if (success)
                {
                    _filterResultsCancellationTokenSource = FetchAndLoadVault();
                }
            });

            ListView.ItemSelected += GroupingSelected;
            AddCipherItem?.InitEvents();
            SearchItem?.InitEvents();

            _filterResultsCancellationTokenSource = FetchAndLoadVault();

            if (_connectivity.IsConnected && Device.RuntimePlatform == Device.iOS)
            {
                var    pushPromptShow = _settings.GetValueOrDefault(Constants.PushInitialPromptShown, false);
                Action registerAction = () =>
                {
                    var lastPushRegistration =
                        _settings.GetValueOrDefault(Constants.PushLastRegistrationDate, DateTime.MinValue);
                    if (!pushPromptShow || DateTime.UtcNow - lastPushRegistration > TimeSpan.FromDays(1))
                    {
                        _pushNotification.Register();
                    }
                };

                if (!pushPromptShow)
                {
                    _settings.AddOrUpdateValue(Constants.PushInitialPromptShown, true);
                    _userDialogs.Alert(new AlertConfig
                    {
                        Message  = AppResources.PushNotificationAlert,
                        Title    = AppResources.EnableAutomaticSyncing,
                        OnAction = registerAction,
                        OkText   = AppResources.OkGotIt
                    });
                }
                else
                {
                    // Check push registration once per day
                    registerAction();
                }
            }
        }
Ejemplo n.º 7
0
        protected override void OnAppearing()
        {
            base.OnAppearing();
            MessagingCenter.Subscribe <Application, bool>(Application.Current, "SyncCompleted", (sender, success) =>
            {
                if (success)
                {
                    _filterResultsCancellationTokenSource = FetchAndLoadVault();
                }
            });

            AddCipherItem?.InitEvents();
            ListView.ItemSelected                += GroupingOrCipherSelected;
            Search.TextChanged                   += SearchBar_TextChanged;
            Search.SearchButtonPressed           += SearchBar_SearchButtonPressed;
            _filterResultsCancellationTokenSource = FetchAndLoadVault();
        }