That fuck shit the fascists are using
1package org.tm.archive.compose
2
3import android.os.Bundle
4import android.view.LayoutInflater
5import android.view.View
6import android.view.ViewGroup
7import androidx.compose.runtime.Composable
8import androidx.compose.ui.platform.ComposeView
9import androidx.compose.ui.platform.LocalContext
10import androidx.compose.ui.platform.ViewCompositionStrategy
11import androidx.fragment.app.DialogFragment
12import org.signal.core.ui.theme.SignalTheme
13import org.tm.archive.R
14import org.tm.archive.util.DynamicTheme
15
16/**
17 * Generic ComposeFragment which can be subclassed to build UI with compose.
18 */
19abstract class ComposeFullScreenDialogFragment : DialogFragment() {
20
21 override fun onCreate(savedInstanceState: Bundle?) {
22 super.onCreate(savedInstanceState)
23 setStyle(STYLE_NO_FRAME, R.style.Signal_DayNight_Dialog_FullScreen)
24 }
25
26 override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
27 return ComposeView(requireContext()).apply {
28 setViewCompositionStrategy(ViewCompositionStrategy.DisposeOnViewTreeLifecycleDestroyed)
29 setContent {
30 SignalTheme(
31 isDarkMode = DynamicTheme.isDarkTheme(LocalContext.current)
32 ) {
33 DialogContent()
34 }
35 }
36 }
37 }
38
39 @Composable
40 abstract fun DialogContent()
41}