// Copyright (C) 2018 The Android Open Source Project
//
// 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
//
//      http://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 {
    // See: http://go/android-license-faq
    default_applicable_licenses: ["Android-Apache-2.0"],
}

min_launcher3_sdk_version = "31"

// Targets that don't inherit framework aconfig libs (i.e., those that don't set
// `platform_apis: true`) must manually link them.
java_defaults {
    name: "launcher-non-platform-apis-defaults",
    static_libs: [
        "android.os.flags-aconfig-java",
        "android.appwidget.flags-aconfig-java",
        "com.android.window.flags.window-aconfig-java",
    ],
}

// Common source files used to build launcher (java and kotlin)
// All sources are split so they can be reused in many other libraries/apps in other folders

// Main Launcher source, excluding the build config
filegroup {
    name: "launcher-src",
    srcs: [
        "src/**/*.java",
        "src/**/*.kt",
    ],
}

// Main Launcher source for compose, excluding the build config
filegroup {
    name: "launcher-compose-enabled-src",
    srcs: [
        "compose/facade/enabled/*.kt",
        "compose/facade/core/*.kt",
        "compose/features/**/*.kt",
    ],
}

filegroup {
    name: "launcher-compose-disabled-src",
    srcs: [
        "compose/facade/core/*.kt",
        "compose/facade/disabled/*.kt",
    ],
}

// Source code for quickstep build, on top of launcher-src
filegroup {
    name: "launcher-quickstep-src",
    srcs: [
        "quickstep/src/**/*.kt",
        "quickstep/src/**/*.java",
    ],
    device_common_srcs: [
        ":launcher-quickstep-processed-protolog-src",
    ],
}

// Launcher ProtoLog support
filegroup {
    name: "launcher-quickstep-unprocessed-protolog-src",
    srcs: [
        "quickstep/src_protolog/**/*.java",
    ],
}

java_library {
    name: "launcher-quickstep_protolog-groups",
    srcs: [
        "quickstep/src_protolog/**/*.java",
    ],
    static_libs: [
        "protolog-group",
        "androidx.annotation_annotation",
        "com_android_launcher3_flags_lib",
    ],
}

java_genrule {
    name: "launcher-quickstep-processed-protolog-src",
    srcs: [
        ":protolog-impl",
        ":launcher-quickstep-unprocessed-protolog-src",
        ":launcher-quickstep_protolog-groups",
    ],
    tools: ["protologtool"],
    cmd: "$(location protologtool) transform-protolog-calls " +
        "--protolog-class com.android.internal.protolog.common.ProtoLog " +
        "--loggroups-class com.android.quickstep.util.QuickstepProtoLogGroup " +
        "--loggroups-jar $(location :launcher-quickstep_protolog-groups) " +
        "--viewer-config-file-path /system_ext/etc/launcher.quickstep.protolog.pb " +
        "--output-srcjar $(out) " +
        "$(locations :launcher-quickstep-unprocessed-protolog-src)",
    out: ["launcher.quickstep.protolog.srcjar"],
}

java_genrule {
    name: "gen-launcher.quickstep.protolog.pb",
    srcs: [
        ":launcher-quickstep-unprocessed-protolog-src",
        ":launcher-quickstep_protolog-groups",
    ],
    tools: ["protologtool"],
    cmd: "$(location protologtool) generate-viewer-config " +
        "--protolog-class com.android.internal.protolog.common.ProtoLog " +
        "--loggroups-class com.android.quickstep.util.QuickstepProtoLogGroup " +
        "--loggroups-jar $(location :launcher-quickstep_protolog-groups) " +
        "--viewer-config-type proto " +
        "--viewer-config $(out) " +
        "$(locations :launcher-quickstep-unprocessed-protolog-src)",
    out: ["launcher.quickstep.protolog.pb"],
}

prebuilt_etc {
    name: "launcher.quickstep.protolog.pb",
    system_ext_specific: true,
    src: ":gen-launcher.quickstep.protolog.pb",
    filename_from_src: true,
}

