Currently, UP is somewhat of an issue with ScopeKey.
It would work with ScopeKey.Child.
But the problem is that the idea behind ScopeKey is that the key defines the scope that must be created, and in the case of properly implemented deeplinking (which, not even Jetpack Navigation can do), you do not have those in the history, but this would break your code unless you change from ScopeKey to ScopeKey.Child on those specific screens.
The idea is that you'd be able to say implements SyntheticUpTarget (name subject to change) and return a List<ScopeKey> to determine scopes that should exist as implicit scopes even if they are not in the history.
The downside is that it is quite literally just like ScopeKey.Child so it could also theoretically be a List<String>, but then you need to consider parameters (you'd need to still retain the previous key's scopeKey.getScopeTag() as a field and return that in your list). Maybe that's not too bad though.
Currently, UP is somewhat of an issue with
ScopeKey.It would work with
ScopeKey.Child.But the problem is that the idea behind
ScopeKeyis that the key defines the scope that must be created, and in the case of properly implemented deeplinking (which, not even Jetpack Navigation can do), you do not have those in the history, but this would break your code unless you change fromScopeKeytoScopeKey.Childon those specific screens.The idea is that you'd be able to say
implements SyntheticUpTarget(name subject to change) and return aList<ScopeKey>to determine scopes that should exist as implicit scopes even if they are not in the history.The downside is that it is quite literally just like
ScopeKey.Childso it could also theoretically be aList<String>, but then you need to consider parameters (you'd need to still retain the previous key'sscopeKey.getScopeTag()as a field and return that in your list). Maybe that's not too bad though.