Fix cropped buttons of update interval/time of day dialog
This commit is contained in:
parent
98a0b46bed
commit
e323f067f3
@ -25,6 +25,8 @@ dependencies {
|
|||||||
compile 'de.greenrobot:eventbus:2.4.0'
|
compile 'de.greenrobot:eventbus:2.4.0'
|
||||||
compile 'io.reactivex:rxandroid:1.0.1'
|
compile 'io.reactivex:rxandroid:1.0.1'
|
||||||
compile 'com.joanzapata.iconify:android-iconify-fontawesome:2.0.3'
|
compile 'com.joanzapata.iconify:android-iconify-fontawesome:2.0.3'
|
||||||
|
compile 'com.afollestad:material-dialogs:0.7.8.0'
|
||||||
|
|
||||||
|
|
||||||
compile project(':core')
|
compile project(':core')
|
||||||
compile project(':library:drag-sort-listview')
|
compile project(':library:drag-sort-listview')
|
||||||
|
@ -20,9 +20,10 @@ import android.text.TextWatcher;
|
|||||||
import android.text.format.DateFormat;
|
import android.text.format.DateFormat;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.widget.EditText;
|
import android.widget.EditText;
|
||||||
import android.widget.TimePicker;
|
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
|
import com.afollestad.materialdialogs.MaterialDialog;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
@ -586,17 +587,15 @@ public class PreferenceController {
|
|||||||
|
|
||||||
AlertDialog.Builder builder = new AlertDialog.Builder(context);
|
AlertDialog.Builder builder = new AlertDialog.Builder(context);
|
||||||
builder.setTitle(R.string.drawer_preferences);
|
builder.setTitle(R.string.drawer_preferences);
|
||||||
builder.setMultiChoiceItems(navTitles, checked, new DialogInterface.OnMultiChoiceClickListener() {
|
builder.setMultiChoiceItems(navTitles, checked, (dialog, which, isChecked) -> {
|
||||||
@Override
|
if (isChecked) {
|
||||||
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
|
hiddenDrawerItems.remove(NAV_DRAWER_TAGS[which]);
|
||||||
if (isChecked) {
|
} else {
|
||||||
hiddenDrawerItems.remove(NAV_DRAWER_TAGS[which]);
|
hiddenDrawerItems.add(NAV_DRAWER_TAGS[which]);
|
||||||
} else {
|
|
||||||
hiddenDrawerItems.add(NAV_DRAWER_TAGS[which]);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
builder.setPositiveButton(R.string.confirm_label, new DialogInterface.OnClickListener() {
|
builder.setPositiveButton(R.string.confirm_label, new DialogInterface
|
||||||
|
.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(DialogInterface dialog, int which) {
|
public void onClick(DialogInterface dialog, int which) {
|
||||||
UserPreferences.setHiddenDrawerItems(context, hiddenDrawerItems);
|
UserPreferences.setHiddenDrawerItems(context, hiddenDrawerItems);
|
||||||
@ -609,69 +608,64 @@ public class PreferenceController {
|
|||||||
private void showUpdateIntervalTimePreferencesDialog() {
|
private void showUpdateIntervalTimePreferencesDialog() {
|
||||||
final Context context = ui.getActivity();
|
final Context context = ui.getActivity();
|
||||||
|
|
||||||
AlertDialog.Builder builder = new AlertDialog.Builder(context);
|
MaterialDialog.Builder builder = new MaterialDialog.Builder(context);
|
||||||
builder.setTitle(R.string.pref_autoUpdateIntervallOrTime_title);
|
builder.title(R.string.pref_autoUpdateIntervallOrTime_title);
|
||||||
builder.setMessage(R.string.pref_autoUpdateIntervallOrTime_message);
|
builder.content(R.string.pref_autoUpdateIntervallOrTime_message);
|
||||||
builder.setNegativeButton(R.string.pref_autoUpdateIntervallOrTime_Disable, new DialogInterface.OnClickListener() {
|
builder.positiveText(R.string.pref_autoUpdateIntervallOrTime_Interval);
|
||||||
|
builder.negativeText(R.string.pref_autoUpdateIntervallOrTime_TimeOfDay);
|
||||||
|
builder.neutralText(R.string.pref_autoUpdateIntervallOrTime_Disable);
|
||||||
|
builder.callback(new MaterialDialog.ButtonCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(DialogInterface dialog, int which) {
|
public void onPositive(MaterialDialog dialog) {
|
||||||
UserPreferences.setUpdateInterval(0);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
builder.setNeutralButton(R.string.pref_autoUpdateIntervallOrTime_Interval, new DialogInterface.OnClickListener() {
|
|
||||||
@Override
|
|
||||||
public void onClick(DialogInterface dialog, int which) {
|
|
||||||
AlertDialog.Builder builder = new AlertDialog.Builder(context);
|
AlertDialog.Builder builder = new AlertDialog.Builder(context);
|
||||||
builder.setTitle(context.getString(R.string.pref_autoUpdateIntervallOrTime_Interval));
|
builder.setTitle(context.getString(R.string.pref_autoUpdateIntervallOrTime_Interval));
|
||||||
final String[] values = context.getResources().getStringArray(R.array.update_intervall_values);
|
final String[] values = context.getResources().getStringArray(R.array.update_intervall_values);
|
||||||
final String[] entries = getUpdateIntervalEntries(values);
|
final String[] entries = getUpdateIntervalEntries(values);
|
||||||
builder.setSingleChoiceItems(entries, -1, new DialogInterface.OnClickListener() {
|
builder.setSingleChoiceItems(entries, -1, (dialog1, which) -> {
|
||||||
@Override
|
int hours = Integer.valueOf(values[which]);
|
||||||
public void onClick(DialogInterface dialog, int which) {
|
UserPreferences.setUpdateInterval(hours);
|
||||||
int hours = Integer.valueOf(values[which]);
|
dialog1.dismiss();
|
||||||
UserPreferences.setUpdateInterval(hours);
|
|
||||||
dialog.dismiss();
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
builder.setNegativeButton(context.getString(R.string.cancel_label), null);
|
builder.setNegativeButton(context.getString(R.string.cancel_label), null);
|
||||||
builder.show();
|
builder.show();
|
||||||
}
|
}
|
||||||
});
|
|
||||||
builder.setPositiveButton(R.string.pref_autoUpdateIntervallOrTime_TimeOfDay, new DialogInterface.OnClickListener() {
|
@Override
|
||||||
@Override
|
public void onNegative(MaterialDialog dialog) {
|
||||||
public void onClick(DialogInterface dialog, int which) {
|
int hourOfDay = 7, minute = 0;
|
||||||
int hourOfDay = 7, minute = 0;
|
int[] updateTime = UserPreferences.getUpdateTimeOfDay();
|
||||||
int[] updateTime = UserPreferences.getUpdateTimeOfDay();
|
if (updateTime.length == 2) {
|
||||||
if (updateTime.length == 2) {
|
hourOfDay = updateTime[0];
|
||||||
hourOfDay = updateTime[0];
|
minute = updateTime[1];
|
||||||
minute = updateTime[1];
|
}
|
||||||
}
|
TimePickerDialog timePickerDialog = new TimePickerDialog(context,
|
||||||
TimePickerDialog timePickerDialog = new TimePickerDialog(context, new TimePickerDialog.OnTimeSetListener() {
|
(view, selectedHourOfDay, selectedMinute) -> {
|
||||||
@Override
|
if (view.getTag() == null) { // onTimeSet() may get called twice!
|
||||||
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
|
view.setTag("TAGGED");
|
||||||
if (view.getTag() == null) { // onTimeSet() may get called twice!
|
UserPreferences.setUpdateTimeOfDay(selectedHourOfDay, selectedMinute);
|
||||||
view.setTag("TAGGED");
|
|
||||||
UserPreferences.setUpdateTimeOfDay(hourOfDay, minute);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}, hourOfDay, minute, DateFormat.is24HourFormat(context));
|
}, hourOfDay, minute, DateFormat.is24HourFormat(context));
|
||||||
timePickerDialog.setTitle(context.getString(R.string.pref_autoUpdateIntervallOrTime_TimeOfDay));
|
timePickerDialog.setTitle(context.getString(R.string.pref_autoUpdateIntervallOrTime_TimeOfDay));
|
||||||
timePickerDialog.show();
|
timePickerDialog.show();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
);
|
@Override
|
||||||
|
public void onNeutral(MaterialDialog dialog) {
|
||||||
|
UserPreferences.setUpdateInterval(0);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
builder.forceStacking(true);
|
||||||
builder.show();
|
builder.show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static interface PreferenceUI {
|
public interface PreferenceUI {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Finds a preference based on its key.
|
* Finds a preference based on its key.
|
||||||
*/
|
*/
|
||||||
public Preference findPreference(CharSequence key);
|
Preference findPreference(CharSequence key);
|
||||||
|
|
||||||
public Activity getActivity();
|
Activity getActivity();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user