forked from dsutanto/bChot-android
refactoring to id.databisnis.bachot
This commit is contained in:
@@ -6,11 +6,11 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.analytics.api"
|
||||
namespace = "id.databisnis.android.bachot.features.analytics.api"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.api
|
||||
package id.databisnis.android.bachot.features.analytics.api
|
||||
|
||||
import io.element.android.libraries.architecture.SimpleFeatureEntryPoint
|
||||
import id.databisnis.android.bachot.libraries.architecture.SimpleFeatureEntryPoint
|
||||
|
||||
fun interface AnalyticsEntryPoint : SimpleFeatureEntryPoint
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.api
|
||||
package id.databisnis.android.bachot.features.analytics.api
|
||||
|
||||
sealed interface AnalyticsOptInEvents {
|
||||
data class EnableAnalytics(val isEnabled: Boolean) : AnalyticsOptInEvents
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.api.preferences
|
||||
package id.databisnis.android.bachot.features.analytics.api.preferences
|
||||
|
||||
import io.element.android.features.analytics.api.AnalyticsOptInEvents
|
||||
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
|
||||
|
||||
data class AnalyticsPreferencesState(
|
||||
val applicationName: String,
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.api.preferences
|
||||
package id.databisnis.android.bachot.features.analytics.api.preferences
|
||||
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
|
||||
|
||||
@@ -6,23 +6,23 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.api.preferences
|
||||
package id.databisnis.android.bachot.features.analytics.api.preferences
|
||||
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameter
|
||||
import io.element.android.features.analytics.api.AnalyticsOptInEvents
|
||||
import io.element.android.features.analytics.api.R
|
||||
import io.element.android.libraries.designsystem.components.LINK_TAG
|
||||
import io.element.android.libraries.designsystem.components.list.ListItemContent
|
||||
import io.element.android.libraries.designsystem.preview.ElementPreview
|
||||
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
|
||||
import io.element.android.libraries.designsystem.text.buildAnnotatedStringWithStyledPart
|
||||
import io.element.android.libraries.designsystem.theme.components.ListItem
|
||||
import io.element.android.libraries.designsystem.theme.components.ListSupportingText
|
||||
import io.element.android.libraries.designsystem.theme.components.Text
|
||||
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
|
||||
import id.databisnis.android.bachot.features.analytics.api.R
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.LINK_TAG
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.list.ListItemContent
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
|
||||
import id.databisnis.android.bachot.libraries.designsystem.text.buildAnnotatedStringWithStyledPart
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.ListItem
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.ListSupportingText
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Text
|
||||
|
||||
@Composable
|
||||
fun AnalyticsPreferencesView(
|
||||
@@ -10,12 +10,12 @@ import extension.testCommonDependencies
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
id("kotlin-parcelize")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.analytics.impl"
|
||||
namespace = "id.databisnis.android.bachot.features.analytics.impl"
|
||||
}
|
||||
|
||||
setupDependencyInjection()
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl
|
||||
package id.databisnis.android.bachot.features.analytics.impl
|
||||
|
||||
import android.app.Activity
|
||||
import androidx.activity.compose.LocalActivity
|
||||
@@ -18,10 +18,10 @@ import com.bumble.appyx.core.plugin.Plugin
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.Assisted
|
||||
import dev.zacsweers.metro.AssistedInject
|
||||
import io.element.android.annotations.ContributesNode
|
||||
import io.element.android.appconfig.AnalyticsConfig
|
||||
import io.element.android.compound.theme.ElementTheme
|
||||
import io.element.android.libraries.androidutils.browser.openUrlInChromeCustomTab
|
||||
import id.databisnis.android.bachot.annotations.ContributesNode
|
||||
import id.databisnis.android.bachot.appconfig.AnalyticsConfig
|
||||
import id.databisnis.android.bachot.compound.theme.ElementTheme
|
||||
import id.databisnis.android.bachot.libraries.androidutils.browser.openUrlInChromeCustomTab
|
||||
|
||||
@ContributesNode(AppScope::class)
|
||||
@AssistedInject
|
||||
@@ -6,16 +6,16 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl
|
||||
package id.databisnis.android.bachot.features.analytics.impl
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.rememberCoroutineScope
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.appconfig.AnalyticsConfig
|
||||
import io.element.android.features.analytics.api.AnalyticsOptInEvents
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.services.analytics.api.AnalyticsService
|
||||
import id.databisnis.android.bachot.appconfig.AnalyticsConfig
|
||||
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.services.analytics.api.AnalyticsService
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl
|
||||
package id.databisnis.android.bachot.features.analytics.impl
|
||||
|
||||
import io.element.android.features.analytics.api.AnalyticsOptInEvents
|
||||
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
|
||||
|
||||
data class AnalyticsOptInState(
|
||||
val applicationName: String,
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl
|
||||
package id.databisnis.android.bachot.features.analytics.impl
|
||||
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl
|
||||
package id.databisnis.android.bachot.features.analytics.impl
|
||||
|
||||
import androidx.activity.compose.BackHandler
|
||||
import androidx.compose.foundation.layout.Box
|
||||
@@ -25,25 +25,25 @@ import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameter
|
||||
import androidx.compose.ui.unit.dp
|
||||
import io.element.android.appconfig.AnalyticsConfig
|
||||
import io.element.android.compound.theme.ElementTheme
|
||||
import io.element.android.compound.tokens.generated.CompoundIcons
|
||||
import io.element.android.features.analytics.api.AnalyticsOptInEvents
|
||||
import io.element.android.libraries.designsystem.atomic.molecules.ButtonColumnMolecule
|
||||
import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule
|
||||
import io.element.android.libraries.designsystem.atomic.organisms.InfoListItem
|
||||
import io.element.android.libraries.designsystem.atomic.organisms.InfoListOrganism
|
||||
import io.element.android.libraries.designsystem.atomic.pages.HeaderFooterPage
|
||||
import io.element.android.libraries.designsystem.background.OnboardingBackground
|
||||
import io.element.android.libraries.designsystem.components.BigIcon
|
||||
import io.element.android.libraries.designsystem.components.ClickableLinkText
|
||||
import io.element.android.libraries.designsystem.preview.ElementPreview
|
||||
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
|
||||
import io.element.android.libraries.designsystem.text.buildAnnotatedStringWithStyledPart
|
||||
import io.element.android.libraries.designsystem.theme.components.Button
|
||||
import io.element.android.libraries.designsystem.theme.components.ButtonSize
|
||||
import io.element.android.libraries.designsystem.theme.components.TextButton
|
||||
import io.element.android.libraries.ui.strings.CommonStrings
|
||||
import id.databisnis.android.bachot.appconfig.AnalyticsConfig
|
||||
import id.databisnis.android.bachot.compound.theme.ElementTheme
|
||||
import id.databisnis.android.bachot.compound.tokens.generated.CompoundIcons
|
||||
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
|
||||
import id.databisnis.android.bachot.libraries.designsystem.atomic.molecules.ButtonColumnMolecule
|
||||
import id.databisnis.android.bachot.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule
|
||||
import id.databisnis.android.bachot.libraries.designsystem.atomic.organisms.InfoListItem
|
||||
import id.databisnis.android.bachot.libraries.designsystem.atomic.organisms.InfoListOrganism
|
||||
import id.databisnis.android.bachot.libraries.designsystem.atomic.pages.HeaderFooterPage
|
||||
import id.databisnis.android.bachot.libraries.designsystem.background.OnboardingBackground
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.BigIcon
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.ClickableLinkText
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
|
||||
import id.databisnis.android.bachot.libraries.designsystem.text.buildAnnotatedStringWithStyledPart
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Button
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.ButtonSize
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.TextButton
|
||||
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
|
||||
import kotlinx.collections.immutable.persistentListOf
|
||||
|
||||
@Composable
|
||||
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl
|
||||
package id.databisnis.android.bachot.features.analytics.impl
|
||||
|
||||
import com.bumble.appyx.core.modality.BuildContext
|
||||
import com.bumble.appyx.core.node.Node
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.features.analytics.api.AnalyticsEntryPoint
|
||||
import io.element.android.libraries.architecture.createNode
|
||||
import id.databisnis.android.bachot.features.analytics.api.AnalyticsEntryPoint
|
||||
import id.databisnis.android.bachot.libraries.architecture.createNode
|
||||
|
||||
@ContributesBinding(AppScope::class)
|
||||
class DefaultAnalyticsEntryPoint : AnalyticsEntryPoint {
|
||||
@@ -6,15 +6,15 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl.di
|
||||
package id.databisnis.android.bachot.features.analytics.impl.di
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.BindingContainer
|
||||
import dev.zacsweers.metro.Binds
|
||||
import dev.zacsweers.metro.ContributesTo
|
||||
import io.element.android.features.analytics.api.preferences.AnalyticsPreferencesState
|
||||
import io.element.android.features.analytics.impl.preferences.AnalyticsPreferencesPresenter
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.features.analytics.api.preferences.AnalyticsPreferencesState
|
||||
import id.databisnis.android.bachot.features.analytics.impl.preferences.AnalyticsPreferencesPresenter
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
|
||||
@ContributesTo(AppScope::class)
|
||||
@BindingContainer
|
||||
@@ -6,18 +6,18 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl.preferences
|
||||
package id.databisnis.android.bachot.features.analytics.impl.preferences
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.collectAsState
|
||||
import androidx.compose.runtime.rememberCoroutineScope
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.appconfig.AnalyticsConfig
|
||||
import io.element.android.features.analytics.api.AnalyticsOptInEvents
|
||||
import io.element.android.features.analytics.api.preferences.AnalyticsPreferencesState
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.services.analytics.api.AnalyticsService
|
||||
import id.databisnis.android.bachot.appconfig.AnalyticsConfig
|
||||
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
|
||||
import id.databisnis.android.bachot.features.analytics.api.preferences.AnalyticsPreferencesState
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.services.analytics.api.AnalyticsService
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl
|
||||
package id.databisnis.android.bachot.features.analytics.impl
|
||||
|
||||
import app.cash.molecule.RecompositionMode
|
||||
import app.cash.molecule.moleculeFlow
|
||||
import app.cash.turbine.test
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.features.analytics.api.AnalyticsOptInEvents
|
||||
import io.element.android.libraries.matrix.test.core.aBuildMeta
|
||||
import io.element.android.services.analytics.test.FakeAnalyticsService
|
||||
import io.element.android.tests.testutils.WarmUpRule
|
||||
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.core.aBuildMeta
|
||||
import id.databisnis.android.bachot.services.analytics.test.FakeAnalyticsService
|
||||
import id.databisnis.android.bachot.tests.testutils.WarmUpRule
|
||||
import kotlinx.coroutines.flow.first
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Rule
|
||||
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl
|
||||
package id.databisnis.android.bachot.features.analytics.impl
|
||||
|
||||
import androidx.arch.core.executor.testing.InstantTaskExecutorRule
|
||||
import com.bumble.appyx.core.modality.BuildContext
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.matrix.test.core.aBuildMeta
|
||||
import io.element.android.services.analytics.test.FakeAnalyticsService
|
||||
import io.element.android.tests.testutils.node.TestParentNode
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.core.aBuildMeta
|
||||
import id.databisnis.android.bachot.services.analytics.test.FakeAnalyticsService
|
||||
import id.databisnis.android.bachot.tests.testutils.node.TestParentNode
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
|
||||
@@ -6,17 +6,17 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.analytics.impl.preferences
|
||||
package id.databisnis.android.bachot.features.analytics.impl.preferences
|
||||
|
||||
import app.cash.molecule.RecompositionMode
|
||||
import app.cash.molecule.moleculeFlow
|
||||
import app.cash.turbine.test
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.appconfig.AnalyticsConfig
|
||||
import io.element.android.features.analytics.api.AnalyticsOptInEvents
|
||||
import io.element.android.libraries.matrix.test.core.aBuildMeta
|
||||
import io.element.android.services.analytics.test.FakeAnalyticsService
|
||||
import io.element.android.tests.testutils.WarmUpRule
|
||||
import id.databisnis.android.bachot.appconfig.AnalyticsConfig
|
||||
import id.databisnis.android.bachot.features.analytics.api.AnalyticsOptInEvents
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.core.aBuildMeta
|
||||
import id.databisnis.android.bachot.services.analytics.test.FakeAnalyticsService
|
||||
import id.databisnis.android.bachot.tests.testutils.WarmUpRule
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.announcement.api"
|
||||
namespace = "id.databisnis.android.bachot.features.announcement.api"
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.api
|
||||
package id.databisnis.android.bachot.features.announcement.api
|
||||
|
||||
enum class Announcement {
|
||||
Space,
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.api
|
||||
package id.databisnis.android.bachot.features.announcement.api
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
@@ -10,11 +10,11 @@ import extension.testCommonDependencies
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.announcement.impl"
|
||||
namespace = "id.databisnis.android.bachot.features.announcement.impl"
|
||||
|
||||
testOptions {
|
||||
unitTests {
|
||||
|
||||
@@ -6,17 +6,17 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl
|
||||
package id.databisnis.android.bachot.features.announcement.impl
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.collectAsState
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.remember
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.features.announcement.api.Announcement
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStatus
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStore
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.features.announcement.api.Announcement
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
import kotlinx.coroutines.flow.map
|
||||
|
||||
@Inject
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl
|
||||
package id.databisnis.android.bachot.features.announcement.impl
|
||||
|
||||
data class AnnouncementState(
|
||||
val showSpaceAnnouncement: Boolean,
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl
|
||||
package id.databisnis.android.bachot.features.announcement.impl
|
||||
|
||||
import androidx.compose.animation.AnimatedVisibility
|
||||
import androidx.compose.animation.fadeIn
|
||||
@@ -17,13 +17,13 @@ import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.features.announcement.api.Announcement
|
||||
import io.element.android.features.announcement.api.AnnouncementService
|
||||
import io.element.android.features.announcement.impl.spaces.SpaceAnnouncementState
|
||||
import io.element.android.features.announcement.impl.spaces.SpaceAnnouncementView
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStatus
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStore
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.features.announcement.api.Announcement
|
||||
import id.databisnis.android.bachot.features.announcement.api.AnnouncementService
|
||||
import id.databisnis.android.bachot.features.announcement.impl.spaces.SpaceAnnouncementState
|
||||
import id.databisnis.android.bachot.features.announcement.impl.spaces.SpaceAnnouncementView
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.combine
|
||||
import kotlinx.coroutines.flow.first
|
||||
@@ -6,17 +6,17 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.di
|
||||
package id.databisnis.android.bachot.features.announcement.impl.di
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.BindingContainer
|
||||
import dev.zacsweers.metro.Binds
|
||||
import dev.zacsweers.metro.ContributesTo
|
||||
import io.element.android.features.announcement.impl.AnnouncementPresenter
|
||||
import io.element.android.features.announcement.impl.AnnouncementState
|
||||
import io.element.android.features.announcement.impl.spaces.SpaceAnnouncementPresenter
|
||||
import io.element.android.features.announcement.impl.spaces.SpaceAnnouncementState
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.features.announcement.impl.AnnouncementPresenter
|
||||
import id.databisnis.android.bachot.features.announcement.impl.AnnouncementState
|
||||
import id.databisnis.android.bachot.features.announcement.impl.spaces.SpaceAnnouncementPresenter
|
||||
import id.databisnis.android.bachot.features.announcement.impl.spaces.SpaceAnnouncementState
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
|
||||
@ContributesTo(AppScope::class)
|
||||
@BindingContainer
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.spaces
|
||||
package id.databisnis.android.bachot.features.announcement.impl.spaces
|
||||
|
||||
sealed interface SpaceAnnouncementEvents {
|
||||
data object Continue : SpaceAnnouncementEvents
|
||||
@@ -6,15 +6,15 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.spaces
|
||||
package id.databisnis.android.bachot.features.announcement.impl.spaces
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.rememberCoroutineScope
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.features.announcement.api.Announcement
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStatus
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStore
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.features.announcement.api.Announcement
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
@Inject
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.spaces
|
||||
package id.databisnis.android.bachot.features.announcement.impl.spaces
|
||||
|
||||
data class SpaceAnnouncementState(
|
||||
val eventSink: (SpaceAnnouncementEvents) -> Unit
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.spaces
|
||||
package id.databisnis.android.bachot.features.announcement.impl.spaces
|
||||
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.spaces
|
||||
package id.databisnis.android.bachot.features.announcement.impl.spaces
|
||||
|
||||
import androidx.activity.compose.BackHandler
|
||||
import androidx.compose.foundation.layout.Column
|
||||
@@ -20,20 +20,20 @@ import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameter
|
||||
import androidx.compose.ui.unit.dp
|
||||
import io.element.android.compound.theme.ElementTheme
|
||||
import io.element.android.compound.tokens.generated.CompoundIcons
|
||||
import io.element.android.features.announcement.impl.R
|
||||
import io.element.android.libraries.designsystem.atomic.molecules.ButtonColumnMolecule
|
||||
import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule
|
||||
import io.element.android.libraries.designsystem.atomic.organisms.InfoListItem
|
||||
import io.element.android.libraries.designsystem.atomic.organisms.InfoListOrganism
|
||||
import io.element.android.libraries.designsystem.atomic.pages.HeaderFooterPage
|
||||
import io.element.android.libraries.designsystem.components.BigIcon
|
||||
import io.element.android.libraries.designsystem.preview.ElementPreview
|
||||
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
|
||||
import io.element.android.libraries.designsystem.theme.components.Button
|
||||
import io.element.android.libraries.designsystem.theme.components.Text
|
||||
import io.element.android.libraries.ui.strings.CommonStrings
|
||||
import id.databisnis.android.bachot.compound.theme.ElementTheme
|
||||
import id.databisnis.android.bachot.compound.tokens.generated.CompoundIcons
|
||||
import id.databisnis.android.bachot.features.announcement.impl.R
|
||||
import id.databisnis.android.bachot.libraries.designsystem.atomic.molecules.ButtonColumnMolecule
|
||||
import id.databisnis.android.bachot.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule
|
||||
import id.databisnis.android.bachot.libraries.designsystem.atomic.organisms.InfoListItem
|
||||
import id.databisnis.android.bachot.libraries.designsystem.atomic.organisms.InfoListOrganism
|
||||
import id.databisnis.android.bachot.libraries.designsystem.atomic.pages.HeaderFooterPage
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.BigIcon
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Button
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Text
|
||||
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
|
||||
import kotlinx.collections.immutable.persistentListOf
|
||||
|
||||
/**
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.store
|
||||
package id.databisnis.android.bachot.features.announcement.impl.store
|
||||
|
||||
enum class AnnouncementStatus {
|
||||
NeverShown,
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.store
|
||||
package id.databisnis.android.bachot.features.announcement.impl.store
|
||||
|
||||
import io.element.android.features.announcement.api.Announcement
|
||||
import id.databisnis.android.bachot.features.announcement.api.Announcement
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
|
||||
interface AnnouncementStore {
|
||||
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.store
|
||||
package id.databisnis.android.bachot.features.announcement.impl.store
|
||||
|
||||
import androidx.datastore.preferences.core.edit
|
||||
import androidx.datastore.preferences.core.intPreferencesKey
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.features.announcement.api.Announcement
|
||||
import io.element.android.libraries.preferences.api.store.PreferenceDataStoreFactory
|
||||
import id.databisnis.android.bachot.features.announcement.api.Announcement
|
||||
import id.databisnis.android.bachot.libraries.preferences.api.store.PreferenceDataStoreFactory
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.map
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl
|
||||
package id.databisnis.android.bachot.features.announcement.impl
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.features.announcement.api.Announcement
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStatus
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStore
|
||||
import io.element.android.features.announcement.impl.store.InMemoryAnnouncementStore
|
||||
import io.element.android.tests.testutils.test
|
||||
import id.databisnis.android.bachot.features.announcement.api.Announcement
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.InMemoryAnnouncementStore
|
||||
import id.databisnis.android.bachot.tests.testutils.test
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Test
|
||||
|
||||
@@ -6,17 +6,17 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl
|
||||
package id.databisnis.android.bachot.features.announcement.impl
|
||||
|
||||
import app.cash.turbine.test
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.features.announcement.api.Announcement
|
||||
import io.element.android.features.announcement.impl.spaces.SpaceAnnouncementState
|
||||
import io.element.android.features.announcement.impl.spaces.aSpaceAnnouncementState
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStatus
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStore
|
||||
import io.element.android.features.announcement.impl.store.InMemoryAnnouncementStore
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.features.announcement.api.Announcement
|
||||
import id.databisnis.android.bachot.features.announcement.impl.spaces.SpaceAnnouncementState
|
||||
import id.databisnis.android.bachot.features.announcement.impl.spaces.aSpaceAnnouncementState
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.InMemoryAnnouncementStore
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
import kotlinx.coroutines.flow.first
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Test
|
||||
@@ -6,14 +6,14 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.spaces
|
||||
package id.databisnis.android.bachot.features.announcement.impl.spaces
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.features.announcement.api.Announcement
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStatus
|
||||
import io.element.android.features.announcement.impl.store.AnnouncementStore
|
||||
import io.element.android.features.announcement.impl.store.InMemoryAnnouncementStore
|
||||
import io.element.android.tests.testutils.test
|
||||
import id.databisnis.android.bachot.features.announcement.api.Announcement
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStatus
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.AnnouncementStore
|
||||
import id.databisnis.android.bachot.features.announcement.impl.store.InMemoryAnnouncementStore
|
||||
import id.databisnis.android.bachot.tests.testutils.test
|
||||
import kotlinx.coroutines.flow.first
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Test
|
||||
@@ -6,16 +6,16 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.spaces
|
||||
package id.databisnis.android.bachot.features.announcement.impl.spaces
|
||||
|
||||
import androidx.activity.ComponentActivity
|
||||
import androidx.compose.ui.test.junit4.AndroidComposeTestRule
|
||||
import androidx.compose.ui.test.junit4.createAndroidComposeRule
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
import io.element.android.libraries.ui.strings.CommonStrings
|
||||
import io.element.android.tests.testutils.EventsRecorder
|
||||
import io.element.android.tests.testutils.clickOn
|
||||
import io.element.android.tests.testutils.pressBackKey
|
||||
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
|
||||
import id.databisnis.android.bachot.tests.testutils.EventsRecorder
|
||||
import id.databisnis.android.bachot.tests.testutils.clickOn
|
||||
import id.databisnis.android.bachot.tests.testutils.pressBackKey
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.junit.rules.TestRule
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.announcement.impl.store
|
||||
package id.databisnis.android.bachot.features.announcement.impl.store
|
||||
|
||||
import io.element.android.features.announcement.api.Announcement
|
||||
import id.databisnis.android.bachot.features.announcement.api.Announcement
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
import kotlinx.coroutines.flow.asStateFlow
|
||||
@@ -6,11 +6,11 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.announcement.test"
|
||||
namespace = "id.databisnis.android.bachot.features.announcement.test"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.rageshake.test.logs
|
||||
package id.databisnis.android.bachot.features.rageshake.test.logs
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import io.element.android.features.announcement.api.Announcement
|
||||
import io.element.android.features.announcement.api.AnnouncementService
|
||||
import io.element.android.tests.testutils.lambda.lambdaError
|
||||
import id.databisnis.android.bachot.features.announcement.api.Announcement
|
||||
import id.databisnis.android.bachot.features.announcement.api.AnnouncementService
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaError
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
import kotlinx.coroutines.flow.asStateFlow
|
||||
@@ -7,11 +7,11 @@
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-library")
|
||||
id("id.databisnis.android.bachot-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.cachecleaner.api"
|
||||
namespace = "id.databisnis.android.bachot.features.cachecleaner.api"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.cachecleaner.api
|
||||
package id.databisnis.android.bachot.features.cachecleaner.api
|
||||
|
||||
interface CacheCleaner {
|
||||
/**
|
||||
@@ -10,11 +10,11 @@ import extension.testCommonDependencies
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.cachecleaner.impl"
|
||||
namespace = "id.databisnis.android.bachot.features.cachecleaner.impl"
|
||||
}
|
||||
|
||||
setupDependencyInjection()
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.cachecleaner.impl
|
||||
package id.databisnis.android.bachot.features.cachecleaner.impl
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesTo
|
||||
import io.element.android.features.cachecleaner.api.CacheCleaner
|
||||
import id.databisnis.android.bachot.features.cachecleaner.api.CacheCleaner
|
||||
|
||||
@ContributesTo(AppScope::class)
|
||||
interface CacheCleanerBindings {
|
||||
@@ -6,15 +6,15 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.cachecleaner.impl
|
||||
package id.databisnis.android.bachot.features.cachecleaner.impl
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.features.cachecleaner.api.CacheCleaner
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import io.element.android.libraries.core.extensions.runCatchingExceptions
|
||||
import io.element.android.libraries.di.CacheDirectory
|
||||
import io.element.android.libraries.di.annotations.AppCoroutineScope
|
||||
import id.databisnis.android.bachot.features.cachecleaner.api.CacheCleaner
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
|
||||
import id.databisnis.android.bachot.libraries.core.extensions.runCatchingExceptions
|
||||
import id.databisnis.android.bachot.libraries.di.CacheDirectory
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.AppCoroutineScope
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.launch
|
||||
import timber.log.Timber
|
||||
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.cachecleaner.impl
|
||||
package id.databisnis.android.bachot.features.cachecleaner.impl
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.tests.testutils.testCoroutineDispatchers
|
||||
import id.databisnis.android.bachot.tests.testutils.testCoroutineDispatchers
|
||||
import kotlinx.coroutines.test.TestScope
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Rule
|
||||
@@ -7,12 +7,12 @@
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-library")
|
||||
id("id.databisnis.android.bachot-library")
|
||||
id("kotlin-parcelize")
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.call.api"
|
||||
namespace = "id.databisnis.android.bachot.features.call.api"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
@@ -6,12 +6,12 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.api
|
||||
package id.databisnis.android.bachot.features.call.api
|
||||
|
||||
import android.os.Parcelable
|
||||
import io.element.android.libraries.architecture.NodeInputs
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.api.core.SessionId
|
||||
import id.databisnis.android.bachot.libraries.architecture.NodeInputs
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
|
||||
import kotlinx.parcelize.Parcelize
|
||||
|
||||
sealed interface CallType : NodeInputs, Parcelable {
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.api
|
||||
package id.databisnis.android.bachot.features.call.api
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
|
||||
/**
|
||||
* Value for the local current call.
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.api
|
||||
package id.databisnis.android.bachot.features.call.api
|
||||
|
||||
import kotlinx.coroutines.flow.StateFlow
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.api
|
||||
package id.databisnis.android.bachot.features.call.api
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.EventId
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.EventId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
|
||||
|
||||
/**
|
||||
* Entry point for the call feature.
|
||||
@@ -12,13 +12,13 @@ import extension.testCommonDependencies
|
||||
*/
|
||||
|
||||
plugins {
|
||||
id("io.element.android-compose-library")
|
||||
id("id.databisnis.android.bachot-compose-library")
|
||||
id("kotlin-parcelize")
|
||||
alias(libs.plugins.kotlin.serialization)
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.features.call.impl"
|
||||
namespace = "id.databisnis.android.bachot.features.call.impl"
|
||||
|
||||
buildFeatures {
|
||||
buildConfig = true
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
android:label="@string/element_call"
|
||||
android:launchMode="singleTask"
|
||||
android:supportsPictureInPicture="true"
|
||||
android:taskAffinity="io.element.android.features.call">
|
||||
android:taskAffinity="id.databisnis.android.bachot.features.call">
|
||||
|
||||
<intent-filter android:autoVerify="true">
|
||||
<action android:name="android.intent.action.VIEW" />
|
||||
@@ -75,7 +75,7 @@
|
||||
android:excludeFromRecents="true"
|
||||
android:exported="false"
|
||||
android:launchMode="singleTask"
|
||||
android:taskAffinity="io.element.android.features.call" />
|
||||
android:taskAffinity="id.databisnis.android.bachot.features.call" />
|
||||
|
||||
<service
|
||||
android:name=".services.CallForegroundService"
|
||||
|
||||
@@ -6,19 +6,19 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl
|
||||
package id.databisnis.android.bachot.features.call.impl
|
||||
|
||||
import android.content.Context
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.api.ElementCallEntryPoint
|
||||
import io.element.android.features.call.impl.notifications.CallNotificationData
|
||||
import io.element.android.features.call.impl.utils.ActiveCallManager
|
||||
import io.element.android.features.call.impl.utils.IntentProvider
|
||||
import io.element.android.libraries.di.annotations.ApplicationContext
|
||||
import io.element.android.libraries.matrix.api.core.EventId
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.api.ElementCallEntryPoint
|
||||
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.ActiveCallManager
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.IntentProvider
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.ApplicationContext
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.EventId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
|
||||
|
||||
@ContributesBinding(AppScope::class)
|
||||
class DefaultElementCallEntryPoint(
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.data
|
||||
package id.databisnis.android.bachot.features.call.impl.data
|
||||
|
||||
import kotlinx.serialization.SerialName
|
||||
import kotlinx.serialization.Serializable
|
||||
@@ -6,13 +6,13 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.di
|
||||
package id.databisnis.android.bachot.features.call.impl.di
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesTo
|
||||
import io.element.android.features.call.impl.receivers.DeclineCallBroadcastReceiver
|
||||
import io.element.android.features.call.impl.ui.ElementCallActivity
|
||||
import io.element.android.features.call.impl.ui.IncomingCallActivity
|
||||
import id.databisnis.android.bachot.features.call.impl.receivers.DeclineCallBroadcastReceiver
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.ElementCallActivity
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.IncomingCallActivity
|
||||
|
||||
@ContributesTo(AppScope::class)
|
||||
interface CallBindings {
|
||||
@@ -6,13 +6,13 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.notifications
|
||||
package id.databisnis.android.bachot.features.call.impl.notifications
|
||||
|
||||
import android.os.Parcelable
|
||||
import io.element.android.libraries.matrix.api.core.EventId
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.api.core.SessionId
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.EventId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
|
||||
import kotlinx.parcelize.Parcelize
|
||||
|
||||
@Parcelize
|
||||
@@ -5,7 +5,7 @@
|
||||
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
package io.element.android.features.call.impl.notifications
|
||||
package id.databisnis.android.bachot.features.call.impl.notifications
|
||||
|
||||
import android.app.Notification
|
||||
import android.app.PendingIntent
|
||||
@@ -17,22 +17,22 @@ import androidx.core.app.NotificationCompat
|
||||
import androidx.core.app.PendingIntentCompat
|
||||
import androidx.core.app.Person
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.appconfig.ElementCallConfig
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.impl.receivers.DeclineCallBroadcastReceiver
|
||||
import io.element.android.features.call.impl.ui.IncomingCallActivity
|
||||
import io.element.android.features.call.impl.utils.IntentProvider
|
||||
import io.element.android.libraries.designsystem.components.avatar.AvatarData
|
||||
import io.element.android.libraries.designsystem.components.avatar.AvatarSize
|
||||
import io.element.android.libraries.designsystem.utils.CommonDrawables
|
||||
import io.element.android.libraries.di.annotations.ApplicationContext
|
||||
import io.element.android.libraries.matrix.api.MatrixClientProvider
|
||||
import io.element.android.libraries.matrix.api.core.EventId
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.api.core.SessionId
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import io.element.android.libraries.matrix.ui.media.ImageLoaderHolder
|
||||
import io.element.android.libraries.push.api.notifications.NotificationBitmapLoader
|
||||
import id.databisnis.android.bachot.appconfig.ElementCallConfig
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.impl.receivers.DeclineCallBroadcastReceiver
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.IncomingCallActivity
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.IntentProvider
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarData
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarSize
|
||||
import id.databisnis.android.bachot.libraries.designsystem.utils.CommonDrawables
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.ApplicationContext
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.MatrixClientProvider
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.EventId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.media.ImageLoaderHolder
|
||||
import id.databisnis.android.bachot.libraries.push.api.notifications.NotificationBitmapLoader
|
||||
import kotlin.time.Duration.Companion.seconds
|
||||
|
||||
/**
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.pip
|
||||
package id.databisnis.android.bachot.features.call.impl.pip
|
||||
|
||||
import io.element.android.features.call.impl.utils.PipController
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.PipController
|
||||
|
||||
sealed interface PictureInPictureEvents {
|
||||
data class SetPipController(val pipController: PipController) : PictureInPictureEvents
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.pip
|
||||
package id.databisnis.android.bachot.features.call.impl.pip
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.getValue
|
||||
@@ -15,9 +15,9 @@ import androidx.compose.runtime.remember
|
||||
import androidx.compose.runtime.rememberCoroutineScope
|
||||
import androidx.compose.runtime.setValue
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.features.call.impl.utils.PipController
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import io.element.android.libraries.core.log.logger.LoggerTag
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.PipController
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.libraries.core.log.logger.LoggerTag
|
||||
import kotlinx.coroutines.launch
|
||||
import timber.log.Timber
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.pip
|
||||
package id.databisnis.android.bachot.features.call.impl.pip
|
||||
|
||||
data class PictureInPictureState(
|
||||
val supportPip: Boolean,
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.pip
|
||||
package id.databisnis.android.bachot.features.call.impl.pip
|
||||
|
||||
fun aPictureInPictureState(
|
||||
supportPip: Boolean = false,
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.pip
|
||||
package id.databisnis.android.bachot.features.call.impl.pip
|
||||
|
||||
import android.content.Context
|
||||
import android.content.pm.PackageManager
|
||||
@@ -14,8 +14,8 @@ import android.os.Build
|
||||
import androidx.annotation.ChecksSdkIntAtLeast
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.libraries.core.bool.orFalse
|
||||
import io.element.android.libraries.di.annotations.ApplicationContext
|
||||
import id.databisnis.android.bachot.libraries.core.bool.orFalse
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.ApplicationContext
|
||||
|
||||
interface PipSupportProvider {
|
||||
@ChecksSdkIntAtLeast(Build.VERSION_CODES.O)
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.pip
|
||||
package id.databisnis.android.bachot.features.call.impl.pip
|
||||
|
||||
interface PipView {
|
||||
fun setPipParams()
|
||||
@@ -6,19 +6,19 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.receivers
|
||||
package id.databisnis.android.bachot.features.call.impl.receivers
|
||||
|
||||
import android.content.BroadcastReceiver
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import androidx.core.content.IntentCompat
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.impl.di.CallBindings
|
||||
import io.element.android.features.call.impl.notifications.CallNotificationData
|
||||
import io.element.android.features.call.impl.utils.ActiveCallManager
|
||||
import io.element.android.libraries.architecture.bindings
|
||||
import io.element.android.libraries.di.annotations.AppCoroutineScope
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.impl.di.CallBindings
|
||||
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.ActiveCallManager
|
||||
import id.databisnis.android.bachot.libraries.architecture.bindings
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.AppCoroutineScope
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.services
|
||||
package id.databisnis.android.bachot.features.call.impl.services
|
||||
|
||||
import android.Manifest
|
||||
import android.app.Service
|
||||
@@ -22,12 +22,12 @@ import androidx.core.app.NotificationManagerCompat
|
||||
import androidx.core.app.PendingIntentCompat
|
||||
import androidx.core.app.ServiceCompat
|
||||
import androidx.core.content.ContextCompat
|
||||
import io.element.android.features.call.impl.R
|
||||
import io.element.android.features.call.impl.ui.ElementCallActivity
|
||||
import io.element.android.libraries.core.extensions.runCatchingExceptions
|
||||
import io.element.android.libraries.designsystem.utils.CommonDrawables
|
||||
import io.element.android.libraries.push.api.notifications.ForegroundServiceType
|
||||
import io.element.android.libraries.push.api.notifications.NotificationIdProvider
|
||||
import id.databisnis.android.bachot.features.call.impl.R
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.ElementCallActivity
|
||||
import id.databisnis.android.bachot.libraries.core.extensions.runCatchingExceptions
|
||||
import id.databisnis.android.bachot.libraries.designsystem.utils.CommonDrawables
|
||||
import id.databisnis.android.bachot.libraries.push.api.notifications.ForegroundServiceType
|
||||
import id.databisnis.android.bachot.libraries.push.api.notifications.NotificationIdProvider
|
||||
import timber.log.Timber
|
||||
|
||||
/**
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.ui
|
||||
package id.databisnis.android.bachot.features.call.impl.ui
|
||||
|
||||
import io.element.android.features.call.impl.utils.WidgetMessageInterceptor
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.WidgetMessageInterceptor
|
||||
|
||||
sealed interface CallScreenEvents {
|
||||
data object Hangup : CallScreenEvents
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.ui
|
||||
package id.databisnis.android.bachot.features.call.impl.ui
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.DisposableEffect
|
||||
@@ -22,25 +22,25 @@ import dev.zacsweers.metro.Assisted
|
||||
import dev.zacsweers.metro.AssistedFactory
|
||||
import dev.zacsweers.metro.AssistedInject
|
||||
import im.vector.app.features.analytics.plan.MobileScreen
|
||||
import io.element.android.compound.theme.ElementTheme
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.impl.data.WidgetMessage
|
||||
import io.element.android.features.call.impl.utils.ActiveCallManager
|
||||
import io.element.android.features.call.impl.utils.CallWidgetProvider
|
||||
import io.element.android.features.call.impl.utils.WidgetMessageInterceptor
|
||||
import io.element.android.features.call.impl.utils.WidgetMessageSerializer
|
||||
import io.element.android.libraries.architecture.AsyncData
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import io.element.android.libraries.architecture.runCatchingUpdatingState
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import io.element.android.libraries.di.annotations.AppCoroutineScope
|
||||
import io.element.android.libraries.matrix.api.MatrixClientProvider
|
||||
import io.element.android.libraries.matrix.api.sync.SyncState
|
||||
import io.element.android.libraries.matrix.api.widget.MatrixWidgetDriver
|
||||
import io.element.android.libraries.network.useragent.UserAgentProvider
|
||||
import io.element.android.services.analytics.api.ScreenTracker
|
||||
import io.element.android.services.appnavstate.api.AppForegroundStateService
|
||||
import io.element.android.services.toolbox.api.systemclock.SystemClock
|
||||
import id.databisnis.android.bachot.compound.theme.ElementTheme
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.impl.data.WidgetMessage
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.ActiveCallManager
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.CallWidgetProvider
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.WidgetMessageInterceptor
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.WidgetMessageSerializer
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncData
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.libraries.architecture.runCatchingUpdatingState
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.AppCoroutineScope
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.MatrixClientProvider
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.sync.SyncState
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.widget.MatrixWidgetDriver
|
||||
import id.databisnis.android.bachot.libraries.network.useragent.UserAgentProvider
|
||||
import id.databisnis.android.bachot.services.analytics.api.ScreenTracker
|
||||
import id.databisnis.android.bachot.services.appnavstate.api.AppForegroundStateService
|
||||
import id.databisnis.android.bachot.services.toolbox.api.systemclock.SystemClock
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.flow.launchIn
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.ui
|
||||
package id.databisnis.android.bachot.features.call.impl.ui
|
||||
|
||||
import io.element.android.libraries.architecture.AsyncData
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncData
|
||||
|
||||
data class CallScreenState(
|
||||
val urlState: AsyncData<String>,
|
||||
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.ui
|
||||
package id.databisnis.android.bachot.features.call.impl.ui
|
||||
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
|
||||
import io.element.android.libraries.architecture.AsyncData
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncData
|
||||
|
||||
open class CallScreenStateProvider : PreviewParameterProvider<CallScreenState> {
|
||||
override val values: Sequence<CallScreenState>
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.ui
|
||||
package id.databisnis.android.bachot.features.call.impl.ui
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.view.ViewGroup
|
||||
@@ -32,22 +32,22 @@ import androidx.compose.ui.platform.LocalInspectionMode
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.tooling.preview.PreviewParameter
|
||||
import androidx.compose.ui.viewinterop.AndroidView
|
||||
import io.element.android.features.call.impl.R
|
||||
import io.element.android.features.call.impl.pip.PictureInPictureEvents
|
||||
import io.element.android.features.call.impl.pip.PictureInPictureState
|
||||
import io.element.android.features.call.impl.pip.aPictureInPictureState
|
||||
import io.element.android.features.call.impl.utils.InvalidAudioDeviceReason
|
||||
import io.element.android.features.call.impl.utils.WebViewAudioManager
|
||||
import io.element.android.features.call.impl.utils.WebViewPipController
|
||||
import io.element.android.features.call.impl.utils.WebViewWidgetMessageInterceptor
|
||||
import io.element.android.libraries.architecture.AsyncData
|
||||
import io.element.android.libraries.designsystem.components.ProgressDialog
|
||||
import io.element.android.libraries.designsystem.components.dialogs.ErrorDialog
|
||||
import io.element.android.libraries.designsystem.preview.ElementPreview
|
||||
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
|
||||
import io.element.android.libraries.designsystem.theme.components.Scaffold
|
||||
import io.element.android.libraries.designsystem.theme.components.Text
|
||||
import io.element.android.libraries.ui.strings.CommonStrings
|
||||
import id.databisnis.android.bachot.features.call.impl.R
|
||||
import id.databisnis.android.bachot.features.call.impl.pip.PictureInPictureEvents
|
||||
import id.databisnis.android.bachot.features.call.impl.pip.PictureInPictureState
|
||||
import id.databisnis.android.bachot.features.call.impl.pip.aPictureInPictureState
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.InvalidAudioDeviceReason
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.WebViewAudioManager
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.WebViewPipController
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.WebViewWidgetMessageInterceptor
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncData
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.ProgressDialog
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.dialogs.ErrorDialog
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Scaffold
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Text
|
||||
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
|
||||
import timber.log.Timber
|
||||
|
||||
typealias RequestPermissionCallback = (Array<String>) -> Unit
|
||||
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.ui
|
||||
package id.databisnis.android.bachot.features.call.impl.ui
|
||||
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.libraries.matrix.api.core.SessionId
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
|
||||
|
||||
fun CallType.getSessionId(): SessionId? {
|
||||
return when (this) {
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.ui
|
||||
package id.databisnis.android.bachot.features.call.impl.ui
|
||||
|
||||
import android.Manifest
|
||||
import android.app.PictureInPictureParams
|
||||
@@ -34,27 +34,27 @@ import androidx.core.content.IntentCompat
|
||||
import androidx.core.util.Consumer
|
||||
import androidx.lifecycle.Lifecycle
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.compound.colors.SemanticColorsLightDark
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.api.CallType.ExternalUrl
|
||||
import io.element.android.features.call.impl.DefaultElementCallEntryPoint
|
||||
import io.element.android.features.call.impl.di.CallBindings
|
||||
import io.element.android.features.call.impl.pip.PictureInPictureEvents
|
||||
import io.element.android.features.call.impl.pip.PictureInPicturePresenter
|
||||
import io.element.android.features.call.impl.pip.PictureInPictureState
|
||||
import io.element.android.features.call.impl.pip.PipView
|
||||
import io.element.android.features.call.impl.services.CallForegroundService
|
||||
import io.element.android.features.call.impl.utils.CallIntentDataParser
|
||||
import io.element.android.features.enterprise.api.EnterpriseService
|
||||
import io.element.android.libraries.androidutils.browser.ConsoleMessageLogger
|
||||
import io.element.android.libraries.architecture.Presenter
|
||||
import io.element.android.libraries.architecture.bindings
|
||||
import io.element.android.libraries.audio.api.AudioFocus
|
||||
import io.element.android.libraries.audio.api.AudioFocusRequester
|
||||
import io.element.android.libraries.core.log.logger.LoggerTag
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.libraries.designsystem.theme.ElementThemeApp
|
||||
import io.element.android.libraries.preferences.api.store.AppPreferencesStore
|
||||
import id.databisnis.android.bachot.compound.colors.SemanticColorsLightDark
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.api.CallType.ExternalUrl
|
||||
import id.databisnis.android.bachot.features.call.impl.DefaultElementCallEntryPoint
|
||||
import id.databisnis.android.bachot.features.call.impl.di.CallBindings
|
||||
import id.databisnis.android.bachot.features.call.impl.pip.PictureInPictureEvents
|
||||
import id.databisnis.android.bachot.features.call.impl.pip.PictureInPicturePresenter
|
||||
import id.databisnis.android.bachot.features.call.impl.pip.PictureInPictureState
|
||||
import id.databisnis.android.bachot.features.call.impl.pip.PipView
|
||||
import id.databisnis.android.bachot.features.call.impl.services.CallForegroundService
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.CallIntentDataParser
|
||||
import id.databisnis.android.bachot.features.enterprise.api.EnterpriseService
|
||||
import id.databisnis.android.bachot.libraries.androidutils.browser.ConsoleMessageLogger
|
||||
import id.databisnis.android.bachot.libraries.architecture.Presenter
|
||||
import id.databisnis.android.bachot.libraries.architecture.bindings
|
||||
import id.databisnis.android.bachot.libraries.audio.api.AudioFocus
|
||||
import id.databisnis.android.bachot.libraries.audio.api.AudioFocusRequester
|
||||
import id.databisnis.android.bachot.libraries.core.log.logger.LoggerTag
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.ElementThemeApp
|
||||
import id.databisnis.android.bachot.libraries.preferences.api.store.AppPreferencesStore
|
||||
import timber.log.Timber
|
||||
|
||||
private val loggerTag = LoggerTag("ElementCallActivity")
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.ui
|
||||
package id.databisnis.android.bachot.features.call.impl.ui
|
||||
|
||||
import android.os.Bundle
|
||||
import android.view.WindowManager
|
||||
@@ -18,19 +18,19 @@ import androidx.compose.runtime.remember
|
||||
import androidx.core.content.IntentCompat
|
||||
import androidx.lifecycle.lifecycleScope
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.compound.colors.SemanticColorsLightDark
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.api.ElementCallEntryPoint
|
||||
import io.element.android.features.call.impl.di.CallBindings
|
||||
import io.element.android.features.call.impl.notifications.CallNotificationData
|
||||
import io.element.android.features.call.impl.utils.ActiveCallManager
|
||||
import io.element.android.features.call.impl.utils.CallState
|
||||
import io.element.android.features.enterprise.api.EnterpriseService
|
||||
import io.element.android.libraries.architecture.bindings
|
||||
import io.element.android.libraries.core.meta.BuildMeta
|
||||
import io.element.android.libraries.designsystem.theme.ElementThemeApp
|
||||
import io.element.android.libraries.di.annotations.AppCoroutineScope
|
||||
import io.element.android.libraries.preferences.api.store.AppPreferencesStore
|
||||
import id.databisnis.android.bachot.compound.colors.SemanticColorsLightDark
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.api.ElementCallEntryPoint
|
||||
import id.databisnis.android.bachot.features.call.impl.di.CallBindings
|
||||
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.ActiveCallManager
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.CallState
|
||||
import id.databisnis.android.bachot.features.enterprise.api.EnterpriseService
|
||||
import id.databisnis.android.bachot.libraries.architecture.bindings
|
||||
import id.databisnis.android.bachot.libraries.core.meta.BuildMeta
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.ElementThemeApp
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.AppCoroutineScope
|
||||
import id.databisnis.android.bachot.libraries.preferences.api.store.AppPreferencesStore
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.flow.filter
|
||||
import kotlinx.coroutines.flow.launchIn
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.ui
|
||||
package id.databisnis.android.bachot.features.call.impl.ui
|
||||
|
||||
import androidx.compose.foundation.border
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
@@ -32,24 +32,24 @@ import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.text.style.TextOverflow
|
||||
import androidx.compose.ui.unit.Dp
|
||||
import androidx.compose.ui.unit.dp
|
||||
import io.element.android.compound.theme.ElementTheme
|
||||
import io.element.android.compound.tokens.generated.CompoundIcons
|
||||
import io.element.android.features.call.impl.R
|
||||
import io.element.android.features.call.impl.notifications.CallNotificationData
|
||||
import io.element.android.libraries.designsystem.background.OnboardingBackground
|
||||
import io.element.android.libraries.designsystem.components.avatar.Avatar
|
||||
import io.element.android.libraries.designsystem.components.avatar.AvatarData
|
||||
import io.element.android.libraries.designsystem.components.avatar.AvatarSize
|
||||
import io.element.android.libraries.designsystem.components.avatar.AvatarType
|
||||
import io.element.android.libraries.designsystem.preview.ElementPreview
|
||||
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
|
||||
import io.element.android.libraries.designsystem.theme.components.Icon
|
||||
import io.element.android.libraries.designsystem.theme.components.Text
|
||||
import io.element.android.libraries.matrix.api.core.EventId
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.api.core.SessionId
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import io.element.android.libraries.ui.strings.CommonStrings
|
||||
import id.databisnis.android.bachot.compound.theme.ElementTheme
|
||||
import id.databisnis.android.bachot.compound.tokens.generated.CompoundIcons
|
||||
import id.databisnis.android.bachot.features.call.impl.R
|
||||
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
|
||||
import id.databisnis.android.bachot.libraries.designsystem.background.OnboardingBackground
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.Avatar
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarData
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarSize
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarType
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.ElementPreview
|
||||
import id.databisnis.android.bachot.libraries.designsystem.preview.PreviewsDayNight
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Icon
|
||||
import id.databisnis.android.bachot.libraries.designsystem.theme.components.Text
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.EventId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.UserId
|
||||
import id.databisnis.android.bachot.libraries.ui.strings.CommonStrings
|
||||
|
||||
@Composable
|
||||
internal fun IncomingCallScreen(
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.ui
|
||||
package id.databisnis.android.bachot.features.call.impl.ui
|
||||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.platform.LocalConfiguration
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.content.Context
|
||||
@@ -19,22 +19,22 @@ import coil3.annotation.DelicateCoilApi
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import dev.zacsweers.metro.SingleIn
|
||||
import io.element.android.appconfig.ElementCallConfig
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.api.CurrentCall
|
||||
import io.element.android.features.call.impl.notifications.CallNotificationData
|
||||
import io.element.android.features.call.impl.notifications.RingingCallNotificationCreator
|
||||
import io.element.android.libraries.core.extensions.runCatchingExceptions
|
||||
import io.element.android.libraries.di.annotations.AppCoroutineScope
|
||||
import io.element.android.libraries.di.annotations.ApplicationContext
|
||||
import io.element.android.libraries.matrix.api.MatrixClientProvider
|
||||
import io.element.android.libraries.matrix.api.core.SessionId
|
||||
import io.element.android.libraries.matrix.ui.media.ImageLoaderHolder
|
||||
import io.element.android.libraries.push.api.notifications.ForegroundServiceType
|
||||
import io.element.android.libraries.push.api.notifications.NotificationIdProvider
|
||||
import io.element.android.libraries.push.api.notifications.OnMissedCallNotificationHandler
|
||||
import io.element.android.services.appnavstate.api.AppForegroundStateService
|
||||
import io.element.android.services.toolbox.api.systemclock.SystemClock
|
||||
import id.databisnis.android.bachot.appconfig.ElementCallConfig
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.api.CurrentCall
|
||||
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
|
||||
import id.databisnis.android.bachot.features.call.impl.notifications.RingingCallNotificationCreator
|
||||
import id.databisnis.android.bachot.libraries.core.extensions.runCatchingExceptions
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.AppCoroutineScope
|
||||
import id.databisnis.android.bachot.libraries.di.annotations.ApplicationContext
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.MatrixClientProvider
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.media.ImageLoaderHolder
|
||||
import id.databisnis.android.bachot.libraries.push.api.notifications.ForegroundServiceType
|
||||
import id.databisnis.android.bachot.libraries.push.api.notifications.NotificationIdProvider
|
||||
import id.databisnis.android.bachot.libraries.push.api.notifications.OnMissedCallNotificationHandler
|
||||
import id.databisnis.android.bachot.services.appnavstate.api.AppForegroundStateService
|
||||
import id.databisnis.android.bachot.services.toolbox.api.systemclock.SystemClock
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
||||
import kotlinx.coroutines.Job
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import android.net.Uri
|
||||
import androidx.core.net.toUri
|
||||
@@ -6,11 +6,11 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.api.core.SessionId
|
||||
import io.element.android.libraries.matrix.api.widget.MatrixWidgetDriver
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.widget.MatrixWidgetDriver
|
||||
|
||||
interface CallWidgetProvider {
|
||||
suspend fun getWidget(
|
||||
@@ -6,12 +6,12 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.features.call.impl.BuildConfig
|
||||
import io.element.android.libraries.matrix.api.widget.CallAnalyticCredentialsProvider
|
||||
import id.databisnis.android.bachot.features.call.impl.BuildConfig
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.widget.CallAnalyticCredentialsProvider
|
||||
|
||||
@ContributesBinding(AppScope::class)
|
||||
class DefaultCallAnalyticCredentialsProvider : CallAnalyticCredentialsProvider {
|
||||
@@ -6,18 +6,18 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import io.element.android.libraries.core.extensions.runCatchingExceptions
|
||||
import io.element.android.libraries.matrix.api.MatrixClientProvider
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.api.core.SessionId
|
||||
import io.element.android.libraries.matrix.api.room.isDm
|
||||
import io.element.android.libraries.matrix.api.widget.CallWidgetSettingsProvider
|
||||
import io.element.android.libraries.preferences.api.store.AppPreferencesStore
|
||||
import io.element.android.services.appnavstate.api.ActiveRoomsHolder
|
||||
import id.databisnis.android.bachot.libraries.core.extensions.runCatchingExceptions
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.MatrixClientProvider
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.RoomId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.core.SessionId
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.room.isDm
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.widget.CallWidgetSettingsProvider
|
||||
import id.databisnis.android.bachot.libraries.preferences.api.store.AppPreferencesStore
|
||||
import id.databisnis.android.bachot.services.appnavstate.api.ActiveRoomsHolder
|
||||
import kotlinx.coroutines.flow.firstOrNull
|
||||
|
||||
private const val EMBEDDED_CALL_WIDGET_BASE_URL = "https://appassets.androidplatform.net/element-call/index.html"
|
||||
@@ -6,13 +6,13 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import dev.zacsweers.metro.AppScope
|
||||
import dev.zacsweers.metro.ContributesBinding
|
||||
import dev.zacsweers.metro.SingleIn
|
||||
import io.element.android.features.call.api.CurrentCall
|
||||
import io.element.android.features.call.api.CurrentCallService
|
||||
import id.databisnis.android.bachot.features.call.api.CurrentCall
|
||||
import id.databisnis.android.bachot.features.call.api.CurrentCallService
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
|
||||
@SingleIn(AppScope::class)
|
||||
@@ -6,15 +6,15 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import android.app.PendingIntent
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import androidx.core.app.PendingIntentCompat
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.impl.DefaultElementCallEntryPoint
|
||||
import io.element.android.features.call.impl.ui.ElementCallActivity
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.impl.DefaultElementCallEntryPoint
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.ElementCallActivity
|
||||
|
||||
internal object IntentProvider {
|
||||
fun createIntent(context: Context, callType: CallType): Intent = Intent(context, ElementCallActivity::class.java).apply {
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
interface PipController {
|
||||
suspend fun canEnterPip(): Boolean
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import android.content.Context
|
||||
import android.media.AudioDeviceCallback
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import android.webkit.WebView
|
||||
import kotlin.coroutines.resume
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import android.graphics.Bitmap
|
||||
import android.net.http.SslError
|
||||
@@ -21,7 +21,7 @@ import androidx.core.net.toUri
|
||||
import androidx.webkit.WebViewAssetLoader
|
||||
import androidx.webkit.WebViewCompat
|
||||
import androidx.webkit.WebViewFeature
|
||||
import io.element.android.features.call.impl.BuildConfig
|
||||
import id.databisnis.android.bachot.features.call.impl.BuildConfig
|
||||
import kotlinx.coroutines.flow.MutableSharedFlow
|
||||
import timber.log.Timber
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
|
||||
@@ -6,12 +6,12 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.utils
|
||||
package id.databisnis.android.bachot.features.call.impl.utils
|
||||
|
||||
import dev.zacsweers.metro.Inject
|
||||
import io.element.android.features.call.impl.data.WidgetMessage
|
||||
import io.element.android.libraries.androidutils.json.JsonProvider
|
||||
import io.element.android.libraries.core.extensions.runCatchingExceptions
|
||||
import id.databisnis.android.bachot.features.call.impl.data.WidgetMessage
|
||||
import id.databisnis.android.bachot.libraries.androidutils.json.JsonProvider
|
||||
import id.databisnis.android.bachot.libraries.core.extensions.runCatchingExceptions
|
||||
|
||||
@Inject
|
||||
class WidgetMessageSerializer(
|
||||
@@ -6,21 +6,21 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call
|
||||
package id.databisnis.android.bachot.features.call
|
||||
|
||||
import android.content.Intent
|
||||
import androidx.test.platform.app.InstrumentationRegistry
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.impl.DefaultElementCallEntryPoint
|
||||
import io.element.android.features.call.impl.notifications.CallNotificationData
|
||||
import io.element.android.features.call.impl.ui.ElementCallActivity
|
||||
import io.element.android.features.call.utils.FakeActiveCallManager
|
||||
import io.element.android.libraries.matrix.test.AN_EVENT_ID
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
import io.element.android.libraries.matrix.test.A_SESSION_ID
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID_2
|
||||
import io.element.android.tests.testutils.lambda.lambdaRecorder
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.impl.DefaultElementCallEntryPoint
|
||||
import id.databisnis.android.bachot.features.call.impl.notifications.CallNotificationData
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.ElementCallActivity
|
||||
import id.databisnis.android.bachot.features.call.utils.FakeActiveCallManager
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.AN_EVENT_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_ROOM_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_SESSION_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_USER_ID_2
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaRecorder
|
||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
||||
import kotlinx.coroutines.test.TestScope
|
||||
import kotlinx.coroutines.test.advanceTimeBy
|
||||
@@ -6,12 +6,12 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call
|
||||
package id.databisnis.android.bachot.features.call
|
||||
|
||||
import android.Manifest
|
||||
import android.webkit.PermissionRequest
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.features.call.impl.ui.mapWebkitPermissions
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.mapWebkitPermissions
|
||||
import org.junit.Test
|
||||
|
||||
class MapWebkitPermissionsTest {
|
||||
@@ -6,10 +6,10 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.pip
|
||||
package id.databisnis.android.bachot.features.call.impl.pip
|
||||
|
||||
import io.element.android.features.call.impl.utils.PipController
|
||||
import io.element.android.tests.testutils.lambda.lambdaError
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.PipController
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaError
|
||||
|
||||
class FakePipController(
|
||||
private val canEnterPipResult: () -> Boolean = { lambdaError() },
|
||||
@@ -6,7 +6,7 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.pip
|
||||
package id.databisnis.android.bachot.features.call.impl.pip
|
||||
|
||||
class FakePipSupportProvider(
|
||||
private val isPipSupported: Boolean
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.pip
|
||||
package id.databisnis.android.bachot.features.call.impl.pip
|
||||
|
||||
import io.element.android.tests.testutils.lambda.lambdaError
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaError
|
||||
|
||||
class FakePipView(
|
||||
private val setPipParamsResult: () -> Unit = { lambdaError() },
|
||||
@@ -6,13 +6,13 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.impl.pip
|
||||
package id.databisnis.android.bachot.features.call.impl.pip
|
||||
|
||||
import app.cash.molecule.RecompositionMode
|
||||
import app.cash.molecule.moleculeFlow
|
||||
import app.cash.turbine.test
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.tests.testutils.lambda.lambdaRecorder
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaRecorder
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Test
|
||||
|
||||
@@ -6,23 +6,23 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.notifications
|
||||
package id.databisnis.android.bachot.features.call.notifications
|
||||
|
||||
import androidx.core.graphics.drawable.IconCompat
|
||||
import androidx.test.platform.app.InstrumentationRegistry
|
||||
import coil3.ImageLoader
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.features.call.impl.notifications.RingingCallNotificationCreator
|
||||
import io.element.android.libraries.designsystem.components.avatar.AvatarData
|
||||
import io.element.android.libraries.matrix.test.AN_EVENT_ID
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
import io.element.android.libraries.matrix.test.A_SESSION_ID
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID_2
|
||||
import io.element.android.libraries.matrix.test.FakeMatrixClient
|
||||
import io.element.android.libraries.matrix.test.FakeMatrixClientProvider
|
||||
import io.element.android.libraries.matrix.ui.media.test.FakeImageLoaderHolder
|
||||
import io.element.android.libraries.push.test.notifications.push.FakeNotificationBitmapLoader
|
||||
import io.element.android.tests.testutils.lambda.lambdaRecorder
|
||||
import id.databisnis.android.bachot.features.call.impl.notifications.RingingCallNotificationCreator
|
||||
import id.databisnis.android.bachot.libraries.designsystem.components.avatar.AvatarData
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.AN_EVENT_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_ROOM_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_SESSION_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_USER_ID_2
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.FakeMatrixClient
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.FakeMatrixClientProvider
|
||||
import id.databisnis.android.bachot.libraries.matrix.ui.media.test.FakeImageLoaderHolder
|
||||
import id.databisnis.android.bachot.libraries.push.test.notifications.push.FakeNotificationBitmapLoader
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaRecorder
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Test
|
||||
import org.junit.runner.RunWith
|
||||
@@ -6,40 +6,40 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.ui
|
||||
package id.databisnis.android.bachot.features.call.ui
|
||||
|
||||
import app.cash.molecule.RecompositionMode
|
||||
import app.cash.molecule.moleculeFlow
|
||||
import app.cash.turbine.test
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import im.vector.app.features.analytics.plan.MobileScreen
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.impl.ui.CallScreenEvents
|
||||
import io.element.android.features.call.impl.ui.CallScreenNavigator
|
||||
import io.element.android.features.call.impl.ui.CallScreenPresenter
|
||||
import io.element.android.features.call.impl.utils.WidgetMessageSerializer
|
||||
import io.element.android.features.call.utils.FakeActiveCallManager
|
||||
import io.element.android.features.call.utils.FakeCallWidgetProvider
|
||||
import io.element.android.features.call.utils.FakeWidgetMessageInterceptor
|
||||
import io.element.android.libraries.androidutils.json.DefaultJsonProvider
|
||||
import io.element.android.libraries.architecture.AsyncData
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import io.element.android.libraries.matrix.api.sync.SyncState
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
import io.element.android.libraries.matrix.test.A_SESSION_ID
|
||||
import io.element.android.libraries.matrix.test.FakeMatrixClient
|
||||
import io.element.android.libraries.matrix.test.FakeMatrixClientProvider
|
||||
import io.element.android.libraries.matrix.test.sync.FakeSyncService
|
||||
import io.element.android.libraries.matrix.test.widget.FakeMatrixWidgetDriver
|
||||
import io.element.android.libraries.network.useragent.UserAgentProvider
|
||||
import io.element.android.services.analytics.api.ScreenTracker
|
||||
import io.element.android.services.analytics.test.FakeScreenTracker
|
||||
import io.element.android.services.appnavstate.test.FakeAppForegroundStateService
|
||||
import io.element.android.services.toolbox.api.systemclock.SystemClock
|
||||
import io.element.android.tests.testutils.WarmUpRule
|
||||
import io.element.android.tests.testutils.lambda.lambdaRecorder
|
||||
import io.element.android.tests.testutils.lambda.value
|
||||
import io.element.android.tests.testutils.testCoroutineDispatchers
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.CallScreenEvents
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.CallScreenNavigator
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.CallScreenPresenter
|
||||
import id.databisnis.android.bachot.features.call.impl.utils.WidgetMessageSerializer
|
||||
import id.databisnis.android.bachot.features.call.utils.FakeActiveCallManager
|
||||
import id.databisnis.android.bachot.features.call.utils.FakeCallWidgetProvider
|
||||
import id.databisnis.android.bachot.features.call.utils.FakeWidgetMessageInterceptor
|
||||
import id.databisnis.android.bachot.libraries.androidutils.json.DefaultJsonProvider
|
||||
import id.databisnis.android.bachot.libraries.architecture.AsyncData
|
||||
import id.databisnis.android.bachot.libraries.core.coroutine.CoroutineDispatchers
|
||||
import id.databisnis.android.bachot.libraries.matrix.api.sync.SyncState
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_ROOM_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_SESSION_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.FakeMatrixClient
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.FakeMatrixClientProvider
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.sync.FakeSyncService
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.widget.FakeMatrixWidgetDriver
|
||||
import id.databisnis.android.bachot.libraries.network.useragent.UserAgentProvider
|
||||
import id.databisnis.android.bachot.services.analytics.api.ScreenTracker
|
||||
import id.databisnis.android.bachot.services.analytics.test.FakeScreenTracker
|
||||
import id.databisnis.android.bachot.services.appnavstate.test.FakeAppForegroundStateService
|
||||
import id.databisnis.android.bachot.services.toolbox.api.systemclock.SystemClock
|
||||
import id.databisnis.android.bachot.tests.testutils.WarmUpRule
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.lambdaRecorder
|
||||
import id.databisnis.android.bachot.tests.testutils.lambda.value
|
||||
import id.databisnis.android.bachot.tests.testutils.testCoroutineDispatchers
|
||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
||||
import kotlinx.coroutines.cancelAndJoin
|
||||
import kotlinx.coroutines.launch
|
||||
@@ -6,13 +6,13 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.ui
|
||||
package id.databisnis.android.bachot.features.call.ui
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.features.call.api.CallType
|
||||
import io.element.android.features.call.impl.ui.getSessionId
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
import io.element.android.libraries.matrix.test.A_SESSION_ID
|
||||
import id.databisnis.android.bachot.features.call.api.CallType
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.getSessionId
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_ROOM_ID
|
||||
import id.databisnis.android.bachot.libraries.matrix.test.A_SESSION_ID
|
||||
import org.junit.Test
|
||||
|
||||
class CallTypeTest {
|
||||
@@ -6,9 +6,9 @@
|
||||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.features.call.ui
|
||||
package id.databisnis.android.bachot.features.call.ui
|
||||
|
||||
import io.element.android.features.call.impl.ui.CallScreenNavigator
|
||||
import id.databisnis.android.bachot.features.call.impl.ui.CallScreenNavigator
|
||||
|
||||
class FakeCallScreenNavigator : CallScreenNavigator {
|
||||
var closeCalled = false
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user