diff --git a/android/android-pickers/src/main/java/com/android/datetimepicker/time/TimePickerDialog.java b/android/android-pickers/src/main/java/com/android/datetimepicker/time/TimePickerDialog.java index 972241231..0a8411bc5 100644 --- a/android/android-pickers/src/main/java/com/android/datetimepicker/time/TimePickerDialog.java +++ b/android/android-pickers/src/main/java/com/android/datetimepicker/time/TimePickerDialog.java @@ -52,6 +52,7 @@ public class TimePickerDialog extends AppCompatDialogFragment implements OnValue private static final String KEY_IN_KB_MODE = "in_kb_mode"; private static final String KEY_TYPED_TIMES = "typed_times"; private static final String KEY_DARK_THEME = "dark_theme"; + private static final String KEY_SELECTED_COLOR = "selected_color"; public static final int HOUR_INDEX = 0; public static final int MINUTE_INDEX = 1; @@ -202,6 +203,7 @@ public class TimePickerDialog extends AppCompatDialogFragment implements OnValue mIs24HourMode = savedInstanceState.getBoolean(KEY_IS_24_HOUR_VIEW); mInKbMode = savedInstanceState.getBoolean(KEY_IN_KB_MODE); mThemeDark = savedInstanceState.getBoolean(KEY_DARK_THEME); + mSelectedColor = savedInstanceState.getInt(KEY_SELECTED_COLOR); } } @@ -436,6 +438,7 @@ public class TimePickerDialog extends AppCompatDialogFragment implements OnValue outState.putIntegerArrayList(KEY_TYPED_TIMES, mTypedTimes); } outState.putBoolean(KEY_DARK_THEME, mThemeDark); + outState.putInt(KEY_SELECTED_COLOR, mSelectedColor); } } diff --git a/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/dialogs/FrequencyPickerDialog.kt b/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/dialogs/FrequencyPickerDialog.kt index eb0deb83a..de40e86bd 100644 --- a/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/dialogs/FrequencyPickerDialog.kt +++ b/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/dialogs/FrequencyPickerDialog.kt @@ -37,6 +37,8 @@ class FrequencyPickerDialog(var freqNumerator: Int, lateinit var contentView: View var onFrequencyPicked: (num: Int, den: Int) -> Unit = {_,_ -> } + constructor() : this(1, 1) + override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { val inflater = LayoutInflater.from(activity!!) contentView = inflater.inflate(R.layout.frequency_picker_dialog, null) diff --git a/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/edit/EditHabitActivity.kt b/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/edit/EditHabitActivity.kt index 3e6f4f1ff..0a68e8324 100644 --- a/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/edit/EditHabitActivity.kt +++ b/android/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/edit/EditHabitActivity.kt @@ -25,6 +25,7 @@ import android.os.* import android.text.format.* import android.view.* import androidx.appcompat.app.* +import androidx.fragment.app.* import com.android.datetimepicker.time.* import kotlinx.android.synthetic.main.activity_edit_habit.* import org.isoron.androidbase.utils.* @@ -151,6 +152,10 @@ class EditHabitActivity : AppCompatActivity() { binding.buttonSave.setOnClickListener { if(validate()) save() } + + for (fragment in supportFragmentManager.fragments) { + (fragment as DialogFragment).dismiss() + } } private fun save() {