// Source code for quickstep dagger
filegroup {
    name: "launcher-quickstep-dagger",
    srcs: [
        "quickstep/dagger/**/*.java",
        "quickstep/dagger/**/*.kt",
    ],
}

// Source code for quickstep build with compose enabled, on top of launcher-src
filegroup {
    name: "launcher-quickstep-compose-enabled-src",
    srcs: [
        "quickstep/compose/facade/core/*.kt",
        "quickstep/compose/facade/enabled/*.kt",
        "quickstep/compose/features/**/*.kt",
    ],
}

filegroup {
    name: "launcher-quickstep-compose-disabled-src",
    srcs: [
        "quickstep/compose/facade/core/*.kt",
        "quickstep/compose/facade/disabled/*.kt",
    ],
}

// Alternate source when quickstep is not included
filegroup {
    name: "launcher-src_no_quickstep",
    srcs: [
        "src_no_quickstep/**/*.java",
        "src_no_quickstep/**/*.kt",
    ],
}

// Default build config for Launcher3
filegroup {
    name: "launcher-build-config",
    srcs: [
        "src_build_config/**/*.java",
    ],
}

// Proguard files for Launcher3
filegroup {
    name: "launcher-proguard-rules",
    srcs: ["proguard.flags"],
}

// Opt-in configuration for Launcher3 code depending on Jetpack Compose.
soong_config_module_type {
    name: "launcher_compose_java_defaults",
    module_type: "java_defaults",
    config_namespace: "ANDROID",
    bool_variables: ["release_enable_compose_in_launcher"],
    properties: [
        "srcs",
        "static_libs",
    ],
}

// Opt-in configuration for Launcher Quickstep code depending on Jetpack Compose.
soong_config_bool_variable {
    name: "release_enable_compose_in_launcher",
}

soong_config_module_type {
    name: "quickstep_compose_java_defaults",
    module_type: "java_defaults",
    config_namespace: "ANDROID",
    bool_variables: ["release_enable_compose_in_launcher"],
    properties: [
        "srcs",
        "static_libs",
    ],
}

soong_config_module_type {
    name: "launcher_compose_tests_java_defaults",
    module_type: "java_defaults",
    config_namespace: "ANDROID",
    bool_variables: ["release_enable_compose_in_launcher"],
    properties: [
        "static_libs",
    ],
}

launcher_compose_java_defaults {
    name: "launcher_compose_defaults",
    soong_config_variables: {
        release_enable_compose_in_launcher: {
            srcs: [
                ":launcher-compose-enabled-src",
            ],

            // Compose dependencies
            static_libs: [
                "androidx.compose.runtime_runtime",
                "androidx.compose.material3_material3",
            ],

            // By default, Compose is disabled and we compile the ComposeFacade
            // in compose/launcher3/facade/disabled/.
            conditions_default: {
                srcs: [
                    ":launcher-compose-disabled-src",
                ],
                static_libs: [],
            },
        },
    },
}

quickstep_compose_java_defaults {
    name: "quickstep_compose_defaults",
    soong_config_variables: {
        release_enable_compose_in_launcher: {
            srcs: [
                ":launcher-quickstep-compose-enabled-src",
            ],

            // Compose dependencies
            static_libs: [
                "androidx.compose.runtime_runtime",
                "androidx.compose.material3_material3",
            ],

            // By default, Compose is disabled and we compile the ComposeFacade
            // in compose/quickstep/facade/disabled/.
            conditions_default: {
                srcs: [
                    ":launcher-quickstep-compose-disabled-src",
                ],
                static_libs: [],
            },
        },
    },
}

launcher_compose_tests_java_defaults {
    name: "launcher_compose_tests_defaults",
    soong_config_variables: {
        release_enable_compose_in_launcher: {
            // Compose dependencies
            static_libs: [
                "androidx.compose.runtime_runtime",
                "androidx.compose.ui_ui-test-junit4",
                "androidx.compose.ui_ui-test-manifest",
            ],

            conditions_default: {
                static_libs: [],
            },
        },
    },
}

