diff --git a/app/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.kt b/app/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.kt index 54067f9cd..42a4622ac 100755 --- a/app/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.kt +++ b/app/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.kt @@ -57,6 +57,7 @@ import org.tasks.date.DateTimeUtils.newDateTime import org.tasks.dialogs.DialogBuilder import org.tasks.dialogs.Linkify import org.tasks.files.FileHelper +import org.tasks.fragments.CommentBarFragment import org.tasks.fragments.TaskEditControlSetFragmentManager import org.tasks.markdown.MarkdownProvider import org.tasks.notifications.NotificationManager @@ -213,6 +214,11 @@ class TaskEditFragment : Fragment(), Toolbar.OnMenuItemClickListener { fragmentTransaction.hide(taskEditControlFragment) } } + fragmentTransaction.replace( + R.id.comment_bar, + fragmentManager.findFragmentByTag(FRAG_TAG_COMMENT_BAR) ?: CommentBarFragment(), + FRAG_TAG_COMMENT_BAR + ) fragmentTransaction.commit() for (i in visibleSize - 1 downTo 1) { binding.controlSets.addView(inflater.inflate(R.layout.task_edit_row_divider, binding.controlSets, false), i) @@ -381,6 +387,7 @@ class TaskEditFragment : Fragment(), Toolbar.OnMenuItemClickListener { companion object { const val TAG_TASKEDIT_FRAGMENT = "taskedit_fragment" + private const val FRAG_TAG_COMMENT_BAR = "comment_bar" private const val EXTRA_TASK = "extra_task" private const val EXTRA_LIST = "extra_list" private const val EXTRA_LOCATION = "extra_location" diff --git a/app/src/main/java/org/tasks/fragments/CommentBarFragment.kt b/app/src/main/java/org/tasks/fragments/CommentBarFragment.kt index 6c0bccef7..8051bf6ec 100644 --- a/app/src/main/java/org/tasks/fragments/CommentBarFragment.kt +++ b/app/src/main/java/org/tasks/fragments/CommentBarFragment.kt @@ -15,6 +15,7 @@ import android.widget.EditText import android.widget.ImageView import android.widget.LinearLayout import androidx.core.widget.addTextChangedListener +import androidx.fragment.app.Fragment import com.todoroo.andlib.utility.AndroidUtilities import dagger.hilt.android.AndroidEntryPoint import org.tasks.R @@ -26,11 +27,10 @@ import org.tasks.files.ImageHelper import org.tasks.preferences.Device import org.tasks.preferences.Preferences import org.tasks.themes.ThemeColor -import org.tasks.ui.TaskEditControlFragment import javax.inject.Inject @AndroidEntryPoint -class CommentBarFragment : TaskEditControlFragment() { +class CommentBarFragment : Fragment() { @Inject lateinit var activity: Activity @Inject lateinit var dialogBuilder: DialogBuilder @Inject lateinit var device: Device @@ -56,7 +56,7 @@ class CommentBarFragment : TaskEditControlFragment() { return view } - override fun createView(savedInstanceState: Bundle?) { + private fun createView(savedInstanceState: Bundle?) { if (savedInstanceState != null) { val uri = savedInstanceState.getString(EXTRA_PICTURE) if (uri != null) { @@ -74,7 +74,7 @@ class CommentBarFragment : TaskEditControlFragment() { resetPictureButton() } - override fun bind(parent: ViewGroup?) = + private fun bind(parent: ViewGroup?) = FragmentCommentBarBinding.inflate(layoutInflater, parent, false).let { commentButton = it.commentButton.apply { setOnClickListener { addClicked() } @@ -92,10 +92,6 @@ class CommentBarFragment : TaskEditControlFragment() { it.root } - override val icon = 0 - - override fun controlId() = TAG - private fun onTextChanged(s: String?) { commentButton.visibility = if (pendingCommentPicture == null && isNullOrEmpty(s.toString())) View.GONE else View.VISIBLE } @@ -210,7 +206,6 @@ class CommentBarFragment : TaskEditControlFragment() { } companion object { - const val TAG = R.string.TEA_ctrl_comments private const val REQUEST_CODE_CAMERA = 60 private const val EXTRA_TEXT = "extra_text" private const val EXTRA_PICTURE = "extra_picture" diff --git a/app/src/main/java/org/tasks/fragments/TaskEditControlSetFragmentManager.kt b/app/src/main/java/org/tasks/fragments/TaskEditControlSetFragmentManager.kt index e6440a6b0..41ecc0175 100644 --- a/app/src/main/java/org/tasks/fragments/TaskEditControlSetFragmentManager.kt +++ b/app/src/main/java/org/tasks/fragments/TaskEditControlSetFragmentManager.kt @@ -7,14 +7,13 @@ import com.todoroo.astrid.files.FilesControlSet import com.todoroo.astrid.repeats.RepeatControlSet import com.todoroo.astrid.tags.TagsControlSet import com.todoroo.astrid.timers.TimerControlSet -import com.todoroo.astrid.ui.StartDateControlSet import com.todoroo.astrid.ui.ReminderControlSet +import com.todoroo.astrid.ui.StartDateControlSet import dagger.hilt.android.qualifiers.ActivityContext import org.tasks.BuildConfig import org.tasks.R import org.tasks.preferences.Preferences import org.tasks.ui.* -import java.util.* import javax.inject.Inject class TaskEditControlSetFragmentManager @Inject constructor( @@ -51,7 +50,6 @@ class TaskEditControlSetFragmentManager @Inject constructor( TimerControlSet.TAG -> TimerControlSet() TagsControlSet.TAG -> TagsControlSet() RepeatControlSet.TAG -> RepeatControlSet() - CommentBarFragment.TAG -> CommentBarFragment() ListFragment.TAG -> ListFragment() SubtaskControlSet.TAG -> SubtaskControlSet() CreationDateControlSet.TAG -> CreationDateControlSet() @@ -60,7 +58,6 @@ class TaskEditControlSetFragmentManager @Inject constructor( init { displayOrder = BeastModePreferences.constructOrderedControlList(preferences, context) - displayOrder.add(0, context.getString(CommentBarFragment.TAG)) val hideAlwaysTrigger = context.getString(R.string.TEA_ctrl_hide_section_pref) visibleSize = 0 while (visibleSize < displayOrder.size) { @@ -77,7 +74,6 @@ class TaskEditControlSetFragmentManager @Inject constructor( companion object { val TASK_EDIT_CONTROL_FRAGMENT_ROWS = intArrayOf( - R.id.comment_bar, R.id.row_1, R.id.row_2, R.id.row_3, @@ -106,7 +102,6 @@ class TaskEditControlSetFragmentManager @Inject constructor( TagsControlSet.TAG, RepeatControlSet.TAG, CreationDateControlSet.TAG, - CommentBarFragment.TAG, ListFragment.TAG, SubtaskControlSet.TAG )