//Event Menu >> Delete Reply
        private void DeleteReplyEvent(ReplyObject item)
        {
            try
            {
                if (Methods.CheckConnectivity())
                {
                    TypeDialog  = "DeleteComment";
                    ReplyObject = item;

                    var dialog = new MaterialDialog.Builder(MainContext.Context).Theme(AppSettings.SetTabDarkTheme ? Theme.Dark : Theme.Light);
                    dialog.Title(MainContext.GetText(Resource.String.Lbl_DeleteComment));
                    dialog.Content(MainContext.GetText(Resource.String.Lbl_AreYouSureDeleteComment));
                    dialog.PositiveText(MainContext.GetText(Resource.String.Lbl_Yes)).OnPositive(this);
                    dialog.NegativeText(MainContext.GetText(Resource.String.Lbl_No)).OnNegative(this);
                    dialog.AlwaysCallSingleChoiceCallback();
                    dialog.ItemsCallback(this).Build().Show();
                }
                else
                {
                    Toast.MakeText(MainContext.Context, MainContext.GetText(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Short).Show();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
        //Event Menu >> Edit Reply
        private void EditReplyEvent(ReplyObject item)
        {
            try
            {
                if (Methods.CheckConnectivity())
                {
                    TypeDialog  = "EditComment";
                    ReplyObject = item;

                    var dialog = new MaterialDialog.Builder(MainContext.Context).Theme(AppSettings.SetTabDarkTheme ? Theme.Dark : Theme.Light);

                    dialog.Title(Resource.String.Lbl_Edit);
                    dialog.Input(Context.GetString(Resource.String.Lbl_Write_comment), Methods.FunString.DecodeString(item.Text), this);

                    dialog.InputType(InputTypes.TextFlagImeMultiLine);
                    dialog.PositiveText(MainContext.GetText(Resource.String.Lbl_Update)).OnPositive(this);
                    dialog.NegativeText(MainContext.GetText(Resource.String.Lbl_Cancel)).OnNegative(this);
                    dialog.Build().Show();
                    dialog.AlwaysCallSingleChoiceCallback();
                }
                else
                {
                    Toast.MakeText(MainContext.Context, MainContext.GetText(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Short).Show();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
示例#3
0
        private void TxtTwoFactorOnTouch(object sender, View.TouchEventArgs e)
        {
            try
            {
                if (e?.Event?.Action != MotionEventActions.Down)
                {
                    return;
                }

                TypeDialog = "Confirmation";

                var dialogList = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);

                var arrayAdapter = new List <string>
                {
                    GetString(Resource.String.Lbl_Enable), GetString(Resource.String.Lbl_Disable)
                };

                dialogList.Items(arrayAdapter);
                dialogList.NegativeText(GetText(Resource.String.Lbl_Close)).OnNegative(this);
                dialogList.AutoDismiss(true).AlwaysCallSingleChoiceCallback();
                dialogList.ItemsCallback(this).Build().Show();
            }
            catch (Exception exception)
            {
                Methods.DisplayReportResultTrack(exception);
            }
        }
示例#4
0
        private void EdtHeightOnClick(object sender, View.TouchEventArgs e)
        {
            try
            {
                if (e.Event.Action != MotionEventActions.Down)
                {
                    return;
                }
                TypeDialog = "Height";
                //string[] heightArray = Application.Context.Resources.GetStringArray(Resource.Array.HeightArray);
                var heightArray = ListUtils.SettingsSiteList.FirstOrDefault()?.Height;

                var arrayAdapter = new List <string>();
                var dialogList   = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);

                if (heightArray != null)
                {
                    arrayAdapter.AddRange(heightArray.Select(item => Methods.FunString.DecodeString(item.Values.FirstOrDefault())));
                }

                dialogList.Title(GetText(Resource.String.Lbl_Height));
                dialogList.Items(arrayAdapter);
                dialogList.PositiveText(GetText(Resource.String.Lbl_Close)).OnPositive(this);
                dialogList.AlwaysCallSingleChoiceCallback();
                dialogList.ItemsCallback(this).Build().Show();
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
示例#5
0
        private void BtnAddPhoneNumberOnClick(object sender, EventArgs e)
        {
            try
            {
                FullNumber = TxtNumber2.Text;

                if (Regex.IsMatch(FullNumber, "^\\+?(\\d[\\d-. ]+)?(\\([\\d-. ]+\\))?[\\d-. ]+\\d$") &&
                    FullNumber.Length > 10)
                {
                    if (!string.IsNullOrEmpty(FullNumber))
                    {
                        Intent intent = new Intent(ActivityContext, typeof(VerificationCodeActivity));
                        intent.PutExtra("Number", FullNumber);
                        ActivityContext.StartActivityForResult(intent, 125);

                        AddPhoneNumberWindow.Hide();
                        AddPhoneNumberWindow.Dismiss();
                    }
                }
                else
                {
                    var dialog = new MaterialDialog.Builder(ActivityContext).Theme(AppSettings.SetTabDarkTheme ? Theme.Dark : Theme.Light);
                    dialog.Title(Resource.String.Lbl_Warning);
                    dialog.Content(FullNumber + " " + ActivityContext.GetText(Resource.String.Lbl_ISNotValidNumber));
                    dialog.PositiveText(ActivityContext.GetText(Resource.String.Lbl_Ok)).OnPositive((materialDialog, action) => { dialog.Dispose(); });
                    dialog.AlwaysCallSingleChoiceCallback();
                    dialog.Build().Show();
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
示例#6
0
        //Event Show More : Copy Link , Share , Edit (If user isOwner_Event)
        private void BtnMoreOnClick(object sender, EventArgs e)
        {
            try
            {
                var arrayAdapter = new List <string>();
                var dialogList   = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);

                arrayAdapter.Add(GetString(Resource.String.Lbl_CopeLink));
                arrayAdapter.Add(GetString(Resource.String.Lbl_Share));
                if (EventData.IsOwner)
                {
                    arrayAdapter.Add(GetString(Resource.String.Lbl_Edit));
                }

                dialogList.Title(GetString(Resource.String.Lbl_More));
                dialogList.Items(arrayAdapter);
                dialogList.NegativeText(GetText(Resource.String.Lbl_Close)).OnNegative(this);
                dialogList.AlwaysCallSingleChoiceCallback();
                dialogList.ItemsCallback(this).Build().Show();
            }
            catch (Exception exception)
            {
                Methods.DisplayReportResultTrack(exception);
            }
        }
示例#7
0
        private void TxtFromDateOnTouch(object sender, View.TouchEventArgs e)
        {
            try
            {
                if (e.Event.Action != MotionEventActions.Down)
                {
                    return;
                }

                DialogType = "FromDate";
                var dialogList = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);

                var arrayAdapter = ExperienceDate.ToList();

                dialogList.Title(GetText(Resource.String.Lbl_FromDate));
                dialogList.Items(arrayAdapter);
                dialogList.NegativeText(GetText(Resource.String.Lbl_Close)).OnNegative(this);
                dialogList.AlwaysCallSingleChoiceCallback();
                dialogList.ItemsCallback(this).Build().Show();
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
        private void TxtRelationshipOnTouch(object sender, View.TouchEventArgs e)
        {
            try
            {
                if (e?.Event?.Action != MotionEventActions.Down)
                {
                    return;
                }

                TypeDialog = "RelationShip";

                string[] relationshipArray = Application.Context.Resources?.GetStringArray(Resource.Array.RelationShipArray);

                var dialogList = new MaterialDialog.Builder(this);

                var arrayAdapter = relationshipArray?.ToList();

                dialogList.Title(GetText(Resource.String.Lbl_ChooseRelationshipStatus));
                dialogList.Items(arrayAdapter);
                dialogList.PositiveText(GetText(Resource.String.Lbl_Close)).OnPositive(this);
                dialogList.AlwaysCallSingleChoiceCallback();
                dialogList.ItemsCallback(this).Build().Show();
            }
            catch (Exception exception)
            {
                Methods.DisplayReportResultTrack(exception);
            }
        }
        public override bool OnPreferenceTreeClick(Preference preference)
        {
            try
            {
                if (preference.Key == "Night_Mode_key")
                {
                    var arrayAdapter = new List <string>();
                    var dialogList   = new MaterialDialog.Builder(ActivityContext).Theme(AppSettings.SetTabDarkTheme ? Theme.Dark : Theme.Light);

                    dialogList.Title(Resource.String.Lbl_Night_Mode);

                    arrayAdapter.Add(GetText(Resource.String.Lbl_Light));
                    arrayAdapter.Add(GetText(Resource.String.Lbl_Dark));

                    if ((int)Build.VERSION.SdkInt >= 29)
                    {
                        arrayAdapter.Add(GetText(Resource.String.Lbl_SetByBattery));
                    }

                    dialogList.Items(arrayAdapter);
                    dialogList.PositiveText(GetText(Resource.String.Lbl_Close)).OnPositive(this);
                    dialogList.AlwaysCallSingleChoiceCallback();
                    dialogList.ItemsCallback(this).Build().Show();
                }

                return(base.OnPreferenceTreeClick(preference));
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(base.OnPreferenceTreeClick(preference));
            }
        }
        public void OnSelection(MaterialDialog p0, View p1, int itemId, ICharSequence itemString)
        {
            try
            {
                string text = itemString.ToString();
                if (text == GetText(Resource.String.Lbl_Edit))
                {
                    //Open Edit Job
                    var intent = new Intent(this, typeof(EditJobsActivity));
                    intent.PutExtra("JobsObject", JsonConvert.SerializeObject(DataInfoObject));
                    StartActivityForResult(intent, 246);
                }
                else if (text == GetText(Resource.String.Lbl_Delete))
                {
                    DialogType = "Delete";

                    var dialog = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);
                    dialog.Title(Resource.String.Lbl_Warning).TitleColorRes(Resource.Color.primary);
                    dialog.Content(GetText(Resource.String.Lbl_DeleteJobs));
                    dialog.PositiveText(GetText(Resource.String.Lbl_Yes)).OnPositive(this);
                    dialog.NegativeText(GetText(Resource.String.Lbl_No)).OnNegative(this);
                    dialog.AlwaysCallSingleChoiceCallback();
                    dialog.ItemsCallback(this).Build().Show();
                }
            }
            catch (Exception e)
            {
                Methods.DisplayReportResultTrack(e);
            }
        }
示例#11
0
        //Contact seller
        private void BtnContactOnClick(object sender, EventArgs eventArgs)
        {
            try
            {
                if (AppSettings.MessengerIntegration)
                {
                    var dialog = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);

                    dialog.Title(Resource.String.Lbl_Warning);
                    dialog.Content(GetText(Resource.String.Lbl_ContentAskOPenAppMessenger));
                    dialog.PositiveText(GetText(Resource.String.Lbl_Yes)).OnPositive((materialDialog, action) =>
                    {
                        try
                        {
                            Methods.App.OpenAppByPackageName(this, AppSettings.MessengerPackageName, "SendMsgProduct", new ChatObject()
                            {
                                UserId = ProductData.Seller.UserId, Avatar = ProductData.Seller.Avatar, Name = ProductData.Seller.Name, LastMessage = new LastMessageUnion()
                                {
                                    LastMessageClass = new MessageData()
                                    {
                                        ProductId = ProductData.Id, Product = new ProductUnion()
                                        {
                                            ProductClass = ProductData
                                        }
                                    }
                                }
                            });
                        }
                        catch (Exception exception)
                        {
                            Console.WriteLine(exception);
                        }
                    });
                    dialog.NegativeText(GetText(Resource.String.Lbl_No)).OnNegative(this);
                    dialog.AlwaysCallSingleChoiceCallback();
                    dialog.Build().Show();
                }
                else
                {
                    if (!Methods.CheckConnectivity())
                    {
                        Toast.MakeText(this, GetString(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Short).Show();
                        return;
                    }

                    var unixTimestamp = DateTimeOffset.UtcNow.ToUnixTimeSeconds();
                    var time          = unixTimestamp.ToString();

                    PollyController.RunRetryPolicyFunction(new List <Func <Task> > {
                        () => RequestsAsync.Message.Send_Message(ProductData.Seller.UserId, time, "", "", "", "", "", "", ProductData.Id)
                    });
                    Toast.MakeText(this, GetString(Resource.String.Lbl_MessageSentSuccessfully), ToastLength.Short).Show();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
示例#12
0
        //Remove
        private void MAdapterOnOnRemoveItemClick(object sender, AllMediaAdapterClickEventArgs e)
        {
            try
            {
                var position = e.Position;
                if (position > -1)
                {
                    var item = MAdapter.GetItem(position);
                    if (item != null)
                    {
                        if (!Methods.CheckConnectivity())
                        {
                            Toast.MakeText(this, GetText(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Short).Show();
                            return;
                        }

                        if (!string.IsNullOrEmpty(item.Id))
                        {
                            var dialog = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);
                            dialog.Title(GetText(Resource.String.Lbl_Warning));
                            dialog.Content(GetText(Resource.String.Lbl_AskDeleteFile));
                            dialog.PositiveText(GetText(Resource.String.Lbl_Yes)).OnPositive((materialDialog, action) =>
                            {
                                try
                                {
                                    PollyController.RunRetryPolicyFunction(new List <Func <Task> > {
                                        () => RequestsAsync.Users.DeleteMediaFileUserAsync(item.Id)
                                    });

                                    MAdapter.Remove(item);

                                    var dataUser  = ListUtils.MyUserInfo.FirstOrDefault();
                                    var dataImage = dataUser?.Mediafiles?.FirstOrDefault(file => file.Id == item.Id);
                                    if (dataImage != null)
                                    {
                                        dataUser.Mediafiles?.Remove(dataImage);

                                        SqLiteDatabase dbDatabase = new SqLiteDatabase();
                                        dbDatabase.InsertOrUpdate_DataMyInfo(dataUser);
                                        dbDatabase.Dispose();
                                    }
                                }
                                catch (Exception exception)
                                {
                                    Console.WriteLine(exception);
                                }
                            });
                            dialog.NegativeText(GetText(Resource.String.Lbl_No)).OnNegative(this);
                            dialog.AlwaysCallSingleChoiceCallback();
                            dialog.Build().Show();
                        }
                    }
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
示例#13
0
        private Task <string> OnJavascriptInjectionRequest(string eventobj)
        {
            try
            {
                if (!string.IsNullOrEmpty(eventobj))
                {
                    if (eventobj.Contains("type"))
                    {
                        var data = JsonConvert.DeserializeObject <Dictionary <string, object> >(eventobj);
                        var type = data["type"].ToString();

                        if (type == "delete_post")
                        {
                            Activity.RunOnUiThread(() =>
                            {
                                try
                                {
                                    var DialogList = new MaterialDialog.Builder(Context);
                                    DialogList.Tag(data["post_id"].ToString());
                                    DialogList.Title(Context.GetText(Resource.String.Lbl_Title_DeletePost));
                                    DialogList.Content(Context.GetText(Resource.String.Lbl_Content_DeletePost));
                                    DialogList.NegativeText(Context.GetText(Resource.String.Lbl_Cancel));
                                    DialogList.OnNegative(this);
                                    DialogList.PositiveText(Context.GetText(Resource.String.Lbl_Delete));
                                    DialogList.OnPositive(this);
                                    DialogList.Build().Show();
                                }
                                catch (Exception exception)
                                {
                                    Crashes.TrackError(exception);
                                }
                            });
                        }
                        else if (type == "publisher-box")
                        {
                            Activity.RunOnUiThread(() =>
                            {
                                var Int = new Intent(Activity, typeof(AddPost_Activity));
                                Int.PutExtra("Type", "Normal");
                                Int.PutExtra("PostId", UserDetails.User_id);
                                Int.PutExtra("isOwner", "Normal");
                                StartActivityForResult(Int, 2500);
                            });
                        }
                        else
                        {
                            return(null);
                        }
                    }
                }

                return(null);
            }
            catch (Exception e)
            {
                Crashes.TrackError(e);
                return(null);
            }
        }
示例#14
0
        public MaterialDialog.Builder newBuilder()
        {
            var context = GetActivityContext();
            var builder = new MaterialDialog.Builder(context)
                          .Theme(Theme.Light);

            return(builder);
        }
        public override bool OnPreferenceTreeClick(Preference preference)
        {
            try
            {
                switch (preference.Key)
                {
                case "about_me_key":
                {
                    TypeDialog = "About";
                    var dialog = new MaterialDialog.Builder(ActivityContext).Theme(AppSettings.SetTabDarkTheme ? Theme.Dark : Theme.Light);
                    dialog.Title(GetString(Resource.String.Lbl_About)).TitleColorRes(Resource.Color.primary);
                    dialog.Input(GetString(Resource.String.Lbl_About), preference.Summary, false, this);
                    dialog.InputType(InputTypes.TextFlagImeMultiLine);
                    dialog.PositiveText(GetText(Resource.String.Lbl_Save)).OnPositive(this);
                    dialog.NegativeText(GetText(Resource.String.Lbl_Cancel)).OnNegative(this);
                    dialog.AlwaysCallSingleChoiceCallback();
                    dialog.Build().Show();

                    return(true);
                }

                case "Night_Mode_key":
                {
                    TypeDialog = "NightMode";

                    var arrayAdapter = new List <string>();
                    var dialogList   = new MaterialDialog.Builder(ActivityContext).Theme(AppSettings.SetTabDarkTheme ? Theme.Dark : Theme.Light);

                    dialogList.Title(Resource.String.Lbl_Theme).TitleColorRes(Resource.Color.primary);

                    arrayAdapter.Add(GetText(Resource.String.Lbl_Light));
                    arrayAdapter.Add(GetText(Resource.String.Lbl_Dark));

                    switch ((int)Build.VERSION.SdkInt)
                    {
                    case >= 29:
                        arrayAdapter.Add(GetText(Resource.String.Lbl_SetByBattery));
                        break;
                    }

                    dialogList.Items(arrayAdapter);
                    dialogList.PositiveText(GetText(Resource.String.Lbl_Close)).OnPositive(this);
                    dialogList.AlwaysCallSingleChoiceCallback();
                    dialogList.ItemsCallback(this).Build().Show();

                    return(true);
                }

                default:
                    return(base.OnPreferenceTreeClick(preference));
                }
            }
            catch (Exception e)
            {
                Methods.DisplayReportResultTrack(e);
                return(base.OnPreferenceTreeClick(preference));
            }
        }
示例#16
0
        //Report Copyright
        private void ReportCopyRightLayoutOnClick(object sender, EventArgs e)
        {
            try
            {
                if (UserDetails.IsLogin)
                {
                    if (Methods.CheckConnectivity())
                    {
                        MaterialDialog dialog = new MaterialDialog.Builder(Controller.ActivityContext).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light)
                                                .Title(Resource.String.Lbl_ReportCopyRight)
                                                .CustomView(Resource.Layout.ReportCopyRightLayout, true)
                                                .PositiveText(Resource.String.Lbl_Submit).OnPositive((materialDialog, action) =>
                        {
                            try
                            {
                                if (TxtMessage != null && (CheckBox2 != null && (CheckBox1 != null && (CheckBox1.Checked && CheckBox2.Checked && !string.IsNullOrEmpty(TxtMessage.Text) && !string.IsNullOrWhiteSpace(TxtMessage.Text)))))
                                {
                                    PollyController.RunRetryPolicyFunction(new List <Func <Task> > {
                                        () => RequestsAsync.Video.ReportCopyRightVideos_Http(Controller.VideoData.Id, TxtMessage.Text)
                                    });
                                    Toast.MakeText(Controller.ActivityContext, Controller.ActivityContext.GetText(Resource.String.Lbl_received_your_report), ToastLength.Short).Show();
                                }
                                else
                                {
                                    Toast.MakeText(Controller.ActivityContext, Controller.ActivityContext.GetText(Resource.String.Lbl_Please_check_your_details), ToastLength.Short).Show();
                                }
                            }
                            catch (Exception exception)
                            {
                                Console.WriteLine(exception);
                            }
                        })
                                                .NegativeText(Resource.String.Lbl_Close).OnNegative(this)
                                                .Build();

                        TxtMessage = dialog.CustomView.FindViewById <EditText>(Resource.Id.MessageEditText);
                        CheckBox1  = dialog.CustomView.FindViewById <CheckBox>(Resource.Id.CheckBoxReportCopyRight1);
                        CheckBox2  = dialog.CustomView.FindViewById <CheckBox>(Resource.Id.CheckBoxReportCopyRight2);

                        dialog.Show();
                        Dismiss();
                    }
                    else
                    {
                        Toast.MakeText(Context, Context.GetText(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Short).Show();
                    }
                }
                else
                {
                    PopupDialogController dialog = new PopupDialogController(Activity, Controller.VideoData, "Login");
                    dialog.ShowNormalDialog(Context.GetText(Resource.String.Lbl_Warning), Context.GetText(Resource.String.Lbl_Please_sign_in_Report), Context.GetText(Resource.String.Lbl_Yes), Context.GetText(Resource.String.Lbl_No));
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
示例#17
0
        protected override void ShowDialog(Bundle state)
        {
            MaterialDialog.Builder builder = new MaterialDialog.Builder(context)
                                             .SetTitle(DialogTitle)
                                             .SetContent(DialogMessage)
                                             .SetIcon(DialogIcon)
                                             .SetDismissListener(this)
                                             .SetCallback(new ButtonCallback
            {
                Neutral = (x) =>
                {
                    OnClick(x, (int)DialogButtonType.Neutral);
                },
                Negative = (x) =>
                {
                    OnClick(x, (int)DialogButtonType.Negative);
                },
                Positive = (x) =>
                {
                    OnClick(x, (int)DialogButtonType.Positive);
                }
            })
                                             .SetPositiveText(PositiveButtonText)
                                             .SetNegativeText(NegativeButtonText)
                                             .SetAutoDismiss(true);

            View contentView = OnCreateDialogView();

            if (contentView != null)
            {
                OnBindDialogView(contentView);
                builder.SetCustomView(contentView, false);
            }
            else
            {
                builder.SetContent(DialogMessage);
            }

            try
            {
                PreferenceManager        pm     = PreferenceManager;
                Java.Lang.Reflect.Method method = pm.Class.GetDeclaredMethod(
                    "registerOnActivityDestroyListener",
                    Java.Lang.Class.FromType(typeof(PreferenceManager.IOnActivityDestroyListener)));
                method.Accessible = true;
                method.Invoke(pm, this);
            }
            catch (Exception) { }

            mDialog = builder.Build();
            if (state != null)
            {
                mDialog.OnRestoreInstanceState(state);
            }
            mDialog.Show();
        }
        private void Initialize(MoviesAdapterViewHolder holder, GetMoviesObject.Movie movie)
        {
            try
            {
                GlideImageLoader.LoadImage(ActivityContext, movie.Cover, holder.VideoImage, ImageStyle.CenterCrop, ImagePlaceholders.Drawable);

                string name = Methods.FunString.DecodeString(movie.Name);
                holder.TxtTitle.Text       = name;
                holder.TxtDescription.Text = Methods.FunString.SubStringCutOf(Methods.FunString.DecodeString(movie.Description), 50);

                var millis  = Convert.ToInt32(movie.Duration);
                int hours   = millis / 60; //since both are ints, you get an int
                int minutes = millis % 60;
                holder.TxtDuration.Text = hours + ":" + minutes;

                holder.TxtViewsCount.Text = movie.Views + " " + ActivityContext.GetText(Resource.String.Lbl_Views);

                FontUtils.SetTextViewIcon(FontsIconFrameWork.IonIcons, holder.MenueView, IonIconsFonts.More);

                //Video Type
                ShowGlobalBadgeSystem(holder.VideoType, movie);

                switch (holder.MenueView.HasOnClickListeners)
                {
                case false:
                    holder.MenueView.Click += (sender, args) =>
                    {
                        try
                        {
                            MovieDataMenue = movie;

                            var arrayAdapter = new List <string>();
                            var dialogList   = new MaterialDialog.Builder(ActivityContext).Theme(AppSettings.SetTabDarkTheme ? Theme.Dark : Theme.Light);

                            arrayAdapter.Add(ActivityContext.GetString(Resource.String.Lbl_CopeLink));
                            arrayAdapter.Add(ActivityContext.GetString(Resource.String.Lbl_Share));

                            dialogList.Title(ActivityContext.GetString(Resource.String.Lbl_More)).TitleColorRes(Resource.Color.primary);
                            dialogList.Items(arrayAdapter);
                            dialogList.NegativeText(ActivityContext.GetText(Resource.String.Lbl_Close)).OnNegative(this);
                            dialogList.AlwaysCallSingleChoiceCallback();
                            dialogList.ItemsCallback(this).Build().Show();
                        }
                        catch (Exception e)
                        {
                            Methods.DisplayReportResultTrack(e);
                        }
                    };
                    break;
                }
            }
            catch (Exception e)
            {
                Methods.DisplayReportResultTrack(e);
            }
        }
示例#19
0
        // send data and send api and show liner add code email
        private void SaveButtonOnClick(object sender, EventArgs e)
        {
            try
            {
                if (!Methods.CheckConnectivity())
                {
                    Toast.MakeText(this, GetString(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Short).Show();
                    return;
                }

                switch (TypeTwoFactor)
                {
                case "1":
                {
                    TypeDialog = "ConfirmationCode";
                    var dialog = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);
                    dialog.Title(Resource.String.Lbl_ConfirmationEmailSent);
                    dialog.Input(Resource.String.Lbl_ConfirmationCode, 0, false, this);
                    dialog.InputType(InputTypes.ClassNumber);
                    dialog.PositiveText(GetText(Resource.String.Lbl_Send)).OnPositive(this);
                    dialog.NegativeText(GetText(Resource.String.Lbl_Cancel)).OnNegative(this);
                    dialog.AlwaysCallSingleChoiceCallback();
                    dialog.Build().Show();

                    break;
                }

                case "0":
                    var dictionary = new Dictionary <string, string>
                    {
                        { "two_factor", "0" },
                    };

                    PollyController.RunRetryPolicyFunction(new List <Func <Task> > {
                        () => RequestsAsync.Users.UpdateProfileAsync(dictionary)
                    });
                    var local = ListUtils.MyUserInfo.FirstOrDefault();
                    if (local != null)
                    {
                        local.TwoFactor = "0";

                        var sqLiteDatabase = new SqLiteDatabase();
                        sqLiteDatabase.InsertOrUpdate_DataMyInfo(local);
                        sqLiteDatabase.Dispose();
                    }
                    Finish();
                    break;
                }
            }
            catch (Exception exception)
            {
                AndHUD.Shared.Dismiss(this);
                Console.WriteLine(exception);
            }
        }
示例#20
0
        public void OnSelection(MaterialDialog p0, View p1, int itemId, ICharSequence itemString)
        {
            try
            {
                if (itemString.ToString() == GetText(Resource.String.Lbl_CreateNewGroup))
                {
                    StartActivity(new Intent(Activity, typeof(CreateGroupChatActivity)));
                }
                else if (itemString.ToString() == GetText(Resource.String.Lbl_GroupRequest))
                {
                    StartActivity(new Intent(Activity, typeof(GroupRequestActivity)));
                }
                else if (itemString.ToString() == GetText(Resource.String.Lbl_Blocked_User_List))
                {
                    StartActivity(new Intent(Activity, typeof(BlockedUsersActivity)));
                }
                else if (itemString.ToString() == GetText(Resource.String.Lbl_Settings))
                {
                    StartActivity(new Intent(Activity, typeof(GeneralAccountActivity)));
                }
                else if (itemString.ToString() == GetText(Resource.String.Lbl_Clear_call_log))
                {
                    var dialog = new MaterialDialog.Builder(Activity).Theme(AppSettings.SetTabDarkTheme
                        ? Theme.Dark
                        : Theme.Light);
                    dialog.Title(GetText(Resource.String.Lbl_Warning));
                    dialog.Content(GetText(Resource.String.Lbl_Clear_call_log));
                    dialog.PositiveText(GetText(Resource.String.Lbl_Yes)).OnPositive((materialDialog, action) =>
                    {
                        try
                        {
                            LastCallsTab?.MAdapter?.MCallUser?.Clear();
                            LastCallsTab?.MAdapter?.NotifyDataSetChanged();
                            LastCallsTab?.ShowEmptyPage();

                            //Toast.MakeText(this, GetText(Resource.String.Lbl_Done), ToastLength.Long)?.Show();

                            SqLiteDatabase dbDatabase = new SqLiteDatabase();
                            dbDatabase.Clear_CallUser_List();
                        }
                        catch (Exception e)
                        {
                            Methods.DisplayReportResultTrack(e);
                        }
                    });
                    dialog.NegativeText(GetText(Resource.String.Lbl_No)).OnNegative(new WoWonderTools.MyMaterialDialog());
                    dialog.AlwaysCallSingleChoiceCallback();
                    dialog.Build().Show();
                }
            }
            catch (Exception e)
            {
                Methods.DisplayReportResultTrack(e);
            }
        }
        private static void SetupProgressDialog(MaterialDialog dialog)
        {
            MaterialDialog.Builder builder = dialog.mBuilder;
            if (builder.mIndeterminateProgress || builder.mProgress > -2)
            {
                dialog.mProgress = (ProgressBar)dialog.view.FindViewById(Android.Resource.Id.Progress);

                // Manually color progress bar on pre-Lollipop, since Material/AppCompat themes only do it on API 21+
                if (Build.VERSION.SdkInt < BuildVersionCodes.Lollipop)
                {
                    Drawable indDraw = dialog.mProgress.IndeterminateDrawable;
                    if (indDraw != null)
                    {
                        indDraw.SetColorFilter(builder.accentColor, PorterDuff.Mode.SrcAtop);
                        dialog.mProgress.IndeterminateDrawable = indDraw;
                    }
                    Drawable regDraw = dialog.mProgress.ProgressDrawable;
                    if (regDraw != null)
                    {
                        regDraw.SetColorFilter(builder.accentColor, PorterDuff.Mode.SrcAtop);
                        dialog.mProgress.ProgressDrawable = regDraw;
                    }
                }

                if (!builder.mIndeterminateProgress)
                {
                    dialog.mProgress.Progress = 0;
                    dialog.mProgress.Max      = builder.mProgressMax;
                    dialog.mProgressLabel     = (TextView)dialog.view.FindViewById(Resource.Id.label);
                    dialog.mProgressMinMax    = (TextView)dialog.view.FindViewById(Resource.Id.minMax);
                    if (builder.mShowMinMax)
                    {
                        dialog.mProgressMinMax.Visibility = ViewStates.Visible;
                        dialog.mProgressMinMax.Text       = "0/" + builder.mProgressMax;
                        ViewGroup.MarginLayoutParams lp = (ViewGroup.MarginLayoutParams)dialog.mProgress.LayoutParameters;
                        lp.LeftMargin  = 0;
                        lp.RightMargin = 0;
                    }
                    else
                    {
                        dialog.mProgressMinMax.Visibility = ViewStates.Gone;
                    }
                    dialog.mProgressLabel.Text = "0%";
                }

                if (builder.title == null)
                {
                    // Redistribute main frame's bottom padding to the top padding if there's no title
                    View mainFrame = dialog.view.FindViewById(Resource.Id.mainFrame);
                    mainFrame.SetPadding(mainFrame.PaddingLeft, mainFrame.PaddingBottom, mainFrame.PaddingRight, mainFrame.PaddingBottom);
                }
            }
        }
示例#22
0
        //Send Amount
        private void BtnContinueOnClick(object sender, EventArgs e)
        {
            try
            {
                if (string.IsNullOrEmpty(TxtAmount.Text) || string.IsNullOrWhiteSpace(TxtAmount.Text) || int.Parse(TxtAmount.Text) == 0)
                {
                    Toast.MakeText(Context, Context.GetText(Resource.String.Lbl_Please_enter_amount), ToastLength.Short).Show();
                    return;
                }

                if (string.IsNullOrEmpty(TxtEmail.Text) || string.IsNullOrWhiteSpace(TxtEmail.Text))
                {
                    Toast.MakeText(Context, Context.GetText(Resource.String.Lbl_Please_enter_name_email), ToastLength.Short).Show();
                    return;
                }

                if (!Methods.CheckConnectivity())
                {
                    Toast.MakeText(Context, Context.GetText(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Long).Show();
                    return;
                }

                GlobalContext.TypeOpenPayment = "SendMoneyFragment";
                Price = TxtAmount.Text;

                var arrayAdapter = new List <string>();
                var dialogList   = new MaterialDialog.Builder(Context).Theme(AppSettings.SetTabDarkTheme ? Theme.Dark : Theme.Light);

                if (AppSettings.ShowPaypal)
                {
                    arrayAdapter.Add(GetString(Resource.String.Btn_Paypal));
                }

                if (AppSettings.ShowCreditCard)
                {
                    arrayAdapter.Add(GetString(Resource.String.Lbl_CreditCard));
                }

                if (AppSettings.ShowBankTransfer)
                {
                    arrayAdapter.Add(GetString(Resource.String.Lbl_BankTransfer));
                }

                dialogList.Items(arrayAdapter);
                dialogList.NegativeText(GetText(Resource.String.Lbl_Close)).OnNegative(this);
                dialogList.AlwaysCallSingleChoiceCallback();
                dialogList.ItemsCallback(this).Build().Show();
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
        protected override void ShowDialog(Bundle state)
        {
            MaterialDialog.Builder builder = new MaterialDialog.Builder(context)
                .SetTitle(DialogTitle)
                .SetContent(DialogMessage)
                .SetIcon(DialogIcon)
                .SetDismissListener(this)
                .SetCallback(new ButtonCallback
                {
                    Neutral = (x) =>
                    {
                        OnClick(x,(int)DialogButtonType.Neutral);
                    },
                    Negative = (x) =>
                    {
                        OnClick(x, (int)DialogButtonType.Negative);
                    },
                    Positive = (x) =>
                    {
                        OnClick(x, (int)DialogButtonType.Positive);
                    }
                })
                .SetPositiveText(PositiveButtonText)
                .SetNegativeText(NegativeButtonText)
                .SetAutoDismiss(true);

            View contentView = OnCreateDialogView();
            if (contentView != null)
            {
                OnBindDialogView(contentView);
                builder.SetCustomView(contentView, false);
            }
            else
            {
                builder.SetContent(DialogMessage);
            }

            try
            {
                PreferenceManager pm = PreferenceManager;
                Java.Lang.Reflect.Method method = pm.Class.GetDeclaredMethod(
                        "registerOnActivityDestroyListener",
                        Java.Lang.Class.FromType(typeof(PreferenceManager.IOnActivityDestroyListener)));
                method.Accessible = true;
                method.Invoke(pm, this);
            }
            catch (Exception) { }

            mDialog = builder.Build();
            if (state != null)
                mDialog.OnRestoreInstanceState(state);
            mDialog.Show();
        }
示例#24
0
        private void UpgradeButtonOnClick(object sender, UpgradeGoProAdapterClickEventArgs e)
        {
            try
            {
                if (e.Position > -1)
                {
                    var item = PlansAdapter.GetItem(e.Position);
                    if (item != null)
                    {
                        if (item.PlanPrice == "0")
                        {
                            Finish();
                        }
                        else
                        {
                            if (AppSettings.ShowInAppBilling && Client.IsExtended)
                            {
                                BillingPayment?.SetConnInAppBilling();
                                BillingPayment?.InitInAppBilling("membership");
                            }
                            else
                            {
                                var arrayAdapter = new List <string>();
                                var dialogList   = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);

                                if (AppSettings.ShowPaypal)
                                {
                                    arrayAdapter.Add(GetString(Resource.String.Btn_Paypal));
                                }

                                if (AppSettings.ShowCreditCard)
                                {
                                    arrayAdapter.Add(GetString(Resource.String.Lbl_CreditCard));
                                }

                                //if (AppSettings.ShowBankTransfer)
                                //    arrayAdapter.Add(GetString(Resource.String.Lbl_BankTransfer));

                                dialogList.Items(arrayAdapter);
                                dialogList.NegativeText(GetString(Resource.String.Lbl_Close)).OnNegative(this);
                                dialogList.AlwaysCallSingleChoiceCallback();
                                dialogList.ItemsCallback(this).Build().Show();
                            }
                        }
                    }
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
示例#25
0
        //Open walletFragment with Google
        private void CreditAdapterOnItemClick(object sender, CreditAdapterViewHolderClickEventArgs e)
        {
            try
            {
                int position = e.Position;
                if (position > -1)
                {
                    CreditsClass item = CreditAdapter.GetItem(position);
                    if (item != null)
                    {
                        ItemCredits      = item;
                        DialogButtonType = CreditType;

                        var arrayAdapter = new List <string>();
                        var dialogList   = new MaterialDialog.Builder(ActivityContext).Theme(AppSettings.SetTabDarkTheme ? Theme.Dark : Theme.Light);

                        if (AppSettings.ShowInAppBilling && Client.IsExtended)
                        {
                            arrayAdapter.Add(ActivityContext.GetString(Resource.String.Btn_GooglePlay));
                        }

                        if (AppSettings.ShowPaypal)
                        {
                            arrayAdapter.Add(ActivityContext.GetString(Resource.String.Btn_Paypal));
                        }

                        if (AppSettings.ShowCreditCard)
                        {
                            arrayAdapter.Add(ActivityContext.GetString(Resource.String.Lbl_CreditCard));
                        }

                        if (AppSettings.ShowBankTransfer)
                        {
                            arrayAdapter.Add(ActivityContext.GetString(Resource.String.Lbl_BankTransfer));
                        }

                        dialogList.Items(arrayAdapter);
                        dialogList.NegativeText(ActivityContext.GetText(Resource.String.Lbl_Close)).OnNegative(this);
                        dialogList.AlwaysCallSingleChoiceCallback();
                        dialogList.ItemsCallback(this).Build().Show();

                        DialogAddCredits.Hide();
                        DialogAddCredits.Dismiss();
                    }
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
示例#26
0
        //More
        private void MAdapterOnItemClick(object sender, MembersAdapterClickEventArgs e)
        {
            try
            {
                if (!Methods.CheckConnectivity())
                {
                    Toast.MakeText(this, GetText(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Short).Show();
                    return;
                }

                ItemUser = MAdapter.GetItem(e.Position);
                if (ItemUser != null)
                {
                    var arrayAdapter = new List <string>();
                    var dialogList   = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);

                    if (GroupDataClass.IsOwner)
                    {
                        switch (ItemUser.IsAdmin)
                        {
                        case "0":
                            arrayAdapter.Add(GetText(Resource.String.Lbl_MakeAdmin));
                            break;

                        case "1":
                            arrayAdapter.Add(GetText(Resource.String.Lbl_RemoveAdmin));
                            break;

                        default:
                            arrayAdapter.Add(GetText(Resource.String.Lbl_MakeAdmin));
                            break;
                        }

                        arrayAdapter.Add(GetText(Resource.String.Lbl_RemoveMember));
                    }

                    arrayAdapter.Add(GetText(Resource.String.Lbl_BlockMember));
                    arrayAdapter.Add(GetText(Resource.String.Lbl_ViewProfile));

                    dialogList.Title(Resource.String.Lbl_More);
                    dialogList.Items(arrayAdapter);
                    dialogList.NegativeText(GetText(Resource.String.Lbl_Close)).OnNegative(this);
                    dialogList.AlwaysCallSingleChoiceCallback();
                    dialogList.ItemsCallback(this).Build().Show();
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
示例#27
0
        //Contact seller
        private void BtnContactOnClick(object sender, EventArgs eventArgs)
        {
            try
            {
                if (AppSettings.MessengerIntegration)
                {
                    var dialog = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);

                    dialog.Title(Resource.String.Lbl_Warning);
                    dialog.Content(GetText(Resource.String.Lbl_ContentAskOPenAppMessenger));
                    dialog.PositiveText(GetText(Resource.String.Lbl_Yes)).OnPositive((materialDialog, action) =>
                    {
                        try
                        {
                            Intent intent = new Intent(this, typeof(ChatWindowActivity));
                            intent.PutExtra("UserID", ProductData.Seller.UserId);
                            intent.PutExtra("TypeChat", "User");
                            intent.PutExtra("UserItem", JsonConvert.SerializeObject(ProductData.Seller));
                            StartActivity(intent);
                        }
                        catch (Exception exception)
                        {
                            Methods.DisplayReportResultTrack(exception);
                        }
                    });
                    dialog.NegativeText(GetText(Resource.String.Lbl_No)).OnNegative(this);
                    dialog.AlwaysCallSingleChoiceCallback();
                    dialog.Build().Show();
                }
                else
                {
                    if (!Methods.CheckConnectivity())
                    {
                        Toast.MakeText(this, GetString(Resource.String.Lbl_CheckYourInternetConnection), ToastLength.Short)?.Show();
                        return;
                    }

                    var unixTimestamp = DateTimeOffset.UtcNow.ToUnixTimeSeconds();
                    var time          = unixTimestamp.ToString();

                    PollyController.RunRetryPolicyFunction(new List <Func <Task> > {
                        () => RequestsAsync.Message.Send_Message(ProductData.Seller.UserId, time, "", "", "", "", "", "", ProductData.Id)
                    });
                    Toast.MakeText(this, GetString(Resource.String.Lbl_MessageSentSuccessfully), ToastLength.Short)?.Show();
                }
            }
            catch (Exception e)
            {
                Methods.DisplayReportResultTrack(e);
            }
        }
示例#28
0
        private void MAdapterOnMessageButtonItemClick(object sender, ShowApplyJobsAdapterClickEventArgs e)
        {
            try
            {
                var item = MAdapter.GetItem(e.Position);
                if (item != null)
                {
                    switch (AppSettings.MessengerIntegration)
                    {
                    case true when AppSettings.ShowDialogAskOpenMessenger:
                    {
                        var dialog = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);

                        dialog.Title(Resource.String.Lbl_Warning).TitleColorRes(Resource.Color.primary);
                        dialog.Content(GetText(Resource.String.Lbl_ContentAskOPenAppMessenger));
                        dialog.PositiveText(GetText(Resource.String.Lbl_Yes)).OnPositive((materialDialog, action) =>
                            {
                                try
                                {
                                    Intent intent = new Intent(this, typeof(ChatWindowActivity));
                                    intent.PutExtra("UserID", item.UserData.UserId);
                                    intent.PutExtra("TypeChat", "User");
                                    intent.PutExtra("UserItem", JsonConvert.SerializeObject(item.UserData));
                                    StartActivity(intent);
                                }
                                catch (Exception exception)
                                {
                                    Methods.DisplayReportResultTrack(exception);
                                }
                            });
                        dialog.NegativeText(GetText(Resource.String.Lbl_No)).OnNegative(new WoWonderTools.MyMaterialDialog());
                        dialog.AlwaysCallSingleChoiceCallback();
                        dialog.Build().Show();
                        break;
                    }

                    case true:
                        Intent intent = new Intent(this, typeof(ChatWindowActivity));
                        intent.PutExtra("UserID", item.UserData.UserId);
                        intent.PutExtra("TypeChat", "User");
                        intent.PutExtra("UserItem", JsonConvert.SerializeObject(item.UserData));
                        StartActivity(intent);
                        break;
                    }
                }
            }
            catch (Exception exception)
            {
                Methods.DisplayReportResultTrack(exception);
            }
        }
示例#29
0
        private void MoreImageView_Click(object sender, EventArgs e)
        {
            try
            {
                var arrayAdapter = new List <string>();
                var dialogList   = new MaterialDialog.Builder(Activity).Theme(AppSettings.SetTabDarkTheme
                    ? Theme.Dark
                    : Theme.Light);

                switch (FloatingActionTag)
                {
                case "lastMessages" when AppSettings.LastChatSystem == SystemApiGetLastChat.Old:
                    arrayAdapter.Add(GetText(Resource.String.Lbl_Blocked_User_List));
                    arrayAdapter.Add(GetText(Resource.String.Lbl_Settings));
                    break;

                case "lastMessages":
                    arrayAdapter.Add(GetText(Resource.String.Lbl_CreateNewGroup));
                    arrayAdapter.Add(GetText(Resource.String.Lbl_GroupRequest));
                    arrayAdapter.Add(GetText(Resource.String.Lbl_Blocked_User_List));
                    arrayAdapter.Add(GetText(Resource.String.Lbl_Settings));
                    break;

                case "GroupChats":
                    arrayAdapter.Add(GetText(Resource.String.Lbl_CreateNewGroup));
                    arrayAdapter.Add(GetText(Resource.String.Lbl_GroupRequest));
                    arrayAdapter.Add(GetText(Resource.String.Lbl_Settings));
                    break;

                case "PageChats":
                case "Story":
                    arrayAdapter.Add(GetText(Resource.String.Lbl_Settings));
                    break;

                case "Call":
                    arrayAdapter.Add(GetText(Resource.String.Lbl_Clear_call_log));
                    arrayAdapter.Add(GetText(Resource.String.Lbl_Settings));
                    break;
                }

                dialogList.Title(GetString(Resource.String.Lbl_Menu_More));
                dialogList.Items(arrayAdapter);
                dialogList.NegativeText(GetText(Resource.String.Lbl_Close)).OnNegative(new WoWonderTools.MyMaterialDialog());
                dialogList.AlwaysCallSingleChoiceCallback();
                dialogList.ItemsCallback(this).Build().Show();
            }
            catch (Exception exception)
            {
                Methods.DisplayReportResultTrack(exception);
            }
        }
示例#30
0
 /// <summary>
 /// 显示弹窗
 /// </summary>
 /// <param name="builder"></param>
 /// <returns></returns>
 private void Show(MaterialDialog.Builder builder)
 {
     if (Looper.MainLooper == Looper.MyLooper())
     {
         builder.Show();
     }
     else
     {
         AppUtils.RunOnUI(() =>
         {
             builder.Show();
         });
     }
 }
        private void MAdapterOnItemLongClick(object sender, Holders.MesClickEventArgs e)
        {
            try
            {
                if (e.Position > -1)
                {
                    SelectedItemPositions = MAdapter.GetItem(e.Position);
                    if (SelectedItemPositions != null)
                    {
                        var arrayAdapter = new List <string>();
                        var dialogList   = new MaterialDialog.Builder(this).Theme(AppSettings.SetTabDarkTheme ? AFollestad.MaterialDialogs.Theme.Dark : AFollestad.MaterialDialogs.Theme.Light);

                        if (e.Type == Holders.TypeClick.Text)
                        {
                            arrayAdapter.Add(GetText(Resource.String.Lbl_Copy));
                        }

                        if (SelectedItemPositions.MesData.Position == "right")
                        {
                            arrayAdapter.Add(GetText(Resource.String.Lbl_MessageInfo));
                            arrayAdapter.Add(GetText(Resource.String.Lbl_DeleteMessage));
                        }

                        if (AppSettings.EnableForwardMessageSystem)
                        {
                            arrayAdapter.Add(GetText(Resource.String.Lbl_Forward));
                        }

                        if (AppSettings.EnablePinMessageSystem)
                        {
                            arrayAdapter.Add(SelectedItemPositions.MesData.IsPinned ? GetText(Resource.String.Lbl_UnPin) : GetText(Resource.String.Lbl_Pin));
                        }

                        if (AppSettings.EnableFavoriteMessageSystem)
                        {
                            arrayAdapter.Add(SelectedItemPositions.MesData.IsStarted ? GetText(Resource.String.Lbl_UnFavorite) : GetText(Resource.String.Lbl_Favorite));
                        }

                        dialogList.Items(arrayAdapter);
                        dialogList.NegativeText(GetText(Resource.String.Lbl_Close)).OnNegative(new WoWonderTools.MyMaterialDialog());
                        dialogList.AlwaysCallSingleChoiceCallback();
                        dialogList.ItemsCallback(this).Build().Show();
                    }
                }
            }
            catch (Exception exception)
            {
                Methods.DisplayReportResultTrack(exception);
            }
        }
        protected override void ShowDialog(Bundle state)
        {
            List<int> indices = new List<int>();
            foreach (String s in Values)
            {
                int index = FindIndexOfValue(s);
                if (index >= 0)
                    indices.Add(FindIndexOfValue(s));
            }
            MaterialDialog.Builder builder = new MaterialDialog.Builder(context)
                    .SetTitle(DialogTitle)
                    .SetContent(DialogMessage)
                    .SetIcon(DialogIcon)
                    .SetNegativeText(NegativeButtonText)
                    .SetPositiveText(PositiveButtonText)
                    .SetCallback(new ButtonCallback()
                    {
                        Neutral = (x) =>
                        {
                            OnClick(x, (int)DialogButtonType.Neutral);
                        },
                        Negative = (x) =>
                        {
                            OnClick(x, (int)DialogButtonType.Negative);
                        },
                        Positive = (x) =>
                        {
                            OnClick(x, (int)DialogButtonType.Positive);
                        }
                    })
                    .SetItems(GetEntries())
                    .SetItemsCallbackMultiChoice(indices.ToArray(), new ListCallbackMultiChoice
                    {
                        Selection = (dialog, which, text) =>
                        {
                            OnClick(null, (int)DialogButtonType.Positive);
                            dialog.Dismiss();
                            ISet<String> values = new HashSet<String>();
                            foreach (int i in which)
                            {
                                values.Add(GetEntryValues()[i]);
                            }
                            if (CallChangeListener((Java.Lang.Object)values))
                                Values = values;
                            return true;
                        }
                    }).SetDismissListener(this);

            View contentView = OnCreateDialogView();
            if (contentView != null)
            {
                OnBindDialogView(contentView);
                builder.SetCustomView(contentView, false);
            }
            else
            {
                builder.SetContent(DialogMessage);
            }

            try
            {
                PreferenceManager pm = PreferenceManager;
                Method method = pm.Class.GetDeclaredMethod(
                        "registerOnActivityDestroyListener",
                        Java.Lang.Class.FromType(typeof(PreferenceManager.IOnActivityDestroyListener)));
                method.Accessible = true;
                method.Invoke(pm, this);
            }
            catch (Exception) { }

            mDialog = builder.Build();
            if (state != null)
                mDialog.OnRestoreInstanceState(state);
            mDialog.Show();
        }
        protected override void ShowDialog(Bundle state)
        {
            var mBuilder = new MaterialDialog.Builder(Context)
                    .SetTitle(DialogTitle)
                    .SetIcon(DialogIcon)
                    .SetPositiveText(PositiveButtonText)
                    .SetNegativeText(NegativeButtonText)
                    .SetDismissListener(this)
                    .SetCallback(new ButtonCallback
                    {
                        Positive = (x) =>
                        {
                            OnClick(x, (int)DialogButtonType.Positive);
                            String value = mEditText.Text;
                            if (CallChangeListener(value) && Persistent)
                                Text = value;
                        },
                        Neutral = (x) =>
                        {
                            OnClick(x, (int)DialogButtonType.Neutral);
                        },
                        Negative = (x) =>
                        {
                            OnClick(x, (int)DialogButtonType.Negative);
                        }
                    })
                    .SetDismissListener(this);

            View layout = LayoutInflater.From(Context).Inflate(Resource.Layout.sino_droid_md_stub_inputpref, null);
            OnBindDialogView(layout);

            MDTintHelper.SetTint(mEditText, mColor);

            TextView message = layout.FindViewById<TextView>(Android.Resource.Id.Message);
            if (DialogMessage != null && DialogMessage.Length > 0)
            {
                message.Visibility = ViewStates.Visible;
                message.Text = DialogMessage;
            }
            else
            {
                message.Visibility = ViewStates.Gone;
            }
            mBuilder.SetCustomView(layout, false);

            try
            {
                var pm = PreferenceManager;
                Java.Lang.Reflect.Method method = pm.Class.GetDeclaredMethod(
                        "registerOnActivityDestroyListener",
                        Java.Lang.Class.FromType(typeof(PreferenceManager.IOnActivityDestroyListener)));
                method.Accessible = true;
                method.Invoke(pm, this);
            }
            catch (Exception) { }

            mDialog = mBuilder.Build();
            if (state != null)
                mDialog.OnRestoreInstanceState(state);
            RequestInputMethod(mDialog);

            mDialog.Show();
        }
        protected override void ShowDialog(Bundle state)
        {
            if (GetEntries() == null || GetEntryValues() == null)
            {
                throw new InvalidOperationException(
                        "ListPreference requires an entries array and an entryValues array.");
            }

            int preselect = FindIndexOfValue(Value);
            MaterialDialog.Builder builder = new MaterialDialog.Builder(context)
                    .SetTitle(DialogTitle)
                    .SetContent(DialogMessage)
                    .SetIcon(DialogIcon)
                    .SetDismissListener(this)
                    .SetCallback(new ButtonCallback()
                    {
                        Neutral = (x) =>
                        {
                            OnClick(x, (int)DialogButtonType.Neutral);
                        },
                        Negative = (x) =>
                        {
                            OnClick(x, (int)DialogButtonType.Negative);
                        },
                        Positive = (x) =>
                        {
                            OnClick(x, (int)DialogButtonType.Positive);
                        }
                    })
                    .SetNegativeText(NegativeButtonText)
                    .SetItems(GetEntries())
                    .SetAutoDismiss(true)
                    .SetItemsCallbackSingleChoice(preselect, new ListCallbackSingleChoice
                    {
                        Selection = (dialog, itemView, which, text) =>
                        {
                            OnClick(null, (int)DialogButtonType.Positive);
                            if (which >= 0 && GetEntryValues() != null)
                            {
                                try
                                {
                                    Field clickedIndex = this.Class.GetDeclaredField("mClickedDialogEntryIndex");
                                    clickedIndex.Accessible = true;
                                    clickedIndex.Set(this, which);
                                }
                                catch (Exception e)
                                {
                                    throw e;
                                }
                            }
                            return true;
                        }
                    });

            View contentView = OnCreateDialogView();
            if (contentView != null)
            {
                OnBindDialogView(contentView);
                builder.SetCustomView(contentView, false);
            }
            else
            {
                builder.SetContent(DialogMessage);
            }

            try
            {
                PreferenceManager pm = PreferenceManager;
                Method method = pm.Class.GetDeclaredMethod(
                        "registerOnActivityDestroyListener",
                        Java.Lang.Class.FromType(typeof(PreferenceManager.IOnActivityDestroyListener)));
                method.Accessible = true;
                method.Invoke(pm, this);
            }
            catch (Exception) { }

            mDialog = builder.Build();
            if (state != null)
                mDialog.OnRestoreInstanceState(state);
            mDialog.Show();
        }