Preconditions:
There are two ElmFragments which are only container for Composable functions. Subscribe to Flow(Effect) with effects extension inside Composable fun.
Steps to reproduce:
Open Fragment1 and navigate to Fragment2. Fragment1 subscribes via Actor to some data-holder.
Trigger an event in Fragment2 which perform some work and update the data-holder from previous step.
Reducer1 received event from Actor and produce effect, while Fragment1 is paused.
Fragment2 is closed and Fragment1 didn't get effect.
IMPORTANT NOTE
It's related only for Flow. Due to research, I found that ElmScreen always subscribes to effects when Fragment is resumed. Since we manually subscribes to effects, this behavior broke the logic.
CoroutineScope inside Composable starts later than Fragment is get resume state, so ElmScreen consume effects but it shouldn't.
Preconditions: There are two ElmFragments which are only container for Composable functions. Subscribe to Flow(Effect) with
effects
extension inside Composable fun.Steps to reproduce:
IMPORTANT NOTE It's related only for Flow. Due to research, I found that ElmScreen always subscribes to effects when Fragment is resumed. Since we manually subscribes to effects, this behavior broke the logic. CoroutineScope inside Composable starts later than Fragment is get resume state, so ElmScreen consume effects but it shouldn't.