android_library {
    name: "launcher-aosp-tapl",
    libs: [
        "framework-statsd.stubs.module_lib",
    ],
    static_libs: [
        "androidx.annotation_annotation",
        "androidx.test.runner",
        "androidx.test.rules",
        "androidx.test.uiautomator_uiautomator",
        "androidx.preference_preference",
        "SystemUISharedLib",
        "//frameworks/libs/systemui:animationlib",
        "//frameworks/libs/systemui:contextualeducationlib",
        "launcher-testing-shared",
    ],
    srcs: [
        "tests/tapl/**/*.java",
        "tests/tapl/**/*.kt",
    ],
    resource_dirs: [],
    manifest: "tests/tapl/AndroidManifest.xml",
    platform_apis: true,
}

java_library_static {
    name: "launcher_log_protos_lite",
    srcs: [
        "protos/*.proto",
        "protos_overrides/*.proto",
    ],
    sdk_version: "current",
    proto: {
        type: "lite",
        local_include_dirs: [
            "protos",
            "protos_overrides",
        ],
    },
    static_libs: ["libprotobuf-java-lite"],
}

java_library_static {
    name: "launcher_quickstep_log_protos_lite",
    srcs: [
        "quickstep/protos_overrides/*.proto",
    ],
    sdk_version: "current",
    proto: {
        type: "lite",
        local_include_dirs: [
            "quickstep/protos_overrides",
        ],
    },
    static_libs: [
        "libprotobuf-java-lite",
        "launcher_log_protos_lite",
    ],
}

java_library {
    name: "LauncherPluginLib",

    static_libs: ["PluginCoreLib"],

    srcs: ["src_plugins/**/*.java"],

    sdk_version: "current",
    min_sdk_version: min_launcher3_sdk_version,
}

// Library with all the dependencies for building Launcher3
android_library {
    name: "Launcher3ResLib",
    defaults: [
        "launcher_compose_defaults",
    ],
    srcs: [],
    resource_dirs: ["res"],
    static_libs: [
        "LauncherPluginLib",
        "launcher_quickstep_log_protos_lite",
        "androidx-constraintlayout_constraintlayout",
        "androidx.recyclerview_recyclerview",
        "androidx.dynamicanimation_dynamicanimation",
        "androidx.fragment_fragment",
        "androidx.preference_preference",
        "androidx.slice_slice-view",
        "androidx.cardview_cardview",
        "androidx.window_window",
        "com.google.android.material_material",
        "//frameworks/libs/systemui:iconloader_base",
        "//frameworks/libs/systemui:view_capture",
        "//frameworks/libs/systemui:animationlib",
        "//frameworks/libs/systemui:contextualeducationlib",
        "//frameworks/libs/systemui:msdl",
        "SystemUI-statsd",
        "launcher-testing-shared",
        "androidx.lifecycle_lifecycle-common-java8",
        "androidx.lifecycle_lifecycle-extensions",
        "androidx.lifecycle_lifecycle-runtime-ktx",
        "kotlinx_coroutines_android",
        "kotlinx_coroutines",
        "com_android_launcher3_flags_lib",
        "com_android_wm_shell_flags_lib",
        "OmniPreferenceTheme",
        "dagger2",
        "jsr330",
        "com_android_systemui_shared_flags_lib",
    ],
    manifest: "AndroidManifest-common.xml",
    sdk_version: "current",
    min_sdk_version: min_launcher3_sdk_version,
    lint: {
        baseline_filename: "lint-baseline.xml",
    },
}

