// 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 = "26"

// 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
filegroup {
    name: "launcher-src",
    srcs: [ "src/**/*.java", "src/**/*.kt" ],
}

filegroup {
    name: "launcher-quickstep-src",
    srcs: [ "quickstep/src/**/*.java", "quickstep/src/**/*.kt" ],
}

filegroup {
    name: "launcher-go-src",
    srcs: [ "go/src/**/*.java", "go/src/**/*.kt" ],
}

filegroup {
    name: "launcher-go-quickstep-src",
    srcs: [ "go/quickstep/src/**/*.java", "go/quickstep/src/**/*.kt" ],
}

filegroup {
    name: "launcher-src_shortcuts_overrides",
    srcs: [ "src_shortcuts_overrides/**/*.java", "src_shortcuts_overrides/**/*.kt" ],
}

filegroup {
    name: "launcher-src_ui_overrides",
    srcs: [ "src_ui_overrides/**/*.java", "src_ui_overrides/**/*.kt" ],
}

filegroup {
    name: "launcher-ext_tests",
    srcs: [ "ext_tests/**/*.java", "ext_tests/**/*.kt" ],
}

filegroup {
    name: "launcher-quickstep-ext_tests",
    srcs: [ "quickstep/ext_tests/**/*.java", "quickstep/ext_tests/**/*.kt" ],
}

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

android_library {
    name: "launcher-aosp-tapl",
    libs: [
        "framework-statsd",
    ],
    static_libs: [
        "androidx.annotation_annotation",
        "androidx.test.runner",
        "androidx.test.rules",
        "androidx.test.uiautomator_uiautomator",
        "androidx.preference_preference",
        "SystemUISharedLib",
        "animationlib",
        "launcher-testing-shared",
    ],
    srcs: [
        "tests/tapl/**/*.java",
    ],
    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",
    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",
        "com.google.android.material_material",
        "iconloader_base",
        "view_capture",
        "animationlib"
    ],
    manifest: "AndroidManifest-common.xml",
    sdk_version: "current",
    min_sdk_version: min_launcher3_sdk_version,
    lint: {
        baseline_filename: "lint-baseline-res-lib.xml",
    },
}

//
// Build rule for Launcher3 dependencies lib.
//
android_library {
    name: "Launcher3CommonDepsLib",
    srcs: ["src_build_config/**/*.java"],
    static_libs: [
        "SystemUI-statsd",
        "Launcher3ResLib",
        "launcher-testing-shared",
        "animationlib",
        "com_android_launcher3_flags_lib",
        "com_android_wm_shell_flags_lib",
    ],
    sdk_version: "current",
    min_sdk_version: min_launcher3_sdk_version,
    manifest: "AndroidManifest-common.xml",
    lint: {
        baseline_filename: "lint-baseline-common-deps-lib.xml",
    },
}

//
// Build rule for Launcher3 app.
//
android_app {
    name: "Launcher3",

    static_libs: [
        "Launcher3CommonDepsLib",
    ],
    srcs: [
        ":launcher-src",
        ":launcher-src_shortcuts_overrides",
        ":launcher-src_ui_overrides",
        ":launcher-ext_tests",
    ],
    resource_dirs: [
        "ext_tests/res",
    ],
    optimize: {
        proguard_flags_files: ["proguard.flags"],
        // 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",
    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-launcher3.xml",
    },
}

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


// Library with all the dependencies for building Launcher Go
android_library {
    name: "LauncherGoResLib",
    srcs: [
        ":launcher-src",
        ":launcher-quickstep-src",
        ":launcher-go-src",
        ":launcher-go-quickstep-src",
    ],
    resource_dirs: [
        "go/res",
        "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: [
        "Launcher3CommonDepsLib",
        "QuickstepResLib",
        "androidx.room_room-runtime",
    ],
    plugins: ["androidx.room_room-compiler-plugin"],
    manifest: "quickstep/AndroidManifest.xml",
    additional_manifests: [
        "go/AndroidManifest.xml",
        "AndroidManifest-common.xml",
    ],
    min_sdk_version: "current",
    lint: {
        baseline_filename: "lint-baseline-go-res-lib.xml",
    },
}

// Build rule for Quickstep library
android_library {
    name: "Launcher3QuickStepLib",
    srcs: [
        ":launcher-src",
        ":launcher-quickstep-src",
        ":launcher-src_shortcuts_overrides",
    ],
    resource_dirs: [],
    libs: [
        "framework-statsd",
    ],
    // 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: [
        "SystemUI-statsd",
        "SystemUISharedLib",
        "Launcher3CommonDepsLib",
        "QuickstepResLib",
        "animationlib",
    ],
    manifest: "quickstep/AndroidManifest.xml",
    platform_apis: true,
    min_sdk_version: "current",
    lint: {
        baseline_filename: "lint-baseline-launcher3.xml",
    },
}

// Build rule for Launcher3 Go app for Android Go devices.
android_app {
    name: "Launcher3Go",

    static_libs: ["Launcher3CommonDepsLib"],

    srcs: [
        ":launcher-src",
        ":launcher-go-src",
        ":launcher-src_ui_overrides",
    ],

    resource_dirs: ["go/res"],

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

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

    additional_manifests: [
        "AndroidManifest.xml",
        "AndroidManifest-common.xml",
    ],

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

}

// Build rule for Quickstep app.
android_app {
    name: "Launcher3QuickStep",

    static_libs: ["Launcher3QuickStepLib"],
    optimize: {
        enabled: false,
    },

    certificate: "platform",
    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"],

    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.
android_app {
    name: "Launcher3QuickStepGo",

    static_libs: [
        "SystemUI-statsd",
        "SystemUISharedLib",
        "LauncherGoResLib",
    ],

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

    srcs: [ ],

    resource_dirs: [
        "go/quickstep/res",
        "go/res",
        "quickstep/res",
    ],

    optimize: {
        proguard_flags_files: ["proguard.flags"],
        enabled: 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.*"],
    }

}

