singleWindowApplication content now receives ApplicationScope too#2703
Conversation
singleWindowApplication content now receives ApplicationScope too.singleWindowApplication content now receives ApplicationScope too
Igor Demin (igordmn)
left a comment
There was a problem hiding this comment.
Needs 2 approvals
| @Deprecated( | ||
| level = DeprecationLevel.HIDDEN, | ||
| message = "Replaced by override that takes a `SingleWindowApplicationScope`" | ||
| ) |
There was a problem hiding this comment.
In general, we don't need to keep compatibility for experimental, but let's keep it for one version.
Please add YT tasks for:
- Remove ExperimentalComposeUiApi/Deprecated override in 1.12
- Stabilize ExperimentalComposeUiApi overrides
There was a problem hiding this comment.
Is there a need to remove the deprecated version? It's marked as HIDDEN, but provides binary backwards compatibility, so I don't see any harm to keep it.
There was a problem hiding this comment.
The experimental annotation is added to be able to remove/change it in the next version without deprecation/keeping it in the codebase forever. There is no reason to keep it
There was a problem hiding this comment.
My question was about the removal of the non-experimental overload.
There was a problem hiding this comment.
Although, actually it applies to the experimental one too.
The reason to keep it is to continue providing binary backwards compatibility. I don't see a reason to not do that.
There was a problem hiding this comment.
My question was about the removal of the non-experimental overload.
We should keep it compatibility/deprecated version for non-experimental variant
The reason to keep it is to continue providing binary backwards compatibility.
It's not an argument for experimental API
I don't see a reason to not do that.
To keep semantics of experimental, to keep our codebase clean.
Also, I don't really see the use case where it might be useful for anybody – the entry point isn't used in libraries anyway
singleWindowApplicationcontent now receivesSingleWindowApplicationScope, which is a subtype of bothApplicationScopeandFrameWindowScopeFixes Cannot exitApplication() in singleWindowApplication
Testing
Tested with
making sure "Application exited" is printed after pressing the "Close App" button.
Release Notes
Features - Desktop
singleWindowApplicationcontent's receiver now subclassesApplicationScopetoo, allowing to programmatically exit the app.