diff --git a/build.gradle b/build.gradle index 04f919a0f3..b617ac229d 100644 --- a/build.gradle +++ b/build.gradle @@ -5,6 +5,8 @@ plugins { id 'com.android.application' version "8.1.4" id 'com.android.library' version "8.1.4" apply false id 'org.jetbrains.kotlin.android' version "1.9.20" + // TODO: Remove this after Dagger/Hilt finished fully migration to KSP. + id 'org.jetbrains.kotlin.kapt' version "1.9.20" apply false id 'org.jetbrains.kotlin.plugin.parcelize' version "1.9.20" id 'org.jetbrains.kotlin.plugin.serialization' version "1.9.20" id "com.google.devtools.ksp" version "1.9.20-1.0.14" @@ -19,7 +21,7 @@ allprojects { plugins.withType(AndroidBasePlugin).configureEach { apply plugin: 'org.gradle.android.cache-fix' - project.android { + android { compileSdk 34 defaultConfig { minSdk 26 @@ -31,12 +33,35 @@ allprojects { checkReleaseBuilds false } } - project.dependencies { + dependencies { implementation 'androidx.core:core-ktx:1.12.0' implementation 'androidx.appcompat:appcompat:1.6.1' } } + plugins.withId('com.google.protobuf') { + def protocVersion = '3.25.1' + protobuf { + // Configure the protoc executable + protoc { + artifact = "com.google.protobuf:protoc:${protocVersion}" + } + generateProtoTasks { + all().configureEach { task -> + task.builtins { + remove java + java { + option "lite" + } + } + } + } + } + dependencies { + implementation "com.google.protobuf:protobuf-javalite:$protocVersion" + } + } + plugins.withType(JavaBasePlugin).configureEach { java { toolchain.languageVersion = JavaLanguageVersion.of(17) @@ -44,11 +69,9 @@ allprojects { } tasks.withType(KotlinCompile).configureEach { - compilerOptions { - freeCompilerArgs.add( - "-Xjvm-default=all", - ) - } + compilerOptions.freeCompilerArgs.add( + "-Xjvm-default=all", + ) } ext.addFrameworkJar = { String name -> @@ -65,14 +88,24 @@ allprojects { } } } + + ext.compileOnlyCommonJars = { + dependencies { + compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'WindowManager-Shell.jar') + compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'core.jar') + compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'seeder.jar') + compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'SystemUI-core.jar') + compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'SystemUI-statsd.jar') + } + } } // todo remove ext block after migrating to version catalog ext { FRAMEWORK_PREBUILTS_DIR = "$rootDir/prebuilts/libs" accompanist_version = '0.32.0' + daggerVersion = '2.48.1' libsu_version = '5.2.1' - protocVersion = '3.25.1' room_version = '2.6.0' optoVersion = "1.0.18" } @@ -173,8 +206,7 @@ android { debug { applicationIdSuffix ".debug" resValue("string", "derived_app_name", "Lawnchair (Debug)") - minifyEnabled false - shrinkResources false + signingConfig releaseSigning proguardFiles "proguard-android-optimize.txt", "proguard.pro" } @@ -309,16 +341,9 @@ android { manifest.srcFile "quickstep/AndroidManifest.xml" } } - - addFrameworkJar('android.jar') } -spotless { - kotlin { - ktlint("1.0.1") - target("lawnchair/src/**/*.kt") - } -} +addFrameworkJar('framework-13.jar') dependencies { implementation projects.iconloaderlib @@ -371,7 +396,7 @@ dependencies { implementation "com.google.accompanist:accompanist-permissions:$accompanist_version" implementation "com.google.accompanist:accompanist-systemuicontroller:$accompanist_version" implementation "com.google.android.material:material:1.10.0" - implementation "io.github.fornewid:material-motion-compose-core:1.0.6" + implementation "io.github.fornewid:material-motion-compose-core:1.0.7" implementation 'dev.kdrag0n:colorkt:1.0.5' implementation 'io.coil-kt:coil-compose:2.5.0' implementation 'me.xdrop:fuzzywuzzy:1.4.0' @@ -389,8 +414,6 @@ dependencies { implementation "com.github.topjohnwu.libsu:core:$libsu_version" implementation "com.github.topjohnwu.libsu:service:$libsu_version" - implementation "com.google.protobuf:protobuf-javalite:$protocVersion" - // Persian Date implementation 'com.github.samanzamani:PersianDate:1.7.1' @@ -408,20 +431,10 @@ ksp { arg("room.incremental", "true") } -protobuf { - // Configure the protoc executable - protoc { - artifact = "com.google.protobuf:protoc:${protocVersion}" - } - generateProtoTasks { - all().configureEach { task -> - task.builtins { - remove java - java { - option "lite" - } - } - } +spotless { + kotlin { + ktlint("1.0.1") + target("lawnchair/src/**/*.kt") } } diff --git a/compatLib/build.gradle b/compatLib/build.gradle index e5cbd2d26d..b13173a454 100644 --- a/compatLib/build.gradle +++ b/compatLib/build.gradle @@ -4,5 +4,6 @@ plugins { android { namespace "app.lawnchair.compatlib" - addFrameworkJar('framework-12.jar') } + +addFrameworkJar('framework-12.jar') diff --git a/compatLibVR/build.gradle b/compatLibVR/build.gradle index bd22fa1a02..a75997d039 100644 --- a/compatLibVR/build.gradle +++ b/compatLibVR/build.gradle @@ -4,9 +4,10 @@ plugins { android { namespace "app.lawnchair.compatlib.eleven" - addFrameworkJar('framework-11.jar') } +addFrameworkJar('framework-11.jar') + dependencies { implementation projects.compatLib } diff --git a/compatLibVS/build.gradle b/compatLibVS/build.gradle index eef173a0c8..235b07c256 100644 --- a/compatLibVS/build.gradle +++ b/compatLibVS/build.gradle @@ -4,9 +4,10 @@ plugins { android { namespace "app.lawnchair.compatlib.twelve" - addFrameworkJar('framework-12.jar') } +addFrameworkJar('framework-12.jar') + dependencies { implementation projects.compatLib } diff --git a/platform_frameworks_libs_systemui b/platform_frameworks_libs_systemui index 55dfc87036..be60d23181 160000 --- a/platform_frameworks_libs_systemui +++ b/platform_frameworks_libs_systemui @@ -1 +1 @@ -Subproject commit 55dfc8703698b30975b58380301085ef9af64a58 +Subproject commit be60d23181f403428de2b85dcbd281e51caa928b diff --git a/prebuilts/libs/android.jar b/prebuilts/libs/android.jar deleted file mode 100644 index 0e9085a687..0000000000 Binary files a/prebuilts/libs/android.jar and /dev/null differ diff --git a/prebuilts/libs/framework-13.jar b/prebuilts/libs/framework-13.jar index 5cb32de11b..0e9085a687 100644 Binary files a/prebuilts/libs/framework-13.jar and b/prebuilts/libs/framework-13.jar differ diff --git a/systemUIAnim/AndroidManifest.xml b/systemUIAnim/AndroidManifest.xml deleted file mode 100644 index 321cc53142..0000000000 --- a/systemUIAnim/AndroidManifest.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - diff --git a/systemUIAnim/build.gradle b/systemUIAnim/build.gradle index 8d817f60a8..eec42ce813 100644 --- a/systemUIAnim/build.gradle +++ b/systemUIAnim/build.gradle @@ -16,12 +16,11 @@ android { res.srcDirs = ['res'] } } - addFrameworkJar('android.jar') } +addFrameworkJar('framework-13.jar') +compileOnlyCommonJars() + dependencies { - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'WindowManager-Shell.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'core.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'seeder.jar') implementation "androidx.core:core-animation:1.0.0-rc01" } diff --git a/systemUIShared/build.gradle b/systemUIShared/build.gradle index ba442766bd..21c79b2ec5 100644 --- a/systemUIShared/build.gradle +++ b/systemUIShared/build.gradle @@ -4,7 +4,6 @@ plugins { } android { - namespace "com.android.systemui.shared" buildFeatures { aidl true @@ -17,22 +16,17 @@ android { res.srcDirs = ['res'] } } - addFrameworkJar('android.jar') } +addFrameworkJar('framework-13.jar') +compileOnlyCommonJars() + dependencies { compileOnly projects.hiddenApi - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'WindowManager-Shell.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'seeder.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'core.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'core-all.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'SystemUI-core.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'SystemUI-statsd.jar') compileOnly projects.systemUnFold - implementation 'javax.inject:javax.inject:1' - implementation 'com.google.dagger:dagger-android-support:2.48.1' // if you use the support libraries - annotationProcessor 'com.google.dagger:dagger-android-processor:2.48.1' - annotationProcessor 'com.google.dagger:dagger-compiler:2.48.1' + implementation "com.google.dagger:hilt-android:$daggerVersion" + annotationProcessor "com.google.dagger:hilt-compiler:$daggerVersion" + implementation "androidx.concurrent:concurrent-futures:1.1.0" } diff --git a/systemUIViewCapture/AndroidManifest.xml b/systemUIViewCapture/AndroidManifest.xml index 1da812903b..3d91a8dd05 100644 --- a/systemUIViewCapture/AndroidManifest.xml +++ b/systemUIViewCapture/AndroidManifest.xml @@ -16,8 +16,7 @@ --> + xmlns:tools="http://schemas.android.com/tools"> diff --git a/systemUIViewCapture/build.gradle b/systemUIViewCapture/build.gradle index 6b9ebb2a93..968c6a55c0 100644 --- a/systemUIViewCapture/build.gradle +++ b/systemUIViewCapture/build.gradle @@ -17,34 +17,7 @@ android { manifest.srcFile "tests/AndroidManifest.xml" } } - - - addFrameworkJar('android.jar') } -dependencies { - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'WindowManager-Shell.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'core.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'seeder.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'SystemUI-core.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'SystemUI-statsd.jar') - implementation "androidx.core:core:1.12.0" - implementation "com.google.protobuf:protobuf-javalite:$protocVersion" -} - -protobuf { - // Configure the protoc executable - protoc { - artifact = "com.google.protobuf:protoc:${protocVersion}" - } - generateProtoTasks { - all().configureEach { task -> - task.builtins { - remove java - java { - option "lite" - } - } - } - } -} \ No newline at end of file +addFrameworkJar('framework-13.jar') +compileOnlyCommonJars() diff --git a/systemUnFold/build.gradle b/systemUnFold/build.gradle index efcbd2b49c..1d90796f0b 100644 --- a/systemUnFold/build.gradle +++ b/systemUnFold/build.gradle @@ -1,10 +1,9 @@ plugins { id 'com.android.library' id 'org.jetbrains.kotlin.android' + id 'org.jetbrains.kotlin.kapt' } -apply plugin: 'kotlin-kapt' - android { namespace "com.android.systemui.unfold" buildFeatures { @@ -16,23 +15,14 @@ android { aidl.srcDirs = ['src'] } } - addFrameworkJar('android.jar') } +addFrameworkJar('framework-13.jar') +compileOnlyCommonJars() + dependencies { - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'WindowManager-Shell.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'core.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'seeder.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'SystemUI-core.jar') - compileOnly fileTree(dir: FRAMEWORK_PREBUILTS_DIR, include: 'SystemUI-statsd.jar') - - - implementation 'javax.inject:javax.inject:1' - implementation 'com.google.dagger:dagger-android-support:2.48.1' // if you use the support libraries - kapt 'com.google.dagger:dagger-android-processor:2.48.1' - kapt 'com.google.dagger:dagger-compiler:2.48.1' - implementation "com.google.dagger:hilt-android:2.48.1" - kapt "com.google.dagger:hilt-android-compiler:2.48.1" + implementation "com.google.dagger:hilt-android:$daggerVersion" + kapt "com.google.dagger:hilt-compiler:$daggerVersion" implementation "androidx.concurrent:concurrent-futures:1.1.0" implementation "androidx.lifecycle:lifecycle-common:2.6.2"