//
// 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 {
    default_applicable_licenses: ["frameworks_base_packages_SystemUI_license"],
}

// Added automatically by a large-scale-change
// See: http://go/android-license-faq
license {
    name: "frameworks_base_packages_SystemUI_license",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-Apache-2.0",
    ],
    license_text: [
        "NOTICE",
    ],
}

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

systemui_compose_java_defaults {
    name: "SystemUI_compose_defaults",
    soong_config_variables: {
        SYSTEMUI_USE_COMPOSE: {
            // Because files in compose/features/ depend on SystemUI
            // code, we compile those files when compiling SystemUI-core.
            // We also compile the ComposeFacade in
            // compose/facade/enabled/.
            srcs: [
                "compose/features/src/**/*.kt",
                "compose/facade/enabled/src/**/*.kt",
            ],

            // The dependencies needed by SystemUIComposeFeatures,
            // except for SystemUI-core.
            // Copied from compose/features/Android.bp.
            static_libs: [
                "PlatformComposeCore",

                "androidx.compose.runtime_runtime",
                "androidx.compose.material3_material3",
                "androidx.activity_activity-compose",
                "androidx.compose.animation_animation-graphics",
            ],

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

java_library {
    name: "SystemUI-proto",

    srcs: ["src/**/*.proto"],

    proto: {
        type: "nano",
    },

    libs: [
        "WindowManager-Shell-proto",
    ],
}

java_library {
    name: "SystemUI-tags",
    srcs: ["src/com/android/systemui/EventLogTags.logtags"],
}

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

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

//Create a library to expose SystemUI's resources to other modules.
android_library {
    name: "SystemUI-res",
    resource_dirs: [
        "res-product",
        "res-keyguard",
        "res",
    ],
    static_libs: [
        "SystemUISharedLib",
        "SystemUICustomizationLib",
        "SettingsLib",
        "androidx.leanback_leanback",
        "androidx.slice_slice-core",
        "androidx.slice_slice-view",
    ],
    manifest: "AndroidManifest-res.xml",
}

android_library {
    name: "SystemUI-core",
    defaults: [
        "SystemUI_compose_defaults",
    ],
    srcs: [
        "src/**/*.kt",
        "src/**/*.java",
        "src/**/I*.aidl",
        ":ReleaseJavaFiles",
    ],
    product_variables: {
        debuggable: {
            srcs: [":DebugJavaFiles"],
            exclude_srcs: [":ReleaseJavaFiles"],
        },
    },
    resource_dirs: [
        "res-product",
        "res-keyguard",
        "res",
    ],
    use_resource_processor: true,
    static_libs: [
        "WifiTrackerLib",
        "WindowManager-Shell",
        "SystemUIAnimationLib",
        "SystemUICommon",
        "SystemUICustomizationLib",
        "SystemUILogLib",
        "SystemUIPluginLib",
        "SystemUISharedLib",
        "SystemUI-statsd",
        "SettingsLib",
        "com_android_systemui_flags_lib",
        "androidx.core_core-ktx",
        "androidx.viewpager2_viewpager2",
        "androidx.legacy_legacy-support-v4",
        "androidx.recyclerview_recyclerview",
        "androidx.preference_preference",
        "androidx.appcompat_appcompat",
        "androidx.concurrent_concurrent-futures",
        "androidx.mediarouter_mediarouter",
        "androidx.palette_palette",
        "androidx.legacy_legacy-preference-v14",
        "androidx.leanback_leanback",
        "androidx.slice_slice-core",
        "androidx.slice_slice-view",
        "androidx.slice_slice-builders",
        "androidx.arch.core_core-runtime",
        "androidx.lifecycle_lifecycle-common-java8",
        "androidx.lifecycle_lifecycle-extensions",
        "androidx.lifecycle_lifecycle-runtime-ktx",
        "androidx.dynamicanimation_dynamicanimation",
        "androidx-constraintlayout_constraintlayout",
        "androidx.exifinterface_exifinterface",
        "com.google.android.material_material",
        "kotlinx_coroutines_android",
        "kotlinx_coroutines",
        "iconloader_base",
        "SystemUI-tags",
        "SystemUI-proto",
        "monet",
        "libmonet",
        "dagger2",
        "jsr305",
        "jsr330",
        "lottie",
        "LowLightDreamLib",
        "motion_tool_lib",
    ],
    libs: [
        "keepanno-annotations",
    ],
    manifest: "AndroidManifest.xml",

    javacflags: ["-Adagger.fastInit=enabled"],
    kotlincflags: ["-Xjvm-default=all"],

    plugins: ["dagger2-compiler"],

    lint: {
        extra_check_modules: ["SystemUILintChecker"],
    },
}

filegroup {
    name: "AAA-src",
    srcs: ["tests/src/com/android/AAAPlusPlusVerifySysuiRequiredTestPropertiesTest.java"],
    path: "tests/src",
}

filegroup {
    name: "SystemUI-tests-utils",
    srcs: [
        "tests/utils/src/**/*.java",
        "tests/utils/src/**/*.kt",
    ],
    path: "tests/utils/src",
}

filegroup {
    name: "SystemUI-test-fakes",
    srcs: [
        /* Status bar fakes */
        "tests/src/com/android/systemui/statusbar/pipeline/airplane/data/repository/FakeAirplaneModeRepository.kt",
        "tests/src/com/android/systemui/statusbar/pipeline/shared/data/repository/FakeConnectivityRepository.kt",
        "tests/src/com/android/systemui/statusbar/pipeline/wifi/data/repository/FakeWifiRepository.kt",

        /* Log fakes */
        "tests/src/com/android/systemui/log/core/FakeLogBuffer.kt",

        /* QS fakes */
        "tests/src/com/android/systemui/qs/pipeline/domain/interactor/FakeQSTile.kt",
    ],
    path: "tests/src",
}

filegroup {
    name: "SystemUI-tests-robolectric-pilots",
    srcs: [
        /* Keyguard converted tests */
        // data
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/CameraQuickAffordanceConfigTest.kt",
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/DoNotDisturbQuickAffordanceConfigTest.kt",
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/FlashlightQuickAffordanceConfigTest.kt",
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/HomeControlsKeyguardQuickAffordanceConfigTest.kt",
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/KeyguardQuickAffordanceLegacySettingSyncerTest.kt",
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/KeyguardQuickAffordanceLocalUserSelectionManagerTest.kt",
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/KeyguardQuickAffordanceRemoteUserSelectionManagerTest.kt",
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/MuteQuickAffordanceConfigTest.kt",
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/QrCodeScannerKeyguardQuickAffordanceConfigTest.kt",
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/QuickAccessWalletKeyguardQuickAffordanceConfigTest.kt",
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/VideoCameraQuickAffordanceConfigTest.kt",
        "tests/src/com/android/systemui/keyguard/data/repository/BiometricSettingsRepositoryTest.kt",
        "tests/src/com/android/systemui/keyguard/data/repository/DeviceEntryFaceAuthRepositoryTest.kt",
        "tests/src/com/android/systemui/keyguard/data/repository/DeviceEntryFingerprintAuthRepositoryTest.kt",
        "tests/src/com/android/systemui/keyguard/data/repository/DevicePostureRepositoryTest.kt",
        "tests/src/com/android/systemui/keyguard/data/repository/KeyguardQuickAffordanceRepositoryTest.kt",
        "tests/src/com/android/systemui/keyguard/data/repository/KeyguardRepositoryImplTest.kt",
        "tests/src/com/android/systemui/keyguard/data/repository/LightRevealScrimRepositoryTest.kt",
        "tests/src/com/android/systemui/keyguard/data/repository/TrustRepositoryTest.kt",
        // domain
        "tests/src/com/android/systemui/bouncer/domain/interactor/AlternateBouncerInteractorTest.kt",
        "tests/src/com/android/systemui/bouncer/domain/interactor/PrimaryBouncerCallbackInteractorTest.kt",
        "tests/src/com/android/systemui/bouncer/domain/interactor/PrimaryBouncerInteractorWithCoroutinesTest.kt",
        "tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardInteractorTest.kt",
        "tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardLongPressInteractorTest.kt",
        "tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractorTest.kt",
        "tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardTransitionInteractorTest.kt",
        "tests/src/com/android/systemui/keyguard/domain/interactor/LightRevealScrimInteractorTest.kt",
        // ui
        "tests/src/com/android/systemui/bouncer/ui/viewmodel/KeyguardBouncerViewModelTest.kt",
        "tests/src/com/android/systemui/keyguard/ui/viewmodel/DreamingToLockscreenTransitionViewModelTest.kt",
        "tests/src/com/android/systemui/keyguard/ui/viewmodel/GoneToDreamingTransitionViewModelTest.kt",
        "tests/src/com/android/systemui/keyguard/ui/viewmodel/LockscreenToDreamingTransitionViewModelTest.kt",
        "tests/src/com/android/systemui/keyguard/ui/viewmodel/LockscreenToOccludedTransitionViewModelTest.kt",
        "tests/src/com/android/systemui/keyguard/ui/viewmodel/OccludedToLockscreenTransitionViewModelTest.kt",
        "tests/src/com/android/systemui/keyguard/ui/viewmodel/PrimaryBouncerToGoneTransitionViewModelTest.kt",
        // Keyguard helper
        "tests/src/com/android/systemui/keyguard/data/quickaffordance/FakeKeyguardQuickAffordanceConfig.kt",
        "tests/src/com/android/systemui/dock/DockManagerFake.java",
        "tests/src/com/android/systemui/dump/LogBufferHelper.kt",
        "tests/src/com/android/systemui/statusbar/phone/FakeKeyguardStateController.java",

        /* Biometric converted tests */
        "tests/src/com/android/systemui/biometrics/BiometricTestExtensions.kt",
        "tests/src/com/android/systemui/biometrics/AuthControllerTest.java",
        "tests/src/com/android/systemui/biometrics/BiometricDisplayListenerTest.java",
        "tests/src/com/android/systemui/biometrics/FaceHelpMessageDeferralTest.kt",
        "tests/src/com/android/systemui/biometrics/SideFpsControllerTest.kt",
        "tests/src/com/android/systemui/biometrics/UdfpsControllerOverlayTest.kt",
        "tests/src/com/android/systemui/biometrics/UdfpsControllerTest.java",
        "tests/src/com/android/systemui/biometrics/UdfpsDialogMeasureAdapterTest.java",
        "tests/src/com/android/systemui/biometrics/UdfpsDisplayModeTest.java",
        "tests/src/com/android/systemui/biometrics/UdfpsKeyguardViewLegacyControllerBaseTest.java",
        "tests/src/com/android/systemui/biometrics/UdfpsKeyguardViewLegacyControllerTest.java",
        "tests/src/com/android/systemui/biometrics/UdfpsKeyguardViewLegacyControllerWithCoroutinesTest.kt",
        "tests/src/com/android/systemui/biometrics/UdfpsShellTest.kt",
        "tests/src/com/android/systemui/biometrics/UdfpsViewTest.kt",

        /* Status bar wifi converted tests */
        "tests/src/com/android/systemui/statusbar/pipeline/wifi/data/repository/WifiRepositorySwitcherTest.kt",
        "tests/src/com/android/systemui/statusbar/pipeline/wifi/data/repository/prod/DisabledWifiRepositoryTest.kt",
        "tests/src/com/android/systemui/statusbar/pipeline/wifi/data/repository/prod/WifiRepositoryImplTest.kt",
        "tests/src/com/android/systemui/statusbar/pipeline/wifi/domain/interactor/WifiInteractorImplTest.kt",
        "tests/src/com/android/systemui/statusbar/pipeline/wifi/ui/viewmodel/WifiViewModelTest.kt",

        /* Bouncer UI tests */
        "tests/src/com/android/keyguard/KeyguardPasswordViewControllerTest.kt",
        "tests/src/com/android/keyguard/KeyguardPatternViewControllerTest.kt",
        "tests/src/com/android/keyguard/KeyguardPinBasedInputViewControllerTest.java",
        "tests/src/com/android/keyguard/KeyguardPinViewControllerTest.kt",
        "tests/src/com/android/keyguard/KeyguardSecurityContainerTest.java",
        "tests/src/com/android/keyguard/KeyguardSecurityContainerControllerTest.kt",
        "tests/src/com/android/keyguard/KeyguardSecurityViewFlipperControllerTest.java",
        "tests/src/com/android/keyguard/KeyguardSimPinViewControllerTest.kt",
        "tests/src/com/android/keyguard/KeyguardSimPukViewControllerTest.kt",

        /* Communal tests */
        "tests/src/com/android/systemui/communal/data/repository/CommunalWidgetRepositoryImplTest.kt",
        "tests/src/com/android/systemui/communal/domain/interactor/CommunalInteractorTest.kt",
        "tests/src/com/android/systemui/communal/ui/view/layout/blueprints/DefaultCommunalBlueprintTest.kt",

        /* Dream tests */
        "tests/src/com/android/systemui/dreams/complication/HideComplicationTouchHandlerTest.java",
        "tests/src/com/android/systemui/dreams/conditions/AssistantAttentionConditionTest.java",
        "tests/src/com/android/systemui/dreams/conditions/DreamConditionTest.java",
        "tests/src/com/android/systemui/dreams/touch/scrim/BouncerlessScrimControllerTest.java",
        "tests/src/com/android/systemui/dreams/touch/scrim/ScrimManagerTest.java",
        "tests/src/com/android/systemui/dreams/touch/BouncerSwipeTouchHandlerTest.java",
        "tests/src/com/android/systemui/dreams/touch/ShadeTouchHandlerTest.java",
        "tests/src/com/android/systemui/dreams/DreamOverlayAnimationsControllerTest.kt",
        "tests/src/com/android/systemui/dreams/DreamOverlayCallbackControllerTest.kt",
        "tests/src/com/android/systemui/dreams/DreamOverlayContainerViewControllerTest.java",
        "tests/src/com/android/systemui/dreams/DreamOverlayNotificationCountProviderTest.java",
        "tests/src/com/android/systemui/dreams/DreamOverlayServiceTest.java",
        "tests/src/com/android/systemui/dreams/DreamOverlayStateControllerTest.java",
        "tests/src/com/android/systemui/dreams/DreamOverlayStatusBarItemsProviderTest.java",
        "tests/src/com/android/systemui/dreams/DreamOverlayStatusBarViewControllerTest.java",

        /* Smartspace tests */
        "tests/src/com/android/systemui/smartspace/BcSmartspaceConfigProviderTest.kt",
        "tests/src/com/android/systemui/smartspace/DreamSmartspaceControllerTest.kt",
        "tests/src/com/android/systemui/smartspace/LockscreenAndDreamTargetFilterTest.kt",
        "tests/src/com/android/systemui/smartspace/LockscreenPreconditionTest.kt",

        /* Quick Settings new pipeline converted tests */
        "tests/src/com/android/systemui/qs/pipeline/data/**/*Test.kt",
        "tests/src/com/android/systemui/qs/pipeline/domain/**/*Test.kt",
        "tests/src/com/android/systemui/qs/pipeline/shared/TileSpecTest.kt",
    ],
    path: "tests/src",
}

java_library {
    name: "SystemUI-tests-concurrency",
    srcs: [
        "src/com/android/systemui/util/concurrency/DelayableExecutor.java",
        "src/com/android/systemui/util/time/SystemClock.java",
        "tests/utils/src/com/android/systemui/util/concurrency/FakeExecutor.java",
        "tests/utils/src/com/android/systemui/util/time/FakeSystemClock.java",
    ],
    jarjar_rules: ":jarjar-rules-shared",
}

android_library {
    name: "SystemUI-tests-base",
    manifest: "tests/AndroidManifest-base.xml",
    resource_dirs: [
        "tests/res",
        "res-product",
        "res-keyguard",
        "res",
    ],
    static_libs: [
        "WifiTrackerLib",
        "SystemUIAnimationLib",
        "SystemUIPluginLib",
        "SystemUISharedLib",
        "SystemUICustomizationLib",
        "SystemUI-statsd",
        "SettingsLib",
        "com_android_systemui_flags_lib",
        "androidx.viewpager2_viewpager2",
        "androidx.legacy_legacy-support-v4",
        "androidx.recyclerview_recyclerview",
        "androidx.preference_preference",
        "androidx.appcompat_appcompat",
        "androidx.concurrent_concurrent-futures",
        "androidx.mediarouter_mediarouter",
        "androidx.palette_palette",
        "androidx.legacy_legacy-preference-v14",
        "androidx.leanback_leanback",
        "androidx.slice_slice-core",
        "androidx.slice_slice-view",
        "androidx.slice_slice-builders",
        "androidx.arch.core_core-runtime",
        "androidx.lifecycle_lifecycle-common-java8",
        "androidx.lifecycle_lifecycle-extensions",
        "androidx.lifecycle_lifecycle-runtime-ktx",
        "androidx.dynamicanimation_dynamicanimation",
        "androidx-constraintlayout_constraintlayout",
        "androidx.exifinterface_exifinterface",
        "kotlinx-coroutines-android",
        "kotlinx-coroutines-core",
        "kotlinx_coroutines_test",
        "kotlin-reflect",
        "iconloader_base",
        "SystemUI-tags",
        "SystemUI-proto",
        "metrics-helper-lib",
        "hamcrest-library",
        "androidx.test.rules",
        "testables",
        "truth-prebuilt",
        "monet",
        "libmonet",
        "dagger2",
        "jsr330",
        "WindowManager-Shell",
        "LowLightDreamLib",
        "motion_tool_lib",
        "androidx.core_core-animation-testing-nodeps",
        "androidx.compose.ui_ui",
    ],
}

android_library {
    name: "SystemUI-tests",
    defaults: [
        "SystemUI_compose_defaults",
    ],
    manifest: "tests/AndroidManifest-base.xml",
    additional_manifests: ["tests/AndroidManifest.xml"],
    srcs: [
        "tests/src/**/*.kt",
        "tests/src/**/*.java",
        "src/**/*.kt",
        "src/**/*.java",
        "src/**/I*.aidl",
        ":ReleaseJavaFiles",
        ":SystemUI-tests-utils",
    ],
    static_libs: [
        "SystemUI-tests-base",
        "androidx.test.uiautomator_uiautomator",
        "androidx.core_core-animation-testing",
        "mockito-target-extended-minus-junit4",
        "androidx.test.ext.junit",
        "androidx.test.ext.truth",
        "kotlin-test",
    ],
    libs: [
        "android.test.runner",
        "android.test.base",
        "android.test.mock",
        "keepanno-annotations",
    ],
    kotlincflags: ["-Xjvm-default=all"],
    aaptflags: [
        "--extra-packages",
        "com.android.systemui",
    ],
    plugins: ["dagger2-compiler"],
    lint: {
        test: true,
        extra_check_modules: ["SystemUILintChecker"],
    },
}

android_app {
    name: "SystemUIRobo-stub",
    defaults: [
        "platform_app_defaults",
        "SystemUI_optimized_defaults",
        "SystemUI_compose_defaults",
    ],
    manifest: "tests/AndroidManifest-base.xml",

    srcs: [
        "src/**/*.kt",
        "src/**/*.java",
        "src/**/I*.aidl",
        ":ReleaseJavaFiles",
    ],
    static_libs: [
        "SystemUI-tests-base",
    ],
    libs: [
        "keepanno-annotations",
    ],
    aaptflags: [
        "--extra-packages",
        "com.android.systemui",
    ],
    dont_merge_manifests: true,
    platform_apis: true,
    system_ext_specific: true,
    certificate: "platform",
    privileged: true,
    resource_dirs: [],
    kotlincflags: ["-Xjvm-default=all"],
    optimize: {
        shrink_resources: false,
        proguard_flags_files: ["proguard.flags"],
    },

    plugins: ["dagger2-compiler"],
}

android_robolectric_test {
    name: "SystemUiRoboTests",
    srcs: [
        "tests/robolectric/src/**/*.kt",
        "tests/robolectric/src/**/*.java",
        ":SystemUI-tests-utils",
        ":SystemUI-test-fakes",
        ":SystemUI-tests-robolectric-pilots",
    ],
    static_libs: [
        "androidx.test.uiautomator_uiautomator",
        "androidx.core_core-animation-testing",
        "androidx.test.ext.junit",
        "inline-mockito-robolectric-prebuilt",
    ],
    libs: [
        "android.test.runner",
        "android.test.base",
        "android.test.mock",
        "truth-prebuilt",
    ],

    upstream: true,

    instrumentation_for: "SystemUIRobo-stub",
    java_resource_dirs: ["tests/robolectric/config"],
}

// Opt-out config for optimizing the SystemUI target using R8.
// Disabled via `export SYSTEMUI_OPTIMIZE_JAVA=false`, or explicitly in Make via
// `SYSTEMUI_OPTIMIZE_JAVA := false`.
soong_config_module_type {
    name: "systemui_optimized_java_defaults",
    module_type: "java_defaults",
    config_namespace: "ANDROID",
    bool_variables: ["SYSTEMUI_OPTIMIZE_JAVA"],
    properties: ["optimize"],
}

systemui_optimized_java_defaults {
    name: "SystemUI_optimized_defaults",
    soong_config_variables: {
        SYSTEMUI_OPTIMIZE_JAVA: {
            optimize: {
                enabled: true,
                optimize: true,
                shrink: true,
                shrink_resources: true,
                ignore_warnings: false,
                proguard_compatibility: false,
            },
            conditions_default: {
                optimize: {
                    ignore_warnings: false,
                    proguard_compatibility: false,
                },
            },
        },
    },
}

android_app {
    name: "SystemUI",
    defaults: [
        "platform_app_defaults",
        "SystemUI_optimized_defaults",
    ],
    static_libs: [
        "SystemUI-core",
    ],
    resource_dirs: [],

    use_resource_processor: true,
    platform_apis: true,
    system_ext_specific: true,
    certificate: "platform",
    privileged: true,

    kotlincflags: ["-Xjvm-default=all"],

    dxflags: ["--multi-dex"],
    optimize: {
        proguard_flags_files: ["proguard.flags"],
    },
    required: [
        "privapp_whitelist_com.android.systemui",
        "wmshell.protolog.json.gz",
    ],
}
