|
@@ -1,21 +1,18 @@
|
|
|
package com.sduduzog.slimlauncher.ui.main
|
|
package com.sduduzog.slimlauncher.ui.main
|
|
|
|
|
|
|
|
|
|
|
|
|
-import android.content.Context
|
|
|
|
|
import android.os.Bundle
|
|
import android.os.Bundle
|
|
|
import android.view.LayoutInflater
|
|
import android.view.LayoutInflater
|
|
|
import android.view.View
|
|
import android.view.View
|
|
|
import android.view.ViewGroup
|
|
import android.view.ViewGroup
|
|
|
-import android.view.inputmethod.InputMethodManager
|
|
|
|
|
import androidx.lifecycle.ViewModelProviders
|
|
import androidx.lifecycle.ViewModelProviders
|
|
|
|
|
+import androidx.navigation.Navigation
|
|
|
import com.sduduzog.slimlauncher.R
|
|
import com.sduduzog.slimlauncher.R
|
|
|
import com.sduduzog.slimlauncher.data.MainViewModel
|
|
import com.sduduzog.slimlauncher.data.MainViewModel
|
|
|
import com.sduduzog.slimlauncher.data.model.Note
|
|
import com.sduduzog.slimlauncher.data.model.Note
|
|
|
import com.sduduzog.slimlauncher.utils.BaseFragment
|
|
import com.sduduzog.slimlauncher.utils.BaseFragment
|
|
|
-import com.sduduzog.slimlauncher.utils.DoubleClickListener
|
|
|
|
|
import kotlinx.android.synthetic.main.note_fragment.*
|
|
import kotlinx.android.synthetic.main.note_fragment.*
|
|
|
import java.security.MessageDigest
|
|
import java.security.MessageDigest
|
|
|
-import java.util.*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class NoteFragment : BaseFragment() {
|
|
class NoteFragment : BaseFragment() {
|
|
@@ -49,55 +46,60 @@ class NoteFragment : BaseFragment() {
|
|
|
|
|
|
|
|
override fun onActivityCreated(savedInstanceState: Bundle?) {
|
|
override fun onActivityCreated(savedInstanceState: Bundle?) {
|
|
|
super.onActivityCreated(savedInstanceState)
|
|
super.onActivityCreated(savedInstanceState)
|
|
|
- if (note.edited == -1L) {
|
|
|
|
|
- editBody()
|
|
|
|
|
- } else {
|
|
|
|
|
- bodyEditText.visibility = View.GONE
|
|
|
|
|
- textBody.visibility = View.VISIBLE
|
|
|
|
|
- textBody.text = note.body
|
|
|
|
|
- titleEditText.setText(note.title.orEmpty())
|
|
|
|
|
- bodyEditText.setText(note.body)
|
|
|
|
|
- titleEditText.isEnabled = false
|
|
|
|
|
- }
|
|
|
|
|
- titleEditText.setOnEditorActionListener { _, _, _ ->
|
|
|
|
|
- editBody()
|
|
|
|
|
- true
|
|
|
|
|
- }
|
|
|
|
|
- textBody.setOnClickListener(object : DoubleClickListener() {
|
|
|
|
|
- override fun onDoubleClick(v: View) {
|
|
|
|
|
- titleEditText.isEnabled = true
|
|
|
|
|
- editBody()
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- override fun onSingleClick(v: View) {
|
|
|
|
|
- // Do nothing
|
|
|
|
|
- }
|
|
|
|
|
- })
|
|
|
|
|
|
|
+ note_fragment_edit.setOnClickListener(Navigation.createNavigateOnClickListener(R.id.action_noteFragment_to_editNoteFragment))
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private fun editBody() {
|
|
|
|
|
- textBody.visibility = View.GONE
|
|
|
|
|
- bodyEditText.visibility = View.VISIBLE
|
|
|
|
|
- if (bodyEditText.requestFocus()) {
|
|
|
|
|
- val imm = activity!!.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
|
|
|
|
|
- imm.showSoftInput(bodyEditText, InputMethodManager.SHOW_IMPLICIT)
|
|
|
|
|
- bodyEditText.setSelection(note.body.length)
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
|
|
+// override fun onActivityCreated(savedInstanceState: Bundle?) {
|
|
|
|
|
+// super.onActivityCreated(savedInstanceState)
|
|
|
|
|
+// if (note.edited == -1L) {
|
|
|
|
|
+// editBody()
|
|
|
|
|
+// } else {
|
|
|
|
|
+// bodyEditText.visibility = View.GONE
|
|
|
|
|
+// textBody.visibility = View.VISIBLE
|
|
|
|
|
+// textBody.text = note.body
|
|
|
|
|
+// titleEditText.setText(note.title.orEmpty())
|
|
|
|
|
+// bodyEditText.setText(note.body)
|
|
|
|
|
+// titleEditText.isEnabled = false
|
|
|
|
|
+// }
|
|
|
|
|
+// titleEditText.setOnEditorActionListener { _, _, _ ->
|
|
|
|
|
+// editBody()
|
|
|
|
|
+// true
|
|
|
|
|
+// }
|
|
|
|
|
+// textBody.setOnClickListener(object : DoubleClickListener() {
|
|
|
|
|
+// override fun onDoubleClick(v: View) {
|
|
|
|
|
+// titleEditText.isEnabled = true
|
|
|
|
|
+// editBody()
|
|
|
|
|
+// }
|
|
|
|
|
+//
|
|
|
|
|
+// override fun onSingleClick(v: View) {
|
|
|
|
|
+// // Do nothing
|
|
|
|
|
+// }
|
|
|
|
|
+// })
|
|
|
|
|
+// }
|
|
|
|
|
|
|
|
- private fun saveNote() {
|
|
|
|
|
- val body = bodyEditText.text.toString()
|
|
|
|
|
- val title = titleEditText.text.toString()
|
|
|
|
|
- val newNote = Note(body, Date().time)
|
|
|
|
|
- newNote.title = if (title.isEmpty()) null else title
|
|
|
|
|
- newNote.body = body.trim()
|
|
|
|
|
- newNote.id = note.id
|
|
|
|
|
- val currentDigest = hash(newNote.title + newNote.body)
|
|
|
|
|
- if (body.isEmpty()) return
|
|
|
|
|
- if (initialDigest == currentDigest) return
|
|
|
|
|
- if (note.id == null) viewModel.add(newNote) else viewModel.update(newNote)
|
|
|
|
|
|
|
+// private fun editBody() {
|
|
|
|
|
+// textBody.visibility = View.GONE
|
|
|
|
|
+// bodyEditText.visibility = View.VISIBLE
|
|
|
|
|
+// if (bodyEditText.requestFocus()) {
|
|
|
|
|
+// val imm = activity!!.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
|
|
|
|
|
+// imm.showSoftInput(bodyEditText, InputMethodManager.SHOW_IMPLICIT)
|
|
|
|
|
+// bodyEditText.setSelection(note.body.length)
|
|
|
|
|
+// }
|
|
|
|
|
+// }
|
|
|
|
|
|
|
|
- }
|
|
|
|
|
|
|
+// private fun saveNote() {
|
|
|
|
|
+// val body = bodyEditText.text.toString()
|
|
|
|
|
+// val title = titleEditText.text.toString()
|
|
|
|
|
+// val newNote = Note(body, Date().time)
|
|
|
|
|
+// newNote.title = if (title.isEmpty()) null else title
|
|
|
|
|
+// newNote.body = body.trim()
|
|
|
|
|
+// newNote.id = note.id
|
|
|
|
|
+// val currentDigest = hash(newNote.title + newNote.body)
|
|
|
|
|
+// if (body.isEmpty()) return
|
|
|
|
|
+// if (initialDigest == currentDigest) return
|
|
|
|
|
+// if (note.id == null) viewModel.add(newNote) else viewModel.update(newNote)
|
|
|
|
|
+//
|
|
|
|
|
+// }
|
|
|
|
|
|
|
|
private fun hash(input: String): String {
|
|
private fun hash(input: String): String {
|
|
|
val bytes = input.toByteArray(charset("UTF-8"))
|
|
val bytes = input.toByteArray(charset("UTF-8"))
|
|
@@ -107,7 +109,7 @@ class NoteFragment : BaseFragment() {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
override fun onBack(): Boolean {
|
|
override fun onBack(): Boolean {
|
|
|
- saveNote()
|
|
|
|
|
|
|
+ //saveNote()
|
|
|
return false
|
|
return false
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|