Skip to content

Commit 3088ccd

Browse files
committed
[wip]migrate precompose
1 parent 7840386 commit 3088ccd

File tree

226 files changed

+4978
-1796
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

226 files changed

+4978
-1796
lines changed

app/build.gradle.kts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,12 +54,15 @@ android {
5454
}
5555

5656
dependencies {
57-
implementation("androidx.core:core-splashscreen:1.0.0-beta01")
57+
implementation("androidx.core:core-splashscreen:1.0.0-beta02")
5858
implementation("androidx.activity:activity-compose:${Versions.Androidx.activityCompose}")
5959
implementation(projects.entry)
6060
implementation(projects.common)
6161
implementation(projects.common.gecko)
6262

63+
// Koin
64+
implementation("io.insert-koin:koin-android:${Versions.koin}")
65+
6366
if (enableFirebase) {
6467
implementation("com.google.firebase:firebase-analytics-ktx:${Versions.Firebase.analytics}")
6568
implementation(platform("com.google.firebase:firebase-bom:${Versions.Firebase.bom}"))

app/src/main/java/com/dimension/maskbook/ComposeActivity.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,23 +23,23 @@ package com.dimension.maskbook
2323
import android.content.Intent
2424
import android.os.Bundle
2525
import android.view.WindowManager
26-
import androidx.activity.compose.setContent
2726
import androidx.compose.runtime.CompositionLocalProvider
2827
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
2928
import androidx.core.view.WindowCompat
3029
import androidx.core.view.WindowInsetsControllerCompat
31-
import androidx.fragment.app.FragmentActivity
3230
import coil.compose.LocalImageLoader
3331
import com.dimension.maskbook.common.gecko.PromptFeatureDelegate
3432
import com.dimension.maskbook.common.gecko.WebContentController
3533
import com.dimension.maskbook.common.manager.ImageLoaderManager
3634
import com.dimension.maskbook.common.ui.widget.LocalWindowInsetsController
3735
import com.dimension.maskbook.entry.ui.App
3836
import com.google.accompanist.insets.ProvideWindowInsets
37+
import moe.tlaster.precompose.lifecycle.PreComposeActivity
38+
import moe.tlaster.precompose.lifecycle.setContent
3939
import org.koin.android.ext.android.get
4040
import org.koin.android.ext.android.inject
4141

42-
class ComposeActivity : FragmentActivity() {
42+
class ComposeActivity : PreComposeActivity() {
4343

4444
private lateinit var promptFeature: PromptFeatureDelegate
4545
private val imageLoaderManager: ImageLoaderManager by inject()

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ allprojects {
99
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
1010
kotlinOptions {
1111
jvmTarget = Versions.Java.jvmTarget
12-
allWarningsAsErrors = true
12+
// allWarningsAsErrors = true
1313
freeCompilerArgs = listOf(
1414
"-opt-in=kotlin.RequiresOptIn",
1515
)

common/build.gradle.kts

Lines changed: 46 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -10,29 +10,18 @@ kotlin {
1010
android()
1111
sourceSets {
1212
val commonMain by getting {
13-
dependencies {
14-
implementation(projects.common.routeProcessor.annotations)
15-
kspAndroid(projects.common.routeProcessor)
16-
api(projects.common.bigDecimal)
17-
}
18-
}
19-
val commonTest by getting {
20-
dependencies {
21-
implementation(kotlin("test"))
22-
}
23-
}
24-
val androidMain by getting {
13+
kotlin.srcDir("src/commonMain/route")
2514
dependencies {
2615
api(projects.wallet.export)
2716
api(projects.labs.export)
2817
api(projects.persona.export)
2918
api(projects.setting.export)
3019
api(projects.extension.export)
31-
api(projects.localization)
32-
api(projects.common.retrofit)
33-
api(projects.common.okhttp)
3420
api(projects.common.bigDecimal)
3521

22+
implementation(projects.common.routeProcessor.annotations)
23+
kspAndroid(projects.common.routeProcessor)
24+
3625
// Compose
3726
api("org.jetbrains.compose.ui:ui:${Versions.compose_jb}")
3827
api("org.jetbrains.compose.ui:ui-util:${Versions.compose_jb}")
@@ -43,16 +32,44 @@ kotlin {
4332
api("org.jetbrains.compose.ui:ui-tooling:${Versions.compose_jb}")
4433

4534
// Koin
46-
api("io.insert-koin:koin-android:${Versions.koin}")
47-
api("io.insert-koin:koin-androidx-compose:${Versions.koin}")
35+
api("io.insert-koin:koin-core:${Versions.koin}")
36+
37+
// coroutines
38+
api("org.jetbrains.kotlinx:kotlinx-coroutines-core:${Versions.Kotlin.coroutines}")
39+
40+
// serialization
41+
api("org.jetbrains.kotlinx:kotlinx-serialization-json:${Versions.Kotlin.serialization}")
42+
43+
// okhttp
44+
api("com.squareup.okhttp3:okhttp:${Versions.okhttp}")
45+
implementation("com.squareup.okhttp3:logging-interceptor:${Versions.okhttp}")
46+
47+
// retrofit
48+
api("com.squareup.retrofit2:retrofit:${Versions.retrofit}")
49+
api("com.squareup.retrofit2:converter-scalars:${Versions.retrofit}")
50+
api("com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter:${Versions.retrofitSerialization}")
51+
}
52+
}
53+
val commonTest by getting {
54+
dependencies {
55+
implementation(kotlin("test"))
56+
}
57+
}
58+
val androidMain by getting {
59+
dependencies {
60+
api(projects.localization)
61+
62+
// Koin
63+
// api("io.insert-koin:koin-android:${Versions.koin}")
64+
// api("io.insert-koin:koin-androidx-compose:${Versions.koin}")
4865

4966
// Lifecycle
50-
api("androidx.lifecycle:lifecycle-runtime-ktx:${Versions.lifecycle}")
51-
api("androidx.lifecycle:lifecycle-livedata-ktx:${Versions.lifecycle}")
52-
api("androidx.lifecycle:lifecycle-viewmodel-ktx:${Versions.lifecycle}")
53-
api("androidx.lifecycle:lifecycle-viewmodel-savedstate:${Versions.lifecycle}")
54-
api("androidx.lifecycle:lifecycle-viewmodel-compose:${Versions.lifecycle}")
55-
api("androidx.lifecycle:lifecycle-common-java8:${Versions.lifecycle}")
67+
// api("androidx.lifecycle:lifecycle-runtime-ktx:${Versions.lifecycle}")
68+
// api("androidx.lifecycle:lifecycle-livedata-ktx:${Versions.lifecycle}")
69+
// api("androidx.lifecycle:lifecycle-viewmodel-ktx:${Versions.lifecycle}")
70+
// api("androidx.lifecycle:lifecycle-viewmodel-savedstate:${Versions.lifecycle}")
71+
// api("androidx.lifecycle:lifecycle-viewmodel-compose:${Versions.lifecycle}")
72+
// api("androidx.lifecycle:lifecycle-common-java8:${Versions.lifecycle}")
5673

5774
// Coil
5875
api("io.coil-kt:coil-compose:${Versions.coil}")
@@ -62,28 +79,26 @@ kotlin {
6279
api("com.google.accompanist:accompanist-pager:${Versions.accompanist}")
6380
api("com.google.accompanist:accompanist-pager-indicators:${Versions.accompanist}")
6481
api("com.google.accompanist:accompanist-swiperefresh:${Versions.accompanist}")
65-
api("com.google.accompanist:accompanist-navigation-animation:${Versions.accompanist}")
66-
api("com.google.accompanist:accompanist-navigation-material:${Versions.accompanist}")
82+
// api("com.google.accompanist:accompanist-navigation-animation:${Versions.accompanist}")
83+
// api("com.google.accompanist:accompanist-navigation-material:${Versions.accompanist}")
6784
api("com.google.accompanist:accompanist-permissions:${Versions.accompanist}")
6885
api("com.google.accompanist:accompanist-insets:${Versions.accompanist}")
6986

7087
// coroutines
71-
api("org.jetbrains.kotlinx:kotlinx-coroutines-core:${Versions.Kotlin.coroutines}")
88+
// api("org.jetbrains.kotlinx:kotlinx-coroutines-core:${Versions.Kotlin.coroutines}")
7289
api("org.jetbrains.kotlinx:kotlinx-coroutines-android:${Versions.Kotlin.coroutines}")
7390

7491
// Androidx
7592
api("androidx.core:core-ktx:${Versions.Androidx.core}")
7693
api("androidx.appcompat:appcompat:${Versions.Androidx.appcompat}")
7794
api("androidx.activity:activity-ktx:${Versions.Androidx.activity}")
95+
api("androidx.activity:activity-compose:${Versions.Androidx.activity}")
7896
api("androidx.fragment:fragment-ktx:${Versions.Androidx.fragment}")
7997
api("androidx.datastore:datastore-preferences:${Versions.datastore}")
80-
api("androidx.navigation:navigation-ui-ktx:${Versions.navigation}")
81-
api("androidx.navigation:navigation-compose:${Versions.navigation}")
98+
// api("androidx.navigation:navigation-ui-ktx:${Versions.navigation}")
99+
// api("androidx.navigation:navigation-compose:${Versions.navigation}")
82100
implementation("androidx.biometric:biometric-ktx:${Versions.Androidx.biometric}")
83101

84-
// serialization
85-
api("org.jetbrains.kotlinx:kotlinx-serialization-json:${Versions.Kotlin.serialization}")
86-
87102
// sqlite
88103
api("androidx.room:room-runtime:${Versions.Androidx.room}")
89104
api("androidx.room:room-ktx:${Versions.Androidx.room}")

common/okhttp/build.gradle.kts

Lines changed: 0 additions & 25 deletions
This file was deleted.

common/okhttp/consumer-rules.pro

Whitespace-only changes.

common/okhttp/proguard-rules.pro

Lines changed: 0 additions & 21 deletions
This file was deleted.

common/okhttp/src/androidMain/AndroidManifest.xml

Lines changed: 0 additions & 4 deletions
This file was deleted.

common/retrofit/build.gradle.kts

Lines changed: 0 additions & 28 deletions
This file was deleted.

common/retrofit/consumer-rules.pro

Whitespace-only changes.

0 commit comments

Comments
 (0)