//
// Build rule for Launcher3 app.
//
android_app {
    name: "Launcher3",
    defaults: ["launcher-non-platform-apis-defaults"],

    static_libs: [
        "Launcher3ResLib",
    ],
    srcs: [
        ":launcher-src",
        ":launcher-src_no_quickstep",
        ":launcher-build-config",
    ],

    optimize: {
        proguard_flags_files: [":launcher-proguard-rules"],
        // Proguard is disable for testing. Derivarive prjects to keep proguard enabled
        enabled: false,
    },

    sdk_version: "current",
    min_sdk_version: min_launcher3_sdk_version,
    target_sdk_version: "current",
    plugins: ["dagger2-compiler"],
    privileged: true,
    system_ext_specific: true,

    overrides: [
        "Home",
        "Launcher2",
    ],
    required: ["privapp_whitelist_com.android.launcher3"],

    jacoco: {
        include_filter: ["com.android.launcher3.**"],
    },
    additional_manifests: [
        "AndroidManifest-common.xml",
    ],
    lint: {
        baseline_filename: "lint-baseline.xml",
    },
}

// Library with all the dependencies for building quickstep
android_library {
    name: "QuickstepResLib",
    srcs: [],
    resource_dirs: [
        "quickstep/res",
    ],
    libs: [
        "framework-statsd.stubs.module_lib",
    ],
    static_libs: [
        "Launcher3ResLib",
        "lottie",
        "SystemUISharedLib",
        "SettingsLibSettingsTheme",
        "dagger2",
        "protolog-group",
    ],
    manifest: "quickstep/AndroidManifest.xml",
    min_sdk_version: "current",
}

// Library with all the source code and dependencies for building Launcher Go
android_library {
    name: "Launcher3GoLib",
    defaults: [
        "launcher_compose_defaults",
        "quickstep_compose_defaults",
    ],
    srcs: [
        ":launcher-src",
        ":launcher-quickstep-src",
        ":launcher-quickstep-dagger",
        "go/quickstep/src/**/*.java",
        "go/quickstep/src/**/*.kt",
    ],
    resource_dirs: [
        "go/quickstep/res",
    ],
    // Note the ordering here is important when it comes to resource
    // overriding. We want the most specific resource overrides defined
    // in QuickstepResLib to take precendece, so it should be the final
    // dependency. See b/205278434 for how this can go wrong.
    static_libs: [
        "QuickstepResLib",
        "androidx.room_room-runtime",
    ],
    plugins: [
        "androidx.room_room-compiler-plugin",
        "dagger2-compiler",
    ],
    manifest: "quickstep/AndroidManifest.xml",
    additional_manifests: [
        "go/AndroidManifest.xml",
        "AndroidManifest-common.xml",
    ],
    min_sdk_version: "current",
    // TODO(b/319712088): re-enable use_resource_processor
    use_resource_processor: false,
}

// Library with all the source code and dependencies for building Quickstep
android_library {
    name: "Launcher3QuickStepLibGoogle",
    defaults: [
        "launcher_compose_defaults",
        "quickstep_compose_defaults",
    ],
    srcs: [
        "src_overlay/google/com/android/launcher3/overlay/OverlayCallbackImpl.java",
        ":launcher-src",
        ":launcher-quickstep-src",
        ":launcher-quickstep-dagger",
        ":launcher-build-config",
    ],
    resource_dirs: [],
    libs: [
        "framework-statsd.stubs.module_lib",
    ],
    // Note the ordering here is important when it comes to resource
    // overriding. We want the most specific resource overrides defined
    // in QuickstepResLib to take precendece, so it should be the final
    // dependency. See b/208647810 for how this can go wrong.
    static_libs: [
        "OmniLib",
        "//vendor/omni:libGoogleFeed",
        "SystemUI-statsd",
        "QuickstepResLib",
    ],
    manifest: "quickstep/AndroidManifest.xml",
    platform_apis: true,
    plugins: ["dagger2-compiler"],
    min_sdk_version: "current",
    // TODO(b/319712088): re-enable use_resource_processor
    use_resource_processor: false,
}

