Add KDoc to the authentication, logout, preferences and share API interfaces

Cover the remaining interfaces of features/login, features/logout,
features/preferences and features/share, along with their members and parameters.

Points recorded here: AccountProviderAccessControl returns true on a build with no
enterprise restriction, ExtraDeveloperOptionsRenderer is bound to a no-op in the
standard build, DirectLogoutView draws nothing until a logout event is sent, and
CacheService exists because clearing a cache destroys the client and the app has
to react.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Benoit Marty
2026-08-14 11:53:37 +02:00
parent fa123d941b
commit 1b4d6c07fa
7 changed files with 40 additions and 0 deletions
@@ -11,6 +11,9 @@ package io.element.android.features.preferences.api
import io.element.android.libraries.matrix.api.core.SessionId
import kotlinx.coroutines.flow.Flow
/**
* Announces that a session's cache has been cleared, since clearing it destroys the client and the app has to react.
*/
interface CacheService {
/**
* A flow of [SessionId], can let the app to know when the
@@ -14,6 +14,11 @@ import androidx.compose.ui.Modifier
* Component for rendering extra developer options in the preferences screen.
*/
interface ExtraDeveloperOptionsRenderer {
/**
* Draws the extra options. The standard build binds a no-op implementation, so only the builds that actually add options provide a real one.
*
* @param modifier layout modifier for the container.
*/
@Composable
fun Render(modifier: Modifier)
}