From 31ac8f602312ee2db0a1b3ac5c3784567de3d331 Mon Sep 17 00:00:00 2001 From: Satindar Dhillon Date: Mon, 14 Nov 2022 11:01:55 -0800 Subject: [PATCH] wrap edit annotation view in fragment --- .../omnivore/ui/reader/AnnotationEditView.kt | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/AnnotationEditView.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/AnnotationEditView.kt index e308250e2..0ebdc63f9 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/AnnotationEditView.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/AnnotationEditView.kt @@ -1,5 +1,9 @@ package app.omnivore.omnivore.ui.reader +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup import androidx.compose.foundation.background import androidx.compose.foundation.layout.* import androidx.compose.foundation.shape.RoundedCornerShape @@ -10,7 +14,34 @@ import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip +import androidx.compose.ui.platform.ComposeView +import androidx.compose.ui.platform.ViewCompositionStrategy import androidx.compose.ui.unit.dp +import androidx.fragment.app.Fragment +import app.omnivore.omnivore.ui.theme.OmnivoreTheme + +class AnnotationEditFragment : Fragment() { + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + return ComposeView(requireContext()).apply { + // Dispose of the Composition when the view's LifecycleOwner + // is destroyed + setViewCompositionStrategy(ViewCompositionStrategy.DisposeOnViewTreeLifecycleDestroyed) + setContent { + OmnivoreTheme { + AnnotationEditView( + initialAnnotation = "Initial Annotation", + onSave = {}, + onCancel = {} + ) + } + } + } + } +} // TODO: better layout and styling for this view @OptIn(ExperimentalMaterial3Api::class)