android_library {
    name: "Launcher3QuickStepLibMock",
    defaults: [
        "launcher_compose_defaults",
        "quickstep_compose_defaults",
    ],
    srcs: [
        "src_overlay/mock/com/android/launcher3/overlay/OverlayCallbackImpl.java",
        "src_overlay/mock/com/google/android/libraries/gsa/launcherclient/LauncherClientCallbacks.java",
        ":launcher-src",
        ":launcher-quickstep-src",
        ":launcher-quickstep-dagger",
        ":launcher-build-config",
    ],
    resource_dirs: [],
    libs: [
        "framework-statsd.stubs.module_lib",
    ],
    // Note the ordering here is important when it comes to resource
    // overriding. We want the most specific resource overrides defined
    // in QuickstepResLib to take precendece, so it should be the final
    // dependency. See b/208647810 for how this can go wrong.
    static_libs: [
        "OmniLib",
        "SystemUI-statsd",
        "QuickstepResLib",
    ],
    manifest: "quickstep/AndroidManifest.xml",
    platform_apis: true,
    plugins: ["dagger2-compiler"],
    min_sdk_version: "current",
    // TODO(b/319712088): re-enable use_resource_processor
    use_resource_processor: false,
}

// Build rule for Quickstep app.
android_app {
    name: "Launcher3QuickStep",
    defaults: ["omni_launcher3_defaults"],
    optimize: {
        proguard_flags_files: [":launcher-proguard-rules"],
        enabled: true,
        shrink_resources: true,
    },

    platform_apis: true,
    min_sdk_version: "current",
    target_sdk_version: "current",

    privileged: true,
    system_ext_specific: true,
    overrides: [
        "Home",
        "Launcher2",
        "Launcher3",
    ],
    required: [
        "privapp_whitelist_com.android.launcher3",
        "launcher.quickstep.protolog.pb",
    ],

    resource_dirs: ["quickstep/res"],

    additional_manifests: [
        "quickstep/AndroidManifest-launcher.xml",
        "AndroidManifest-common.xml",
    ],

    manifest: "quickstep/AndroidManifest.xml",
    jacoco: {
        include_filter: ["com.android.launcher3.*"],
    },

}

// Build rule for Launcher3 Go app with quickstep for Android Go devices.
// Note that the following two rules are exactly same, and should
// eventually be merged into a single target
android_app {
    name: "Launcher3Go",
    static_libs: ["Launcher3GoLib"],
    resource_dirs: [],

    platform_apis: true,
    min_sdk_version: "current",
    target_sdk_version: "current",

    optimize: {
        proguard_flags_files: ["proguard.flags"],
        enabled: true,
        shrink_resources: true,
    },

    privileged: true,
    system_ext_specific: true,
    overrides: [
        "Home",
        "Launcher2",
        "Launcher3",
        "Launcher3QuickStep",
    ],
    required: ["privapp_whitelist_com.android.launcher3"],

    additional_manifests: [
        "go/AndroidManifest.xml",
        "go/AndroidManifest-launcher.xml",
        "AndroidManifest-common.xml",
    ],

    manifest: "quickstep/AndroidManifest.xml",
    jacoco: {
        include_filter: ["com.android.launcher3.*"],
    },
}

android_app {
    name: "Launcher3QuickStepGo",
    static_libs: ["Launcher3GoLib"],
    resource_dirs: [],

    platform_apis: true,
    min_sdk_version: "current",
    target_sdk_version: "current",

    optimize: {
        proguard_flags_files: ["proguard.flags"],
        enabled: true,
        shrink_resources: true,
    },

    privileged: true,
    system_ext_specific: true,
    overrides: [
        "Home",
        "Launcher2",
        "Launcher3",
        "Launcher3QuickStep",
    ],
    required: ["privapp_whitelist_com.android.launcher3"],

    additional_manifests: [
        "go/AndroidManifest.xml",
        "go/AndroidManifest-launcher.xml",
        "AndroidManifest-common.xml",
    ],

    manifest: "quickstep/AndroidManifest.xml",
    jacoco: {
        include_filter: ["com.android.launcher3.*"],
    },
}
