Skip to content

Commit

Permalink
fix: instant note editor tap mode inconsistency
Browse files Browse the repository at this point in the history
  • Loading branch information
criticalAY authored and BrayanDSO committed Feb 8, 2025
1 parent 7f20a0e commit fb58917
Showing 1 changed file with 20 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,8 @@ class InstantNoteEditorActivity :

private var dialogView: View? = null

private var editMode = EditMode.ADVANCED
private val editMode: EditMode
get() = viewModel.editorMode.value

private lateinit var editModeButton: MaterialButton

Expand Down Expand Up @@ -217,6 +218,8 @@ class InstantNoteEditorActivity :
editFieldsLayout?.addView(editField)
}

setLayoutVisibility()

instantAlertDialog =
AlertDialog.Builder(this).show {
setView(dialogView)
Expand Down Expand Up @@ -304,10 +307,9 @@ class InstantNoteEditorActivity :
editModeButton.setOnClickListener {
viewModel.setClozeFieldText(textBox.text.toString())
when (editMode) {
EditMode.SINGLE_TAP -> {
EditMode.ADVANCED -> {
hideKeyboard()
textBox.setText(clozeFieldText)
editMode = EditMode.ADVANCED
viewModel.setEditorMode(EditMode.SINGLE_TAP)
editModeButton.setIconResource(R.drawable.ic_mode_edit_white)

Expand All @@ -318,10 +320,9 @@ class InstantNoteEditorActivity :
viewModel.setClozeFieldText(textBox.text.toString())
}

EditMode.ADVANCED -> {
viewModel.setEditorMode(EditMode.ADVANCED)
EditMode.SINGLE_TAP -> {
editModeButton.setIconResource(R.drawable.ic_touch)
editMode = EditMode.SINGLE_TAP
viewModel.setEditorMode(EditMode.ADVANCED)

singleTapLayout.visibility = View.GONE
editFieldsLayout?.visibility = View.VISIBLE
Expand All @@ -330,6 +331,19 @@ class InstantNoteEditorActivity :
}
}

private fun setLayoutVisibility() {
when (editMode) {
EditMode.SINGLE_TAP -> {
singleTapLayout.visibility = View.VISIBLE
editFieldsLayout?.visibility = View.GONE
}
EditMode.ADVANCED -> {
singleTapLayout.visibility = View.GONE
editFieldsLayout?.visibility = View.VISIBLE
}
}
}

private fun hideKeyboard() {
val inputMethodManager =
this.getSystemService(Activity.INPUT_METHOD_SERVICE) as InputMethodManager
Expand Down

0 comments on commit fb58917

Please sign in to comment.