Don't forget to listen to widgets

Fix #55
This commit is contained in:
MM20 2022-04-04 14:32:28 +02:00
parent 9433b11747
commit 1e8e635cc2
No known key found for this signature in database
GPG Key ID: 0B61A8F2DEAFA389

View File

@ -39,7 +39,10 @@ import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.IntOffset
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.Dialog
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.lifecycleScope
import androidx.lifecycle.repeatOnLifecycle
import de.mm20.launcher2.ui.ClockWidget
import de.mm20.launcher2.ui.MdcLauncherTheme
import de.mm20.launcher2.ui.R
@ -47,6 +50,7 @@ import de.mm20.launcher2.ui.base.ProvideSettings
import de.mm20.launcher2.ui.ktx.toDp
import de.mm20.launcher2.ui.launcher.widgets.picker.PickAppWidgetActivity
import de.mm20.launcher2.widgets.ExternalWidget
import kotlinx.coroutines.awaitCancellation
import kotlinx.coroutines.launch
@OptIn(ExperimentalAnimationGraphicsApi::class)
@ -79,6 +83,17 @@ class WidgetsView @JvmOverloads constructor(
}
}
context.lifecycleScope.launch {
context.lifecycle.repeatOnLifecycle(Lifecycle.State.STARTED) {
widgetHost.startListening()
try {
awaitCancellation()
} finally {
widgetHost.stopListening()
}
}
}
val composeView = ComposeView(context)
composeView.setContent {