diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9f039ce5b9..d28af77003 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,7 @@ on: # Enrich gradle.properties for CI/CD env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx7g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx9g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g -Dkotlin.incremental=false CI_GRADLE_ARG_PROPERTIES: --stacktrace -Dsonar.gradle.skipCompile=true jobs: @@ -39,20 +39,13 @@ jobs: uses: gradle/actions/setup-gradle@v4 with: cache-read-only: ${{ github.ref != 'refs/heads/develop' }} - - name: Assemble debug Gplay APK + - name: Assemble debug APKs if: ${{ matrix.variant == 'debug' }} env: ELEMENT_ANDROID_MAPTILER_API_KEY: ${{ secrets.MAPTILER_KEY }} ELEMENT_ANDROID_MAPTILER_LIGHT_MAP_ID: ${{ secrets.MAPTILER_LIGHT_MAP_ID }} ELEMENT_ANDROID_MAPTILER_DARK_MAP_ID: ${{ secrets.MAPTILER_DARK_MAP_ID }} - run: ./gradlew :app:assembleGplayDebug -PallWarningsAsErrors=true $CI_GRADLE_ARG_PROPERTIES - - name: Assemble debug Fdroid APK - if: ${{ matrix.variant == 'debug' }} - env: - ELEMENT_ANDROID_MAPTILER_API_KEY: ${{ secrets.MAPTILER_KEY }} - ELEMENT_ANDROID_MAPTILER_LIGHT_MAP_ID: ${{ secrets.MAPTILER_LIGHT_MAP_ID }} - ELEMENT_ANDROID_MAPTILER_DARK_MAP_ID: ${{ secrets.MAPTILER_DARK_MAP_ID }} - run: ./gradlew app:assembleFDroidDebug -PallWarningsAsErrors=true $CI_GRADLE_ARG_PROPERTIES + run: ./gradlew :app:assembleGplayDebug app:assembleFDroidDebug -PallWarningsAsErrors=true $CI_GRADLE_ARG_PROPERTIES - name: Upload debug APKs if: ${{ matrix.variant == 'debug' }} uses: actions/upload-artifact@v4 diff --git a/.github/workflows/build_enterprise.yml b/.github/workflows/build_enterprise.yml index 737b61ee06..43073a06c5 100644 --- a/.github/workflows/build_enterprise.yml +++ b/.github/workflows/build_enterprise.yml @@ -9,7 +9,7 @@ on: # Enrich gradle.properties for CI/CD env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx7g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx9g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g -Dkotlin.incremental=false CI_GRADLE_ARG_PROPERTIES: --stacktrace -Dsonar.gradle.skipCompile=true jobs: @@ -61,7 +61,7 @@ jobs: name: elementx-enterprise-debug path: | app/build/outputs/apk/gplay/debug/*-universal-debug.apk - - name: Compile release sources + - name: Compile nightly and release sources if: ${{ matrix.variant == 'release' }} run: ./gradlew compileReleaseSources -PallWarningsAsErrors=true $CI_GRADLE_ARG_PROPERTIES - name: Compile nightly sources diff --git a/.github/workflows/maestro.yml b/.github/workflows/maestro.yml index fd2cc75fd0..6908deaa94 100644 --- a/.github/workflows/maestro.yml +++ b/.github/workflows/maestro.yml @@ -8,7 +8,7 @@ on: # Enrich gradle.properties for CI/CD env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx7g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx9g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g -Dkotlin.incremental=false CI_GRADLE_ARG_PROPERTIES: --stacktrace --no-daemon -Dsonar.gradle.skipCompile=true jobs: @@ -79,7 +79,7 @@ jobs: uses: actions/download-artifact@v4 with: name: elementx-apk-maestro - - uses: mobile-dev-inc/action-maestro-cloud@v1.8.1 + - uses: mobile-dev-inc/action-maestro-cloud@v1.9.1 if: (github.event_name == 'pull_request' && github.event.pull_request.fork == null) || github.event_name == 'workflow_dispatch' with: api-key: ${{ secrets.MAESTRO_CLOUD_API_KEY }} diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 921e0f3249..c2e9aa7877 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -7,7 +7,7 @@ on: - cron: "0 4 * * *" env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx6g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx9g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g -Dkotlin.incremental=false CI_GRADLE_ARG_PROPERTIES: --stacktrace --no-daemon -Dsonar.gradle.skipCompile=true jobs: diff --git a/.github/workflows/nightlyReports.yml b/.github/workflows/nightlyReports.yml index a0d39068eb..6aa6c151a7 100644 --- a/.github/workflows/nightlyReports.yml +++ b/.github/workflows/nightlyReports.yml @@ -8,7 +8,7 @@ on: # Enrich gradle.properties for CI/CD env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx7g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx9g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g -Dkotlin.incremental=false CI_GRADLE_ARG_PROPERTIES: --stacktrace -Dsonar.gradle.skipCompile=true jobs: diff --git a/.github/workflows/nightly_enterprise.yml b/.github/workflows/nightly_enterprise.yml index d1d77b45f5..31077c7998 100644 --- a/.github/workflows/nightly_enterprise.yml +++ b/.github/workflows/nightly_enterprise.yml @@ -7,7 +7,7 @@ on: - cron: "0 4 * * *" env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx6g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx9g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g -Dkotlin.incremental=false CI_GRADLE_ARG_PROPERTIES: --stacktrace --no-daemon -Dsonar.gradle.skipCompile=true jobs: diff --git a/.github/workflows/quality.yml b/.github/workflows/quality.yml index 5157a4b3d6..5d0eaaabc8 100644 --- a/.github/workflows/quality.yml +++ b/.github/workflows/quality.yml @@ -9,7 +9,7 @@ on: # Enrich gradle.properties for CI/CD env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx6g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx9g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g -Dkotlin.incremental=false CI_GRADLE_ARG_PROPERTIES: --stacktrace --no-daemon -Dsonar.gradle.skipCompile=true jobs: diff --git a/.github/workflows/recordScreenshots.yml b/.github/workflows/recordScreenshots.yml index e176c5d7bc..424622f8ca 100644 --- a/.github/workflows/recordScreenshots.yml +++ b/.github/workflows/recordScreenshots.yml @@ -7,7 +7,7 @@ on: # Enrich gradle.properties for CI/CD env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx5g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC -Dsonar.gradle.skipCompile=true + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx9g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g -Dkotlin.incremental=false -Dsonar.gradle.skipCompile=true jobs: record: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ab99509722..94aeb3dfd1 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -7,7 +7,7 @@ on: # Enrich gradle.properties for CI/CD env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx6g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx9g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g -Dkotlin.incremental=false CI_GRADLE_ARG_PROPERTIES: --stacktrace --no-daemon -Dsonar.gradle.skipCompile=true jobs: diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml index b5e0be7e2d..7519240ffb 100644 --- a/.github/workflows/sonar.yml +++ b/.github/workflows/sonar.yml @@ -9,7 +9,7 @@ on: # Enrich gradle.properties for CI/CD env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx6g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx9g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g -Dkotlin.incremental=false CI_GRADLE_ARG_PROPERTIES: --stacktrace --warn -Dsonar.gradle.skipCompile=true GROUP: ${{ format('sonar-{0}', github.ref) }} @@ -36,16 +36,8 @@ jobs: uses: gradle/actions/setup-gradle@v4 with: cache-read-only: ${{ github.ref != 'refs/heads/develop' }} - - name: Build Gplay Debug - run: ./gradlew :app:assembleGplayDebug $CI_GRADLE_ARG_PROPERTIES - - name: Build Fdroid Debug - run: ./gradlew :app:assembleFdroidDebug $CI_GRADLE_ARG_PROPERTIES - - name: Build Sample - run: ./gradlew :samples:minimal:assembleDebug $CI_GRADLE_ARG_PROPERTIES - - name: Build library fixtures - run: ./gradlew assembleDebug createFullJarDebugTestFixtures $CI_GRADLE_ARG_PROPERTIES - - name: Build app fixtures - run: ./gradlew :app:createFullJarGplayDebugTestFixtures $CI_GRADLE_ARG_PROPERTIES + - name: Build debug code and test fixtures + run: ./gradlew assembleDebug createFullJarDebugTestFixtures :app:createFullJarGplayDebugTestFixtures $CI_GRADLE_ARG_PROPERTIES - name: 🔊 Publish results to Sonar env: SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index e96dcae925..0cde28968f 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -9,7 +9,7 @@ on: # Enrich gradle.properties for CI/CD env: - GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx7g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -XX:+UseG1GC + GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx7g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -Dkotlin.incremental=false -Dkotlin.daemon.jvm.options=-Xmx2g -XX:+UseG1GC CI_GRADLE_ARG_PROPERTIES: --stacktrace -Dsonar.gradle.skipCompile=true jobs: diff --git a/CHANGES.md b/CHANGES.md index 4382c8f975..9d7ea45760 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,49 @@ +Changes in Element X v0.5.2 (2024-09-05) +========================================= + +### 🙌 Improvements +* [Identity reset] Remove instruction to reset identity on another client. by @bmarty in https://github.com/element-hq/element-x-android/pull/3355 +* Redact message on displayed notification by @bmarty in https://github.com/element-hq/element-x-android/pull/3320 +* Add a way to sign out when the user is asked to verify the session. by @bmarty in https://github.com/element-hq/element-x-android/pull/3359 +* Add banner entry point to set up recovery by @bmarty in https://github.com/element-hq/element-x-android/pull/3360 +* Replace OSS licenses plugin with Licensee and some manually done UI. by @bmarty in https://github.com/element-hq/element-x-android/pull/3381 + +### 🐛 Bugfixes +* Small fixes around logging out. by @bmarty in https://github.com/element-hq/element-x-android/pull/3356 +* Ensure starting PinUnlockActivity does not crash the application. by @bmarty in https://github.com/element-hq/element-x-android/pull/3369 +* Use the right colors for `@room` mention pills by @jmartinesp in https://github.com/element-hq/element-x-android/pull/3376 +* Fix avatar sometimes not loading by @bmarty in https://github.com/element-hq/element-x-android/pull/3366 +* Make pinned events required state in SlidingSync by @jmartinesp in https://github.com/element-hq/element-x-android/pull/3385 +* Make sure to save the tokens the Client might return when its session is restored by @jmartinesp in https://github.com/element-hq/element-x-android/pull/3378 +* Fix Element Call closing automatically on API 34 by @jmartinesp in https://github.com/element-hq/element-x-android/pull/3402 + +### 🗣 Translations +* Sync Strings by @ElementBot in https://github.com/element-hq/element-x-android/pull/3373 + +### 🧱 Build +* Try adding a memory limit for the kotlin compiler by @jmartinesp in https://github.com/element-hq/element-x-android/pull/3377 + +### Dependency upgrades +* Update dependency com.google.testparameterinjector:test-parameter-injector to v1.17 by @renovate in https://github.com/element-hq/element-x-android/pull/3357 +* Update dependencyAnalysis to v2.0.1 by @renovate in https://github.com/element-hq/element-x-android/pull/3362 +* Update android.gradle.plugin to v8.6.0 by @renovate in https://github.com/element-hq/element-x-android/pull/3363 +* Update dependency io.nlopez.compose.rules:detekt to v0.4.11 by @renovate in https://github.com/element-hq/element-x-android/pull/3364 +* Update dependency com.posthog:posthog-android to v3.6.0 by @renovate in https://github.com/element-hq/element-x-android/pull/3358 +* Update mobile-dev-inc/action-maestro-cloud action to v1.9.1 by @renovate in https://github.com/element-hq/element-x-android/pull/3367 +* Update dependency com.posthog:posthog-android to v3.6.1 by @renovate in https://github.com/element-hq/element-x-android/pull/3368 +* Update dependency org.matrix.rustcomponents:sdk-android to v0.2.41 by @renovate in https://github.com/element-hq/element-x-android/pull/3384 +* Rust sdk : update to 0.2.42 by @ganfra in https://github.com/element-hq/element-x-android/pull/3393 +* Update dependency com.android.tools:desugar_jdk_libs to v2.1.2 by @renovate in https://github.com/element-hq/element-x-android/pull/3350 +* Update dependency com.sigpwned:emoji4j-core to v15.1.2 by @renovate in https://github.com/element-hq/element-x-android/pull/3396 + +### Others +* Release : use a different concurrency group for enterprise build by @ganfra in https://github.com/element-hq/element-x-android/pull/3351 +* Provide distinct cache directory to the Rust SDK. by @bmarty in https://github.com/element-hq/element-x-android/pull/3370 +* Remove the migration screen by @bmarty in https://github.com/element-hq/element-x-android/pull/3389 +* Unified push endpoint: do not fallback to default endpoint in case of failure and add troubleshoot test. by @bmarty in https://github.com/element-hq/element-x-android/pull/3388 +* Skip device verification screen when creating a new account using OIDC by @bmarty in https://github.com/element-hq/element-x-android/pull/3395 +* Big emoji-only messages by @frebib in https://github.com/element-hq/element-x-android/pull/3295 + Changes in Element X v0.5.1 (2024-08-28) ========================================= diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 7778a3246e..49641a16cd 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -17,15 +17,19 @@ @file:Suppress("UnstableApiUsage") import com.android.build.api.variant.FilterConfiguration.FilterType.ABI +import com.android.build.gradle.internal.tasks.factory.dependsOn +import com.android.build.gradle.tasks.GenerateBuildConfig +import extension.AssetCopyTask +import extension.GitBranchNameValueSource +import extension.GitRevisionValueSource import extension.allEnterpriseImpl import extension.allFeaturesImpl import extension.allLibrariesImpl import extension.allServicesImpl -import extension.gitBranchName -import extension.gitRevision import extension.koverDependencies import extension.locales import extension.setupKover +import java.util.Locale plugins { id("io.element.android-compose-application") @@ -36,7 +40,8 @@ plugins { id(libs.plugins.firebaseAppDistribution.get().pluginId) alias(libs.plugins.knit) id("kotlin-parcelize") - id("com.google.android.gms.oss-licenses-plugin") + alias(libs.plugins.licensee) + alias(libs.plugins.kotlin.serialization) // To be able to update the firebase.xml files, uncomment and build the project // id("com.google.gms.google-services") } @@ -61,9 +66,6 @@ android { abiFilters += listOf("armeabi-v7a", "x86", "arm64-v8a", "x86_64") } - buildConfigField("String", "GIT_REVISION", "\"${gitRevision()}\"") - buildConfigField("String", "GIT_BRANCH_NAME", "\"${gitBranchName()}\"") - // Ref: https://developer.android.com/studio/build/configure-apk-splits.html#configure-abi-split splits { // Configures multiple APKs based on ABI. @@ -215,6 +217,9 @@ androidComponents { output.versionCode.set((output.versionCode.orNull ?: 0) * 10 + abiCode) } } + + val reportingExtension: ReportingExtension = project.extensions.getByType(ReportingExtension::class.java) + configureLicensesTasks(reportingExtension) } // Knit @@ -259,8 +264,6 @@ dependencies { // Comment to not include unified push in the project implementation(projects.libraries.pushproviders.unifiedpush) - "gplayImplementation"(libs.play.services.oss.licenses) - implementation(libs.appyx.core) implementation(libs.androidx.splash) implementation(libs.androidx.core) @@ -291,3 +294,51 @@ dependencies { koverDependencies() } + +tasks.withType().configureEach { + outputs.upToDateWhen { false } + val gitRevision = providers.of(GitRevisionValueSource::class.java) {}.get() + val gitBranchName = providers.of(GitBranchNameValueSource::class.java) {}.get() + android.defaultConfig.buildConfigField("String", "GIT_REVISION", "\"$gitRevision\"") + android.defaultConfig.buildConfigField("String", "GIT_BRANCH_NAME", "\"$gitBranchName\"") +} + +licensee { + allow("Apache-2.0") + allow("MIT") + allow("GPL-2.0-with-classpath-exception") + allow("BSD-2-Clause") + allowUrl("https://opensource.org/licenses/MIT") + allowUrl("https://developer.android.com/studio/terms.html") + allowUrl("http://openjdk.java.net/legal/gplv2+ce.html") + allowUrl("https://www.zetetic.net/sqlcipher/license/") + allowUrl("https://jsoup.org/license") + allowUrl("https://asm.ow2.io/license.html") + ignoreDependencies("com.github.matrix-org", "matrix-analytics-events") +} + +fun Project.configureLicensesTasks(reportingExtension: ReportingExtension) { + androidComponents { + onVariants { variant -> + val capitalizedVariantName = variant.name.replaceFirstChar { + if (it.isLowerCase()) { + it.titlecase(Locale.getDefault()) + } else { + it.toString() + } + } + val artifactsFile = reportingExtension.file("licensee/android$capitalizedVariantName/artifacts.json") + + val copyArtifactsTask = + project.tasks.register("copy${capitalizedVariantName}LicenseeReportToAssets") { + inputFile.set(artifactsFile) + targetFileName.set("licensee-artifacts.json") + } + variant.sources.assets?.addGeneratedSourceDirectory( + copyArtifactsTask, + AssetCopyTask::outputDirectory, + ) + copyArtifactsTask.dependsOn("licenseeAndroid$capitalizedVariantName") + } + } +} diff --git a/app/src/gplay/AndroidManifest.xml b/app/src/gplay/AndroidManifest.xml deleted file mode 100644 index 234003d953..0000000000 --- a/app/src/gplay/AndroidManifest.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - diff --git a/app/src/gplay/kotlin/io/element/android/x/licenses/OssOpenSourcesLicensesProvider.kt b/app/src/gplay/kotlin/io/element/android/x/licenses/OssOpenSourcesLicensesProvider.kt deleted file mode 100644 index 93848c438d..0000000000 --- a/app/src/gplay/kotlin/io/element/android/x/licenses/OssOpenSourcesLicensesProvider.kt +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) 2024 New Vector Ltd - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package io.element.android.x.licenses - -import android.app.Activity -import android.content.Intent -import com.google.android.gms.oss.licenses.OssLicensesMenuActivity -import com.squareup.anvil.annotations.ContributesBinding -import io.element.android.features.preferences.api.OpenSourceLicensesProvider -import io.element.android.libraries.di.AppScope -import io.element.android.libraries.ui.strings.CommonStrings -import javax.inject.Inject - -@ContributesBinding(AppScope::class) -class OssOpenSourcesLicensesProvider @Inject constructor() : OpenSourceLicensesProvider { - override val hasOpenSourceLicenses: Boolean = true - - override fun navigateToOpenSourceLicenses(activity: Activity) { - val title = activity.getString(CommonStrings.common_open_source_licenses) - OssLicensesMenuActivity.setActivityTitle(title) - activity.startActivity(Intent(activity, OssLicensesMenuActivity::class.java)) - } -} diff --git a/app/src/gplay/res/values-night/colors.xml b/app/src/gplay/res/values-night/colors.xml deleted file mode 100644 index e830bc1cb1..0000000000 --- a/app/src/gplay/res/values-night/colors.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - #FF101317 - - #FFEBEEF2 - - #ff808994 - - #FF4187EB - - false - false - - diff --git a/app/src/gplay/res/values-v27/themes.xml b/app/src/gplay/res/values-v27/themes.xml deleted file mode 100644 index 99fe605d0a..0000000000 --- a/app/src/gplay/res/values-v27/themes.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - diff --git a/app/src/gplay/res/values/themes.xml b/app/src/gplay/res/values/themes.xml deleted file mode 100644 index 95f0429e0d..0000000000 --- a/app/src/gplay/res/values/themes.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - -