From dce0739d154206de3655fa1903c1134317bc14d4 Mon Sep 17 00:00:00 2001 From: Mariotaku Lee Date: Wed, 29 Jun 2016 09:07:10 +0800 Subject: [PATCH] removed MaterialDialog usage --- .../twidere/activity/ComposeActivity.java | 8 +++-- ...medListPreferenceDialogFragmentCompat.java | 5 ++- .../ThemedPreferenceDialogFragmentCompat.java | 10 ++---- .../preference/ColorPickerPreference.java | 35 +++++-------------- .../KeyboardShortcutPreference.java | 3 +- .../preference/MultiSelectListPreference.java | 5 ++- .../NotificationTypePreference.java | 5 ++- .../preference/ThemeBackgroundPreference.java | 9 ++--- 8 files changed, 25 insertions(+), 55 deletions(-) diff --git a/twidere/src/main/java/org/mariotaku/twidere/activity/ComposeActivity.java b/twidere/src/main/java/org/mariotaku/twidere/activity/ComposeActivity.java index 23951612f..8e692b347 100644 --- a/twidere/src/main/java/org/mariotaku/twidere/activity/ComposeActivity.java +++ b/twidere/src/main/java/org/mariotaku/twidere/activity/ComposeActivity.java @@ -1189,15 +1189,17 @@ public class ComposeActivity extends BaseActivity implements OnMenuItemClickList if (!status.account_key.equals(status.user_key)) { selectionStart = mEditText.length(); } - if (status.is_retweet) { + if (status.is_retweet && !TextUtils.isEmpty(status.retweeted_by_user_screen_name)) { mentions.add(status.retweeted_by_user_screen_name); } - if (status.is_quote) { + if (status.is_quote && !TextUtils.isEmpty(status.quoted_user_screen_name)) { mentions.add(status.quoted_user_screen_name); } if (!ArrayUtils.isEmpty(status.mentions)) { for (ParcelableUserMention mention : status.mentions) { - if (mention.key.equals(status.account_key)) continue; + if (mention.key.equals(status.account_key) || TextUtils.isEmpty(mention.screen_name)) { + continue; + } mentions.add(mention.screen_name); } mentions.addAll(mExtractor.extractMentionedScreennames(status.quoted_text_plain)); diff --git a/twidere/src/main/java/org/mariotaku/twidere/fragment/ThemedListPreferenceDialogFragmentCompat.java b/twidere/src/main/java/org/mariotaku/twidere/fragment/ThemedListPreferenceDialogFragmentCompat.java index 53c21dffa..80b0907f1 100644 --- a/twidere/src/main/java/org/mariotaku/twidere/fragment/ThemedListPreferenceDialogFragmentCompat.java +++ b/twidere/src/main/java/org/mariotaku/twidere/fragment/ThemedListPreferenceDialogFragmentCompat.java @@ -17,10 +17,9 @@ package org.mariotaku.twidere.fragment; import android.content.DialogInterface; import android.os.Bundle; +import android.support.v7.app.AlertDialog; import android.support.v7.preference.ListPreference; -import com.afollestad.materialdialogs.AlertDialogWrapper; - import org.mariotaku.twidere.util.TwidereArrayUtils; public class ThemedListPreferenceDialogFragmentCompat extends ThemedPreferenceDialogFragmentCompat { @@ -40,7 +39,7 @@ public class ThemedListPreferenceDialogFragmentCompat extends ThemedPreferenceDi } @Override - protected void onPrepareDialogBuilder(AlertDialogWrapper.Builder builder) { + protected void onPrepareDialogBuilder(AlertDialog.Builder builder) { super.onPrepareDialogBuilder(builder); final ListPreference preference = getListPreference(); final String[] entries = TwidereArrayUtils.toStringArray(preference.getEntries()); diff --git a/twidere/src/main/java/org/mariotaku/twidere/fragment/ThemedPreferenceDialogFragmentCompat.java b/twidere/src/main/java/org/mariotaku/twidere/fragment/ThemedPreferenceDialogFragmentCompat.java index e41634b36..a679df087 100644 --- a/twidere/src/main/java/org/mariotaku/twidere/fragment/ThemedPreferenceDialogFragmentCompat.java +++ b/twidere/src/main/java/org/mariotaku/twidere/fragment/ThemedPreferenceDialogFragmentCompat.java @@ -11,8 +11,6 @@ import android.support.v7.preference.PreferenceDialogFragmentCompat; import android.view.View; import android.view.Window; -import com.afollestad.materialdialogs.AlertDialogWrapper; - /** * Created by mariotaku on 16/3/15. */ @@ -24,7 +22,7 @@ public abstract class ThemedPreferenceDialogFragmentCompat extends PreferenceDia final Context context = getContext(); final DialogPreference preference = getPreference(); onClick(null, DialogInterface.BUTTON_NEGATIVE); - final AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(context) + final AlertDialog.Builder builder = new AlertDialog.Builder(context) .setTitle(preference.getDialogTitle()) .setIcon(preference.getDialogIcon()) .setPositiveButton(preference.getPositiveButtonText(), this) @@ -46,11 +44,7 @@ public abstract class ThemedPreferenceDialogFragmentCompat extends PreferenceDia } @Override - protected final void onPrepareDialogBuilder(AlertDialog.Builder builder) { - - } - - protected void onPrepareDialogBuilder(AlertDialogWrapper.Builder builder) { + protected void onPrepareDialogBuilder(AlertDialog.Builder builder) { } diff --git a/twidere/src/main/java/org/mariotaku/twidere/preference/ColorPickerPreference.java b/twidere/src/main/java/org/mariotaku/twidere/preference/ColorPickerPreference.java index bf7005042..6ed173021 100644 --- a/twidere/src/main/java/org/mariotaku/twidere/preference/ColorPickerPreference.java +++ b/twidere/src/main/java/org/mariotaku/twidere/preference/ColorPickerPreference.java @@ -27,6 +27,7 @@ import android.graphics.Color; import android.os.Bundle; import android.support.annotation.NonNull; import android.support.v4.content.ContextCompat; +import android.support.v7.app.AlertDialog; import android.support.v7.preference.DialogPreference; import android.support.v7.preference.PreferenceDialogFragmentCompat; import android.support.v7.preference.PreferenceFragmentCompat; @@ -36,9 +37,6 @@ import android.util.Log; import android.view.View; import android.widget.ImageView; -import com.afollestad.materialdialogs.DialogAction; -import com.afollestad.materialdialogs.MaterialDialog; - import org.mariotaku.twidere.R; import org.mariotaku.twidere.preference.iface.IDialogPreference; import org.mariotaku.twidere.util.TwidereColorUtils; @@ -109,7 +107,7 @@ public class ColorPickerPreference extends DialogPreference implements } public static final class ColorPickerPreferenceDialogFragment extends PreferenceDialogFragmentCompat - implements DialogInterface.OnShowListener, MaterialDialog.SingleButtonCallback { + implements DialogInterface.OnShowListener, DialogInterface.OnClickListener { private ColorPickerDialog.Controller mController; @@ -127,15 +125,12 @@ public class ColorPickerPreference extends DialogPreference implements public Dialog onCreateDialog(Bundle savedInstanceState) { final ColorPickerPreference preference = (ColorPickerPreference) getPreference(); final Context context = getContext(); - final MaterialDialog.Builder builder = new MaterialDialog.Builder(context); - builder.title(preference.getDialogTitle()); - builder.customView(R.layout.cp__dialog_color_picker, false); - - builder.positiveText(android.R.string.ok); - builder.negativeText(android.R.string.cancel); - builder.onPositive(this); - builder.onNegative(this); - Dialog dialog = builder.build(); + final AlertDialog.Builder builder = new AlertDialog.Builder(context); + builder.setTitle(preference.getDialogTitle()); + builder.setView(R.layout.cp__dialog_color_picker); + builder.setPositiveButton(android.R.string.ok, this); + builder.setNegativeButton(android.R.string.cancel, this); + Dialog dialog = builder.create(); dialog.setOnShowListener(this); return dialog; } @@ -166,20 +161,6 @@ public class ColorPickerPreference extends DialogPreference implements mController.setInitialColor(preference.getValue()); } - @Override - public void onClick(@NonNull MaterialDialog materialDialog, @NonNull DialogAction dialogAction) { - switch (dialogAction) { - case POSITIVE: - onClick(materialDialog, DialogInterface.BUTTON_POSITIVE); - break; - case NEUTRAL: - onClick(materialDialog, DialogInterface.BUTTON_NEUTRAL); - break; - case NEGATIVE: - onClick(materialDialog, DialogInterface.BUTTON_NEGATIVE); - break; - } - } } } diff --git a/twidere/src/main/java/org/mariotaku/twidere/preference/KeyboardShortcutPreference.java b/twidere/src/main/java/org/mariotaku/twidere/preference/KeyboardShortcutPreference.java index 0d52323f4..2783f5954 100644 --- a/twidere/src/main/java/org/mariotaku/twidere/preference/KeyboardShortcutPreference.java +++ b/twidere/src/main/java/org/mariotaku/twidere/preference/KeyboardShortcutPreference.java @@ -15,7 +15,6 @@ import android.view.KeyEvent; import android.view.View; import android.widget.TextView; -import com.afollestad.materialdialogs.AlertDialogWrapper; import org.mariotaku.twidere.R; import org.mariotaku.twidere.fragment.ThemedPreferenceDialogFragmentCompat; @@ -140,7 +139,7 @@ public class KeyboardShortcutPreference extends DialogPreference implements IDia } @Override - protected void onPrepareDialogBuilder(AlertDialogWrapper.Builder builder) { + protected void onPrepareDialogBuilder(AlertDialog.Builder builder) { builder.setPositiveButton(android.R.string.ok, this); builder.setNegativeButton(android.R.string.cancel, this); builder.setNeutralButton(R.string.clear, this); diff --git a/twidere/src/main/java/org/mariotaku/twidere/preference/MultiSelectListPreference.java b/twidere/src/main/java/org/mariotaku/twidere/preference/MultiSelectListPreference.java index 75563543b..099704a23 100644 --- a/twidere/src/main/java/org/mariotaku/twidere/preference/MultiSelectListPreference.java +++ b/twidere/src/main/java/org/mariotaku/twidere/preference/MultiSelectListPreference.java @@ -27,13 +27,12 @@ import android.content.DialogInterface.OnMultiChoiceClickListener; import android.content.SharedPreferences; import android.os.Bundle; import android.support.annotation.NonNull; +import android.support.v7.app.AlertDialog; import android.support.v7.preference.DialogPreference; import android.support.v7.preference.PreferenceDialogFragmentCompat; import android.support.v7.preference.PreferenceFragmentCompat; import android.util.AttributeSet; -import com.afollestad.materialdialogs.AlertDialogWrapper; - import org.mariotaku.twidere.R; import org.mariotaku.twidere.preference.iface.IDialogPreference; @@ -91,7 +90,7 @@ abstract class MultiSelectListPreference extends DialogPreference implements IDi throw new IllegalArgumentException(); mValues = new boolean[length]; mPreferences = preference.getDefaultSharedPreferences(); - final AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(getContext()); + final AlertDialog.Builder builder = new AlertDialog.Builder(getContext()); for (int i = 0; i < length; i++) { mValues[i] = mPreferences.getBoolean(mKeys[i], mDefaultValues[i]); } diff --git a/twidere/src/main/java/org/mariotaku/twidere/preference/NotificationTypePreference.java b/twidere/src/main/java/org/mariotaku/twidere/preference/NotificationTypePreference.java index 2b69229c5..feb0e81ce 100644 --- a/twidere/src/main/java/org/mariotaku/twidere/preference/NotificationTypePreference.java +++ b/twidere/src/main/java/org/mariotaku/twidere/preference/NotificationTypePreference.java @@ -23,13 +23,12 @@ import android.content.Context; import android.content.DialogInterface; import android.content.res.TypedArray; import android.os.Bundle; +import android.support.v7.app.AlertDialog; import android.support.v7.preference.DialogPreference; import android.support.v7.preference.PreferenceDialogFragmentCompat; import android.support.v7.preference.PreferenceFragmentCompat; import android.util.AttributeSet; -import com.afollestad.materialdialogs.AlertDialogWrapper; - import org.mariotaku.twidere.Constants; import org.mariotaku.twidere.R; import org.mariotaku.twidere.fragment.ThemedPreferenceDialogFragmentCompat; @@ -111,7 +110,7 @@ public class NotificationTypePreference extends DialogPreference implements private boolean[] mCheckedItems; @Override - protected void onPrepareDialogBuilder(AlertDialogWrapper.Builder builder) { + protected void onPrepareDialogBuilder(AlertDialog.Builder builder) { NotificationTypePreference preference = (NotificationTypePreference) getPreference(); final int value = preference.getPersistedInt(preference.getDefaultValue()); mCheckedItems = preference.getCheckedItems(value); diff --git a/twidere/src/main/java/org/mariotaku/twidere/preference/ThemeBackgroundPreference.java b/twidere/src/main/java/org/mariotaku/twidere/preference/ThemeBackgroundPreference.java index 1abe6679d..1c78117d9 100644 --- a/twidere/src/main/java/org/mariotaku/twidere/preference/ThemeBackgroundPreference.java +++ b/twidere/src/main/java/org/mariotaku/twidere/preference/ThemeBackgroundPreference.java @@ -8,6 +8,7 @@ import android.content.SharedPreferences; import android.content.res.Resources; import android.os.Bundle; import android.support.annotation.NonNull; +import android.support.v7.app.AlertDialog; import android.support.v7.preference.DialogPreference; import android.support.v7.preference.PreferenceDialogFragmentCompat; import android.support.v7.preference.PreferenceFragmentCompat; @@ -20,9 +21,6 @@ import android.widget.AdapterView; import android.widget.ListView; import android.widget.SeekBar; -import com.afollestad.materialdialogs.AlertDialogWrapper; -import com.afollestad.materialdialogs.MaterialDialog; - import org.mariotaku.twidere.Constants; import org.mariotaku.twidere.R; import org.mariotaku.twidere.preference.iface.IDialogPreference; @@ -156,7 +154,7 @@ public class ThemeBackgroundPreference extends DialogPreference implements Const @NonNull @Override public Dialog onCreateDialog(Bundle savedInstanceState) { - AlertDialogWrapper.Builder builder = new AlertDialogWrapper.Builder(getContext()); + AlertDialog.Builder builder = new AlertDialog.Builder(getContext()); final ThemeBackgroundPreference preference = (ThemeBackgroundPreference) getPreference(); final SharedPreferences preferences = preference.getSharedPreferences(); preference.setValue(preference.getPersistedString(null)); @@ -175,7 +173,7 @@ public class ThemeBackgroundPreference extends DialogPreference implements Const @Override public void onShow(DialogInterface dialog) { if (preferences != null) { - final MaterialDialog materialDialog = (MaterialDialog) dialog; + final AlertDialog materialDialog = (AlertDialog) dialog; final LayoutInflater inflater = materialDialog.getLayoutInflater(); final ListView listView = materialDialog.getListView(); assert listView != null; @@ -190,7 +188,6 @@ public class ThemeBackgroundPreference extends DialogPreference implements Const listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { - materialDialog.onItemClick(parent, view, position, id); preference.setSelectedOption(position); updateAlphaVisibility(); }