mirror of
https://github.com/iSoron/uhabits.git
synced 2025-12-06 09:08:52 -06:00
EditHabitActivity: Dismiss all fragments on device rotation
This commit is contained in:
@@ -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_IN_KB_MODE = "in_kb_mode";
|
||||||
private static final String KEY_TYPED_TIMES = "typed_times";
|
private static final String KEY_TYPED_TIMES = "typed_times";
|
||||||
private static final String KEY_DARK_THEME = "dark_theme";
|
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 HOUR_INDEX = 0;
|
||||||
public static final int MINUTE_INDEX = 1;
|
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);
|
mIs24HourMode = savedInstanceState.getBoolean(KEY_IS_24_HOUR_VIEW);
|
||||||
mInKbMode = savedInstanceState.getBoolean(KEY_IN_KB_MODE);
|
mInKbMode = savedInstanceState.getBoolean(KEY_IN_KB_MODE);
|
||||||
mThemeDark = savedInstanceState.getBoolean(KEY_DARK_THEME);
|
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.putIntegerArrayList(KEY_TYPED_TIMES, mTypedTimes);
|
||||||
}
|
}
|
||||||
outState.putBoolean(KEY_DARK_THEME, mThemeDark);
|
outState.putBoolean(KEY_DARK_THEME, mThemeDark);
|
||||||
|
outState.putInt(KEY_SELECTED_COLOR, mSelectedColor);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -37,6 +37,8 @@ class FrequencyPickerDialog(var freqNumerator: Int,
|
|||||||
lateinit var contentView: View
|
lateinit var contentView: View
|
||||||
var onFrequencyPicked: (num: Int, den: Int) -> Unit = {_,_ -> }
|
var onFrequencyPicked: (num: Int, den: Int) -> Unit = {_,_ -> }
|
||||||
|
|
||||||
|
constructor() : this(1, 1)
|
||||||
|
|
||||||
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
|
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
|
||||||
val inflater = LayoutInflater.from(activity!!)
|
val inflater = LayoutInflater.from(activity!!)
|
||||||
contentView = inflater.inflate(R.layout.frequency_picker_dialog, null)
|
contentView = inflater.inflate(R.layout.frequency_picker_dialog, null)
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ import android.os.*
|
|||||||
import android.text.format.*
|
import android.text.format.*
|
||||||
import android.view.*
|
import android.view.*
|
||||||
import androidx.appcompat.app.*
|
import androidx.appcompat.app.*
|
||||||
|
import androidx.fragment.app.*
|
||||||
import com.android.datetimepicker.time.*
|
import com.android.datetimepicker.time.*
|
||||||
import kotlinx.android.synthetic.main.activity_edit_habit.*
|
import kotlinx.android.synthetic.main.activity_edit_habit.*
|
||||||
import org.isoron.androidbase.utils.*
|
import org.isoron.androidbase.utils.*
|
||||||
@@ -151,6 +152,10 @@ class EditHabitActivity : AppCompatActivity() {
|
|||||||
binding.buttonSave.setOnClickListener {
|
binding.buttonSave.setOnClickListener {
|
||||||
if(validate()) save()
|
if(validate()) save()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (fragment in supportFragmentManager.fragments) {
|
||||||
|
(fragment as DialogFragment).dismiss()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun save() {
|
private fun save() {
|
||||||
|
|||||||
Reference in New Issue
Block a user