xref: /aosp_15_r20/frameworks/base/packages/SystemUI/Android.bp (revision d57664e9bc4670b3ecf6748a746a57c557b6bc9e)
1//
2// Copyright (C) 2018 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8//      http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17package {
18    default_team: "trendy_team_system_ui_please_use_a_more_specific_subteam_if_possible_",
19    default_applicable_licenses: ["frameworks_base_packages_SystemUI_license"],
20}
21
22// Added automatically by a large-scale-change
23// See: http://go/android-license-faq
24license {
25    name: "frameworks_base_packages_SystemUI_license",
26    visibility: [
27        ":__subpackages__",
28        "//development/samples/SceneTransitionLayoutDemo:__subpackages__",
29    ],
30    license_kinds: [
31        "SPDX-license-identifier-Apache-2.0",
32    ],
33    license_text: [
34        "NOTICE",
35    ],
36}
37
38java_library {
39    name: "SystemUI-proto",
40
41    srcs: ["src/**/*.proto"],
42
43    proto: {
44        type: "nano",
45    },
46
47    libs: [
48        "WindowManager-Shell-proto",
49    ],
50}
51
52java_library {
53    name: "SystemUI-tags",
54    srcs: ["src/com/android/systemui/EventLogTags.logtags"],
55}
56
57filegroup {
58    name: "ReleaseJavaFiles",
59    srcs: [
60        "src-release/**/*.kt",
61        "src-release/**/*.java",
62    ],
63    visibility: ["//visibility:private"],
64}
65
66filegroup {
67    name: "DebugJavaFiles",
68    srcs: [
69        "src-debug/**/*.kt",
70        "src-debug/**/*.java",
71    ],
72    visibility: ["//visibility:private"],
73}
74
75filegroup {
76    name: "SystemUI-tests-robofiles",
77    srcs: [
78        "tests/src/**/*.kt",
79        "tests/src/**/*.java",
80    ],
81    visibility: ["//visibility:private"],
82}
83
84// Tests where robolectric failed at runtime. (go/central-multivalent)
85filegroup {
86    name: "SystemUI-tests-broken-robofiles-run",
87    srcs: [
88        "tests/src/**/systemui/shade/NotificationShadeWindowViewControllerTest.kt",
89        "tests/src/**/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractorSceneContainerTest.kt",
90        "tests/src/**/systemui/statusbar/pipeline/mobile/ui/model/SignalIconModelParameterizedTest.kt",
91        "tests/src/**/systemui/education/domain/interactor/KeyboardTouchpadEduInteractorTest.kt",
92        "tests/src/**/systemui/biometrics/udfps/SinglePointerTouchProcessorTest.kt",
93        "tests/src/**/systemui/animation/back/FlingOnBackAnimationCallbackTest.kt",
94        "tests/src/**/systemui/education/domain/ui/view/ContextualEduDialogTest.kt",
95        "tests/src/**/systemui/screenshot/ActionIntentCreatorTest.kt",
96        "tests/src/**/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractorParameterizedTest.kt",
97        "tests/src/**/systemui/accessibility/WindowMagnificationControllerTest.java",
98        "tests/src/**/systemui/broadcast/BroadcastDispatcherTest.kt",
99        "tests/src/**/systemui/globalactions/GlobalActionsDialogLiteTest.java",
100        "tests/src/**/systemui/globalactions/GlobalActionsImeTest.java",
101        "tests/src/**/systemui/media/dialog/MediaOutputBaseDialogTest.java",
102        "tests/src/**/systemui/media/dialog/MediaOutputBroadcastDialogTest.java",
103        "tests/src/**/systemui/media/dialog/MediaOutputDialogTest.java",
104        "tests/src/**/systemui/settings/brightness/BrightnessDialogTest.kt",
105        "tests/src/**/systemui/shared/clocks/view/SimpleDigitalClockTextViewTest.kt",
106        "tests/src/**/systemui/statusbar/policy/SecurityControllerTest.java",
107        "tests/src/**/systemui/lifecycle/SysUiViewModelTest.kt",
108        "tests/src/**/systemui/keyguard/ui/viewmodel/KeyguardQuickAffordancesCombinedViewModelTest.kt",
109        "tests/src/**/systemui/graphics/ImageLoaderContentProviderTest.kt",
110        "tests/src/**/systemui/flags/FakeFeatureFlagsTest.kt",
111        "tests/src/**/systemui/communal/data/backup/CommunalBackupUtilsTest.kt",
112        "tests/src/**/AAAPlusPlusVerifySysuiRequiredTestPropertiesTest.java",
113        "tests/src/**/systemui/accessibility/AccessibilityGestureTargetsObserverTest.java",
114        "tests/src/**/systemui/accessibility/floatingmenu/AccessibilityFloatingMenuControllerTest.java",
115        "tests/src/**/systemui/screenshot/appclips/AppClipsActivityTest.java",
116        "tests/src/**/systemui/screenshot/appclips/AppClipsTrampolineActivityTest.java",
117        "tests/src/**/systemui/screenshot/appclips/AppClipsViewModelTest.java",
118        "tests/src/**/systemui/appops/AppOpsControllerTest.java",
119        "tests/src/**/systemui/biometrics/BiometricNotificationServiceTest.java",
120        "tests/src/**/systemui/bluetooth/BroadcastDialogDelegateTest.java",
121        "tests/src/**/systemui/clipboardoverlay/ClipboardOverlayControllerTest.java",
122        "tests/src/**/systemui/communal/data/backup/CommunalBackupHelperTest.kt",
123        "tests/src/**/systemui/controls/ui/ControlsPopupMenuTest.kt",
124        "tests/src/**/systemui/classifier/DistanceClassifierTest.java",
125        "tests/src/**/systemui/doze/DozeScreenBrightnessTest.java",
126        "tests/src/**/systemui/doze/DozeSensorsTest.java",
127        "tests/src/**/systemui/doze/DozeTriggersTest.java",
128        "tests/src/**/systemui/classifier/FalsingDataProviderTest.java",
129        "tests/src/**/systemui/screenshot/ImageExporterTest.java",
130        "tests/src/**/systemui/bouncer/data/repository/KeyguardBouncerRepositoryTest.kt",
131        "tests/src/**/systemui/logcat/LogAccessDialogActivityTest.java",
132        "tests/src/**/systemui/media/controls/domain/pipeline/MediaDeviceManagerTest.kt",
133        "tests/src/**/systemui/media/controls/domain/pipeline/MediaSessionBasedFilterTest.kt",
134        "tests/src/**/systemui/accessibility/floatingmenu/MenuNotificationFactoryTest.java",
135        "tests/src/**/systemui/accessibility/floatingmenu/MenuViewLayerTest.java",
136        "tests/src/**/systemui/classifier/PointerCountClassifierTest.java",
137        "tests/src/**/systemui/accessibility/floatingmenu/RadiiAnimatorTest.java",
138        "tests/src/**/systemui/screenrecord/RecordingControllerTest.java",
139        "tests/src/**/systemui/screenshot/RequestProcessorTest.kt",
140        "tests/src/**/systemui/media/controls/domain/resume/ResumeMediaBrowserTest.kt",
141        "tests/src/**/systemui/screenshot/scroll/ScrollCaptureClientTest.java",
142        "tests/src/**/systemui/accessibility/SecureSettingsContentObserverTest.java",
143        "tests/src/**/systemui/media/controls/ui/viewmodel/SeekBarViewModelTest.kt",
144        "tests/src/**/systemui/qs/external/TileServicesTest.java",
145        "tests/src/**/systemui/ambient/touch/TouchMonitorTest.java",
146        "tests/src/**/systemui/accessibility/WindowMagnificationSettingsTest.java",
147        "tests/src/**/systemui/CameraProtectionLoaderImplTest.kt",
148        "tests/src/**/systemui/SliceBroadcastRelayHandlerTest.java",
149        "tests/src/**/systemui/SystemUIApplicationTest.kt",
150        "tests/src/**/systemui/SysUICutoutProviderTest.kt",
151        "tests/src/**/keyguard/AdminSecondaryLockScreenControllerTest.java",
152        "tests/src/**/keyguard/KeyguardStatusViewControllerTest.java",
153        "tests/src/**/systemui/accessibility/AccessibilityButtonModeObserverTest.java",
154        "tests/src/**/systemui/accessibility/AccessibilityButtonTargetsObserverTest.java",
155        "tests/src/**/systemui/accessibility/FullscreenMagnificationControllerTest.java",
156        "tests/src/**/systemui/accessibility/MagnificationTest.java",
157        "tests/src/**/systemui/accessibility/WindowMagnificationAnimationControllerTest.java",
158        "tests/src/**/systemui/animation/FontInterpolatorTest.kt",
159        "tests/src/**/systemui/animation/TextAnimatorTest.kt",
160        "tests/src/**/systemui/animation/TextInterpolatorTest.kt",
161        "tests/src/**/systemui/animation/ActivityTransitionAnimatorTest.kt",
162        "tests/src/**/systemui/animation/DialogTransitionAnimatorTest.kt",
163        "tests/src/**/systemui/broadcast/BroadcastDispatcherTest.kt",
164        "tests/src/**/systemui/controls/ui/ControlsActivityTest.kt",
165        "tests/src/**/systemui/controls/management/ControlsEditingActivityTest.kt",
166        "tests/src/**/systemui/controls/management/ControlsRequestDialogTest.kt",
167        "tests/src/**/systemui/controls/ui/DetailDialogTest.kt",
168        "tests/src/**/systemui/keyguard/CustomizationProviderTest.kt",
169        "tests/src/**/systemui/globalactions/GlobalActionsColumnLayoutTest.java",
170        "tests/src/**/systemui/globalactions/GlobalActionsDialogLiteTest.java",
171        "tests/src/**/systemui/globalactions/GlobalActionsImeTest.java",
172        "tests/src/**/systemui/graphics/ImageLoaderTest.kt",
173        "tests/src/**/systemui/keyguard/CustomizationProviderTest.kt",
174        "tests/src/**/systemui/keyguard/KeyguardViewMediatorTest.java",
175        "tests/src/**/systemui/keyguard/LifecycleTest.java",
176        "tests/src/**/systemui/lifecycle/RepeatWhenAttachedTest.kt",
177        "tests/src/**/systemui/log/LogBufferTest.kt",
178        "tests/src/**/systemui/media/dialog/MediaOutputBaseDialogTest.java",
179        "tests/src/**/systemui/media/dialog/MediaOutputBroadcastDialogTest.java",
180        "tests/src/**/systemui/media/dialog/MediaOutputDialogTest.java",
181        "tests/src/**/systemui/media/controls/domain/resume/MediaResumeListenerTest.kt",
182        "tests/src/**/systemui/mediaprojection/taskswitcher/ui/TaskSwitcherNotificationCoordinatorTest.kt",
183        "tests/src/**/systemui/people/PeopleProviderTest.java",
184        "tests/src/**/systemui/people/PeopleSpaceUtilsTest.java",
185        "tests/src/**/systemui/people/widget/PeopleSpaceWidgetManagerTest.java",
186        "tests/src/**/systemui/people/PeopleTileViewHelperTest.java",
187        "tests/src/**/systemui/power/data/repository/PowerRepositoryImplTest.kt",
188        "tests/src/**/systemui/qs/tiles/DndTileTest.kt",
189        "tests/src/**/systemui/qs/tiles/DreamTileTest.java",
190        "tests/src/**/systemui/qs/QSPanelTest.kt",
191        "tests/src/**/systemui/reardisplay/RearDisplayCoreStartableTest.kt",
192        "tests/src/**/systemui/reardisplay/RearDisplayDialogControllerTest.java",
193        "tests/src/**/systemui/reardisplay/RearDisplayInnerDialogDelegateTest.kt",
194        "tests/src/**/systemui/statusbar/KeyboardShortcutListSearchTest.java",
195        "tests/src/**/systemui/statusbar/KeyboardShortcutsTest.java",
196        "tests/src/**/systemui/statusbar/notification/collection/NotificationEntryTest.java",
197        "tests/src/**/systemui/statusbar/notification/collection/ShadeListBuilderTest.java",
198        "tests/src/**/systemui/statusbar/notification/interruption/NotificationInterruptStateProviderImplTest.java",
199        "tests/src/**/systemui/statusbar/notification/interruption/NotificationInterruptStateProviderWrapperTest.kt",
200        "tests/src/**/systemui/statusbar/notification/interruption/VisualInterruptionDecisionProviderImplTest.kt",
201        "tests/src/**/systemui/statusbar/notification/logging/NotificationLoggerTest.java",
202        "tests/src/**/systemui/statusbar/notification/row/ExpandableNotificationRowTest.java",
203        "tests/src/**/systemui/statusbar/notification/row/NotificationContentViewTest.kt",
204        "tests/src/**/systemui/statusbar/notification/row/NotificationConversationInfoTest.java",
205        "tests/src/**/systemui/statusbar/notification/row/NotificationGutsManagerWithScenesTest.kt",
206        "tests/src/**/systemui/statusbar/notification/row/wrapper/NotificationTemplateViewWrapperTest.kt",
207        "tests/src/**/systemui/statusbar/notification/stack/NotificationStackScrollLayoutTest.java",
208        "tests/src/**/systemui/statusbar/phone/CentralSurfacesImplTest.java",
209        "tests/src/**/systemui/statusbar/phone/fragment/CollapsedStatusBarFragmentTest.java",
210        "tests/src/**/systemui/statusbar/phone/PhoneStatusBarTransitionsTest.kt",
211        "tests/src/**/systemui/statusbar/phone/PhoneStatusBarViewControllerTest.kt",
212        "tests/src/**/systemui/statusbar/phone/PhoneStatusBarViewTest.kt",
213        "tests/src/**/systemui/statusbar/phone/StatusBarBoundsProviderTest.kt",
214        "tests/src/**/systemui/statusbar/phone/StatusBarMoveFromCenterAnimationControllerTest.kt",
215        "tests/src/**/systemui/statusbar/pipeline/airplane/ui/viewmodel/AirplaneModeViewModelImplTest.kt",
216        "tests/src/**/systemui/statusbar/pipeline/mobile/data/repository/prod/MobileConnectionsRepositoryTest.kt",
217        "tests/src/**/systemui/statusbar/pipeline/mobile/ui/view/ModernStatusBarMobileViewTest.kt",
218        "tests/src/**/systemui/statusbar/pipeline/wifi/ui/view/ModernStatusBarWifiViewTest.kt",
219        "tests/src/**/systemui/statusbar/policy/CallbackControllerTest.java",
220        "tests/src/**/systemui/statusbar/policy/DeviceStateRotationLockSettingControllerTest.java",
221        "tests/src/**/systemui/statusbar/policy/InflatedSmartRepliesTest.java",
222        "tests/src/**/systemui/statusbar/policy/LocationControllerImplTest.java",
223        "tests/src/**/systemui/statusbar/policy/RemoteInputViewTest.java",
224        "tests/src/**/systemui/statusbar/policy/SmartReplyViewTest.java",
225        "tests/src/**/systemui/theme/ThemeOverlayApplierTest.java",
226        "tests/src/**/systemui/touch/TouchInsetManagerTest.java",
227        "tests/src/**/systemui/util/LifecycleFragmentTest.java",
228        "tests/src/**/systemui/util/sensors/ThresholdSensorImplTest.java",
229        "tests/src/**/systemui/volume/VolumeDialogImplTest.java",
230        "tests/src/**/systemui/wallet/controller/QuickAccessWalletControllerTest.java",
231        "tests/src/**/systemui/wallet/ui/WalletScreenControllerTest.java",
232        "tests/src/**/systemui/accessibility/data/repository/AccessibilityQsShortcutsRepositoryImplForDeviceTest.kt",
233        "tests/src/**/systemui/biometrics/UdfpsControllerOverlayTest.kt",
234        // TODO(b/322324387): Fails to start due to missing ScreenshotActivity
235        "tests/src/**/systemui/bouncer/ui/composable/BouncerContentTest.kt",
236        "tests/src/**/systemui/bouncer/ui/composable/PatternBouncerTest.kt",
237        "tests/src/**/systemui/clipboardoverlay/ClipboardListenerTest.java",
238        "tests/src/**/systemui/communal/data/db/CommunalDatabaseMigrationsTest.kt",
239        "tests/src/**/systemui/communal/data/db/CommunalWidgetDaoTest.kt",
240        "tests/src/**/systemui/keyboard/shortcut/ui/viewmodel/ShortcutHelperViewModelTest.kt",
241        "tests/src/**/systemui/keyguard/ui/viewmodel/KeyguardBottomAreaViewModelTest.kt",
242        "tests/src/**/systemui/lifecycle/ActivatableTest.kt",
243        "tests/src/**/systemui/media/dialog/MediaSwitchingControllerTest.java",
244        "tests/src/**/systemui/qs/QSImplTest.java",
245        "tests/src/**/systemui/qs/panels/ui/compose/DragAndDropTest.kt",
246        "tests/src/**/systemui/qs/panels/ui/compose/ResizingTest.kt",
247        "tests/src/**/systemui/accessibility/floatingmenu/MenuAnimationControllerTest.java",
248        "tests/src/**/systemui/animation/TransitionAnimatorTest.kt",
249        "tests/src/**/systemui/animation/TransitionAnimatorTest.kt",
250        "tests/src/**/systemui/statusbar/connectivity/NetworkControllerSignalTest.java",
251        "tests/src/**/systemui/statusbar/phone/ScrimControllerTest.java",
252        "tests/src/**/systemui/toast/ToastUITest.java",
253        "tests/src/**/systemui/statusbar/policy/FlashlightControllerImplTest.kt",
254        "tests/src/**/systemui/statusbar/pipeline/satellite/data/prod/DeviceBasedSatelliteRepositoryImplTest.kt",
255        "tests/src/**/systemui/stylus/StylusUsiPowerUiTest.kt",
256    ],
257}
258
259// Files which use ExtendedMockito on the device.
260filegroup {
261    name: "SystemUI-tests-broken-robofiles-mockito-extended",
262    srcs: [
263        "tests/src/**/systemui/notetask/quickaffordance/NoteTaskQuickAffordanceConfigTest.kt",
264        "tests/src/**/systemui/notetask/shortcut/LaunchNoteTaskActivityTest.kt",
265        "tests/src/**/systemui/notetask/LaunchNotesRoleSettingsTrampolineActivityTest.kt",
266        "tests/src/**/systemui/bluetooth/qsdialog/AudioSharingDeviceItemActionInteractorTest.kt",
267        "tests/src/**/systemui/bluetooth/qsdialog/AudioSharingButtonViewModelTest.kt",
268        "tests/src/**/systemui/bluetooth/qsdialog/DeviceItemFactoryTest.kt",
269        "tests/src/**/systemui/stylus/StylusManagerTest.kt",
270        "tests/src/**/systemui/recents/OverviewProxyServiceTest.kt",
271        "tests/src/**/systemui/DisplayCutoutBaseViewTest.kt",
272        "tests/src/**/systemui/statusbar/pipeline/mobile/data/repository/CarrierConfigRepositoryTest.kt",
273        "tests/src/**/systemui/statusbar/policy/BatteryControllerTest.java",
274        "tests/src/**/systemui/statusbar/policy/SensitiveNotificationProtectionControllerTest.kt",
275        "tests/src/**/systemui/statusbar/KeyboardShortcutsReceiverTest.java",
276        "tests/src/**/systemui/media/controls/domain/pipeline/MediaDataProcessorTest.kt",
277        "tests/src/**/systemui/media/controls/domain/pipeline/LegacyMediaDataManagerImplTest.kt",
278        "tests/src/**/systemui/temporarydisplay/chipbar/SwipeChipbarAwayGestureHandlerTest.kt",
279        "tests/src/**/systemui/qs/tiles/HotspotTileTest.java",
280        "tests/src/**/systemui/qs/tiles/dialog/InternetDialogDelegateTest.java",
281        "tests/src/**/systemui/navigationbar/NavigationBarControllerImplTest.java",
282        "tests/src/**/systemui/wmshell/BubblesTest.java",
283        "tests/src/**/systemui/statusbar/phone/StatusBarNotificationActivityStarterTest.java",
284        "tests/src/**/systemui/statusbar/phone/KeyguardClockPositionAlgorithmTest.java",
285        "tests/src/**/systemui/shared/system/RemoteTransitionTest.java",
286        "tests/src/**/systemui/qs/tiles/dialog/InternetDialogDelegateControllerTest.java",
287        "tests/src/**/systemui/qs/external/TileLifecycleManagerTest.java",
288        "tests/src/**/systemui/ScreenDecorationsTest.java",
289        "tests/src/**/systemui/statusbar/policy/BatteryControllerStartableTest.java",
290        "tests/src/**/keyguard/CarrierTextManagerTest.java",
291        "tests/src/**/keyguard/KeyguardUpdateMonitorTest.java",
292    ],
293}
294
295// Tests where compilation failed due to kotlin internal references.
296filegroup {
297    name: "SystemUI-tests-broken-robofiles-internal",
298    srcs: [
299        "tests/src/**/android/systemui/media/controls/ui/controller/MediaHierarchyManagerTest.kt",
300        "tests/src/**/android/systemui/statusbar/SplitShadeLockScreenOverScrollerTest.kt",
301        "tests/src/**/android/systemui/statusbar/notification/icon/IconManagerTest.kt",
302        "tests/src/**/android/systemui/notetask/NoteTaskInitializerTest.kt",
303        "tests/src/**/systemui/statusbar/policy/VariableDateViewControllerTest.kt",
304        "tests/src/**/systemui/statusbar/policy/DeviceControlsControllerImplTest.kt",
305        "tests/src/**/systemui/statusbar/pipeline/wifi/ui/viewmodel/WifiViewModelIconParameterizedTest.kt",
306        "tests/src/**/systemui/statusbar/pipeline/wifi/shared/model/WifiNetworkModelTest.kt",
307        "tests/src/**/systemui/statusbar/pipeline/shared/data/repository/ConnectivityRepositoryImplTest.kt",
308        "tests/src/**/systemui/temporarydisplay/chipbar/ChipbarCoordinatorTest.kt",
309        "tests/src/**/systemui/temporarydisplay/TemporaryViewDisplayControllerTest.kt",
310        "tests/src/**/systemui/statusbar/policy/WalletControllerImplTest.kt",
311        "tests/src/**/keyguard/ClockEventControllerTest.kt",
312        "tests/src/**/systemui/bluetooth/qsdialog/BluetoothStateInteractorTest.kt",
313        "tests/src/**/systemui/bluetooth/qsdialog/BluetoothTileDialogDelegateTest.kt",
314        "tests/src/**/systemui/bluetooth/qsdialog/BluetoothTileDialogRepositoryTest.kt",
315        "tests/src/**/systemui/bluetooth/qsdialog/BluetoothTileDialogViewModelTest.kt",
316        "tests/src/**/systemui/bluetooth/qsdialog/DeviceItemFactoryTest.kt",
317        "tests/src/**/systemui/bluetooth/qsdialog/DeviceItemInteractorTest.kt",
318        "tests/src/**/systemui/broadcast/UserBroadcastDispatcherTest.kt",
319        "tests/src/**/systemui/charging/WiredChargingRippleControllerTest.kt",
320        "tests/src/**/systemui/clipboardoverlay/ClipboardModelTest.kt",
321        "tests/src/**/systemui/controls/controller/AuxiliaryPersistenceWrapperTest.kt",
322        "tests/src/**/systemui/controls/controller/ControlsControllerImplTest.kt",
323        "tests/src/**/systemui/controls/controller/DeletionJobServiceTest.kt",
324        "tests/src/**/systemui/controls/management/ControlsFavoritingActivityTest.kt",
325        "tests/src/**/systemui/controls/ui/ControlsUiControllerImplTest.kt",
326        "tests/src/**/systemui/controls/ui/SelectionItemTest.kt",
327        "tests/src/**/systemui/keyguard/ui/view/layout/sections/DefaultDeviceEntrySectionTest.kt",
328        "tests/src/**/systemui/media/controls/domain/pipeline/LegacyMediaDataFilterImplTest.kt",
329        "tests/src/**/systemui/media/controls/domain/pipeline/LegacyMediaDataManagerImplTest.kt",
330        "tests/src/**/systemui/media/controls/ui/MediaPlayerDataTest.kt",
331        "tests/src/**/systemui/media/controls/ui/animation/AnimationBindHandlerTest.kt",
332        "tests/src/**/systemui/media/controls/ui/animation/ColorSchemeTransitionTest.kt",
333        "tests/src/**/systemui/media/controls/ui/animation/MetadataAnimationHandlerTest.kt",
334        "tests/src/**/systemui/media/controls/ui/controller/MediaCarouselControllerTest.kt",
335        "tests/src/**/systemui/media/controls/ui/controller/MediaControlPanelTest.kt",
336        "tests/src/**/systemui/media/controls/ui/controller/MediaViewControllerTest.kt",
337        "tests/src/**/systemui/media/controls/ui/drawable/SquigglyProgressTest.kt",
338        "tests/src/**/systemui/media/taptotransfer/sender/MediaTttSenderCoordinatorTest.kt",
339        "tests/src/**/systemui/navigationbar/gestural/BackPanelControllerTest.kt",
340        "tests/src/**/systemui/notetask/NoteTaskControllerTest.kt",
341        "tests/src/**/systemui/privacy/AppOpsPrivacyItemMonitorTest.kt",
342        "tests/src/**/systemui/privacy/PrivacyItemControllerTest.kt",
343        "tests/src/**/systemui/qs/external/CustomTileStatePersisterTest.kt",
344        "tests/src/**/systemui/qs/external/TileRequestDialogTest.kt",
345        "tests/src/**/systemui/qs/external/TileServiceRequestControllerTest.kt",
346        "tests/src/**/systemui/qs/tileimpl/QSTileViewImplTest.kt",
347        "tests/src/**/systemui/qs/tiles/AlarmTileTest.kt",
348        "tests/src/**/systemui/qs/tiles/BluetoothTileTest.kt",
349        "tests/src/**/systemui/statusbar/pipeline/mobile/data/repository/prod/FullMobileConnectionRepositoryTest.kt",
350        "tests/src/**/systemui/statusbar/pipeline/mobile/data/repository/prod/MobileConnectionRepositoryTest.kt",
351        "tests/src/**/systemui/statusbar/pipeline/mobile/data/repository/prod/MobileConnectionTelephonySmokeTests.kt",
352        "tests/src/**/systemui/statusbar/pipeline/mobile/data/repository/MobileRepositorySwitcherTest.kt",
353        "tests/src/**/systemui/statusbar/pipeline/mobile/data/model/SystemUiCarrierConfigTest.kt",
354        "tests/src/**/systemui/statusbar/phone/fragment/MultiSourceMinAlphaControllerTest.kt",
355        "tests/src/**/systemui/statusbar/phone/FoldStateListenerTest.kt",
356        "tests/src/**/systemui/statusbar/notification/stack/ui/view/NotificationStatsLoggerTest.kt",
357        "tests/src/**/systemui/statusbar/notification/row/TextPrecomputerTest.kt",
358        "tests/src/**/systemui/statusbar/notification/row/SingleLineConversationViewBinderTest.kt",
359        "tests/src/**/systemui/statusbar/notification/row/SingleLineViewBinderTest.kt",
360        "tests/src/**/systemui/statusbar/notification/row/SingleLineViewInflaterTest.kt",
361        "tests/src/**/systemui/statusbar/notification/row/ChannelEditorDialogControllerTest.kt",
362        "tests/src/**/systemui/statusbar/notification/logging/NotificationMemoryLoggerTest.kt",
363        "tests/src/**/systemui/statusbar/notification/logging/NotificationMemoryMeterTest.kt",
364        "tests/src/**/systemui/statusbar/notification/logging/NotificationMemoryViewWalkerTest.kt",
365        "tests/src/**/systemui/statusbar/notification/collection/coordinator/ViewConfigCoordinatorTest.kt",
366        "tests/src/**/systemui/statusbar/notification/collection/coordinator/StackCoordinatorTest.kt",
367        "tests/src/**/systemui/statusbar/notification/collection/coordinator/ShadeEventCoordinatorTest.kt",
368        "tests/src/**/systemui/statusbar/notification/collection/coordinator/DataStoreCoordinatorTest.kt",
369        "tests/src/**/systemui/statusbar/notification/collection/coordinator/RowAppearanceCoordinatorTest.kt",
370        "tests/src/**/systemui/statusbar/notification/RoundableTest.kt",
371        "tests/src/**/systemui/stylus/StylusUsiPowerUiTest.kt",
372        "tests/src/**/systemui/statusbar/gesture/GenericGestureDetectorTest.kt",
373        "tests/src/**/systemui/statusbar/events/SystemStatusAnimationSchedulerImplTest.kt",
374        "tests/src/**/systemui/statusbar/connectivity/MobileStateTest.kt",
375        "tests/src/**/systemui/statusbar/commandline/CommandParserTest.kt",
376        "tests/src/**/systemui/statusbar/LockscreenShadeTransitionControllerTest.kt",
377        "tests/src/**/systemui/statusbar/LightRevealScrimTest.kt",
378        "tests/src/**/systemui/shade/transition/LargeScreenShadeInterpolatorImplTest.kt",
379        "tests/src/**/systemui/shade/ShadeExpansionStateManagerTest.kt",
380        "tests/src/**/systemui/shade/ShadeHeaderControllerTest.kt",
381        "tests/src/**/systemui/shade/NotificationsQSContainerControllerTest.kt",
382        "tests/src/**/systemui/settings/UserFileManagerImplTest.kt",
383        "tests/src/**/systemui/settings/UserTrackerImplReceiveTest.kt",
384        "tests/src/**/systemui/settings/UserTrackerImplTest.kt",
385        "tests/src/**/systemui/shade/GlanceableHubContainerControllerTest.kt",
386        "tests/src/**/systemui/shade/NotificationsQSContainerControllerLegacyTest.kt",
387        "tests/src/**/systemui/screenshot/ScreenshotPolicyImplTest.kt",
388        "tests/src/**/systemui/qs/tileimpl/TilesStatesTextTest.kt",
389        "tests/src/**/systemui/media/controls/domain/pipeline/MediaDataFilterImplTest.kt",
390        "tests/src/**/systemui/controls/ui/ControlViewHolderTest.kt",
391        "tests/src/**/systemui/controls/settings/ControlsSettingsDialogManagerImplTest.kt",
392        "tests/src/**/systemui/controls/controller/ControlsBindingControllerImplTest.kt",
393        "tests/src/**/systemui/bluetooth/qsdialog/BluetoothAutoOnRepositoryTest.kt",
394        "tests/src/**/systemui/media/taptotransfer/receiver/FakeMediaTttChipControllerReceiver.kt",
395        "tests/src/**/systemui/media/taptotransfer/receiver/MediaTttChipControllerReceiverTest.kt",
396        "tests/src/**/systemui/controls/management/ControlsProviderSelectorActivityTest.kt",
397        "tests/src/**/systemui/settings/DisplayTrackerImplTest.kt",
398        "tests/src/**/systemui/biometrics/ui/viewmodel/PromptViewModelTest.kt",
399        "tests/src/**/systemui/wmshell/BubblesTest.java",
400    ],
401}
402
403//Create a library to expose SystemUI's resources to other modules.
404android_library {
405    name: "SystemUI-res",
406    use_resource_processor: true,
407    resource_dirs: [
408        "res-product",
409        "res-keyguard",
410        "res",
411    ],
412    static_libs: [
413        "SystemUISharedLib",
414        "SystemUICustomizationLib",
415        "SettingsLib",
416        "androidx.leanback_leanback",
417        "androidx.slice_slice-core",
418        "androidx.slice_slice-view",
419    ],
420    manifest: "AndroidManifest-res.xml",
421}
422
423android_library {
424    name: "SystemUI-core",
425    srcs: [
426        "src/**/*.kt",
427        "src/**/*.java",
428        "src/**/I*.aidl",
429        ":ReleaseJavaFiles",
430        "compose/features/src/**/*.kt",
431        "compose/facade/enabled/src/**/*.kt",
432    ],
433    product_variables: {
434        debuggable: {
435            srcs: [":DebugJavaFiles"],
436            exclude_srcs: [":ReleaseJavaFiles"],
437        },
438    },
439    use_resource_processor: true,
440    resource_dirs: [],
441    static_libs: [
442        "//frameworks/libs/systemui:compilelib",
443        "//frameworks/base/packages/SystemUI/pods/com/android/systemui/dagger:api",
444        "//frameworks/base/packages/SystemUI/pods/com/android/systemui/util/settings:api",
445        "//frameworks/base/packages/SystemUI/pods/com/android/systemui/retail:impl",
446        "SystemUI-res",
447        "WifiTrackerLib",
448        "WindowManager-Shell",
449        "PlatformAnimationLib",
450        "SystemUICommon",
451        "SystemUICustomizationLib",
452        "SystemUILogLib",
453        "SystemUIPluginLib",
454        "SystemUISharedLib",
455        "SystemUI-shared-utils",
456        "SystemUI-statsd",
457        "SettingsLib",
458        "com_android_systemui_flags_lib",
459        "//frameworks/libs/systemui:com_android_systemui_shared_flags_lib",
460        "androidx.core_core-ktx",
461        "androidx.viewpager2_viewpager2",
462        "androidx.legacy_legacy-support-v4",
463        "androidx.recyclerview_recyclerview",
464        "androidx.preference_preference",
465        "androidx.appcompat_appcompat",
466        "androidx.concurrent_concurrent-futures",
467        "androidx.concurrent_concurrent-futures-ktx",
468        "androidx.mediarouter_mediarouter",
469        "androidx.palette_palette",
470        "androidx.legacy_legacy-preference-v14",
471        "androidx.leanback_leanback",
472        "androidx.slice_slice-core",
473        "androidx.slice_slice-view",
474        "androidx.slice_slice-builders",
475        "androidx.arch.core_core-runtime",
476        "androidx.lifecycle_lifecycle-common-java8",
477        "androidx.lifecycle_lifecycle-extensions",
478        "androidx.lifecycle_lifecycle-runtime-ktx",
479        "androidx.dynamicanimation_dynamicanimation",
480        "androidx-constraintlayout_constraintlayout",
481        "androidx.exifinterface_exifinterface",
482        "androidx.room_room-runtime",
483        "androidx.room_room-ktx",
484        "androidx.datastore_datastore-preferences",
485        "androidx.media3.media3-common",
486        "androidx.media3.media3-session",
487        "com.google.android.material_material",
488        "device_state_flags_lib",
489        "kotlinx_coroutines_android",
490        "kotlinx_coroutines",
491        "//frameworks/libs/systemui:iconloader_base",
492        "SystemUI-tags",
493        "SystemUI-proto",
494        "monet",
495        "libmonet",
496        "dagger2",
497        "jsr305",
498        "jsr330",
499        "lottie",
500        "lottie_compose",
501        "LowLightDreamLib",
502        "TraceurCommon",
503        "Traceur-res",
504        "//frameworks/libs/systemui:motion_tool_lib",
505        "//frameworks/libs/systemui:contextualeducationlib",
506        "notification_flags_lib",
507        "PlatformComposeCore",
508        "PlatformComposeSceneTransitionLayout",
509        "androidx.compose.runtime_runtime",
510        "androidx.compose.material3_material3",
511        "androidx.compose.material_material-icons-extended",
512        "androidx.activity_activity-compose",
513        "androidx.compose.animation_animation-graphics",
514        "androidx.lifecycle_lifecycle-viewmodel-compose",
515    ],
516    libs: [
517        "keepanno-annotations",
518    ],
519    manifest: "AndroidManifest.xml",
520
521    javacflags: [
522        "-Adagger.fastInit=enabled",
523        "-Adagger.explicitBindingConflictsWithInject=ERROR",
524        "-Adagger.strictMultibindingValidation=enabled",
525        "-Aroom.schemaLocation=frameworks/base/packages/SystemUI/schemas",
526    ],
527    kotlincflags: ["-Xjvm-default=all"],
528
529    plugins: [
530        "androidx.room_room-compiler-plugin",
531        "dagger2-compiler",
532    ],
533
534    lint: {
535        extra_check_modules: ["SystemUILintChecker"],
536        warning_checks: ["MissingApacheLicenseDetector"],
537        baseline_filename: "lint-baseline.xml",
538    },
539}
540
541filegroup {
542    name: "AAA-src",
543    srcs: ["tests/src/com/android/AAAPlusPlusVerifySysuiRequiredTestPropertiesTest.java"],
544    path: "tests/src",
545}
546
547filegroup {
548    name: "kosmos-src",
549    srcs: ["tests/utils/kosmos/src/**/*.kt"],
550    path: "tests/utils/kosmos",
551}
552
553java_library {
554    name: "kosmos",
555    host_supported: true,
556    srcs: [":kosmos-src"],
557    static_libs: [
558        "kotlin-reflect",
559        "kotlin-stdlib",
560    ],
561}
562
563filegroup {
564    name: "SystemUI-tests-utils",
565    srcs: [
566        "tests/utils/src/**/*.java",
567        "tests/utils/src/**/*.kt",
568        ":kosmos-src",
569    ],
570    path: "tests/utils",
571}
572
573filegroup {
574    name: "SystemUI-robotest-utils",
575    srcs: [
576        "tests/robolectric/src/com/android/systemui/testutils/**/*.kt",
577        "tests/robolectric/src/com/android/systemui/testutils/**/*.java",
578    ],
579    path: "tests/robolectric/src/com/android/systemui/testutils",
580}
581
582filegroup {
583    name: "SystemUI-tests-multivalent",
584    srcs: [
585        "multivalentTests/src/**/*.kt",
586        "multivalentTests/src/**/*.java",
587    ],
588    path: "multivalentTests/src",
589}
590
591java_library {
592    name: "SystemUI-tests-concurrency",
593    srcs: [
594        "src/com/android/systemui/util/concurrency/DelayableExecutor.java",
595        "src/com/android/systemui/util/time/SystemClock.java",
596        "tests/utils/src/com/android/systemui/util/concurrency/FakeExecutor.java",
597        "tests/utils/src/com/android/systemui/util/time/FakeSystemClock.java",
598    ],
599    jarjar_rules: ":jarjar-rules-shared",
600}
601
602android_library {
603    name: "SystemUI-tests-base",
604    use_resource_processor: true,
605    manifest: "tests/AndroidManifest-base.xml",
606    resource_dirs: [
607        "tests/res",
608    ],
609    asset_dirs: [
610        "tests/goldens",
611        "schemas",
612    ],
613    static_libs: [
614        "SystemUI-res",
615        "WifiTrackerLib",
616        "PlatformAnimationLib",
617        "PlatformMotionTestingCompose",
618        "ScreenshotComposeUtilsLib",
619        "SystemUIPluginLib",
620        "SystemUISharedLib",
621        "SystemUICustomizationLib",
622        "SystemUICustomizationTestUtils",
623        "SystemUI-shared-utils",
624        "SystemUI-statsd",
625        "SettingsLib",
626        "com_android_systemui_flags_lib",
627        "//frameworks/libs/systemui:com_android_systemui_shared_flags_lib",
628        "flag-junit-base",
629        "platform-parametric-runner-lib",
630        "androidx.viewpager2_viewpager2",
631        "androidx.legacy_legacy-support-v4",
632        "androidx.recyclerview_recyclerview",
633        "androidx.preference_preference",
634        "androidx.appcompat_appcompat",
635        "androidx.concurrent_concurrent-futures",
636        "androidx.mediarouter_mediarouter",
637        "androidx.palette_palette",
638        "androidx.legacy_legacy-preference-v14",
639        "androidx.leanback_leanback",
640        "androidx.slice_slice-core",
641        "androidx.slice_slice-view",
642        "androidx.slice_slice-builders",
643        "androidx.arch.core_core-runtime",
644        "androidx.lifecycle_lifecycle-common-java8",
645        "androidx.lifecycle_lifecycle-extensions",
646        "androidx.lifecycle_lifecycle-runtime-ktx",
647        "androidx.dynamicanimation_dynamicanimation",
648        "androidx-constraintlayout_constraintlayout",
649        "androidx.exifinterface_exifinterface",
650        "androidx.room_room-runtime",
651        "androidx.room_room-testing",
652        "androidx.room_room-ktx",
653        "androidx.datastore_datastore-preferences",
654        "androidx.media3.media3-common",
655        "androidx.media3.media3-session",
656        "device_state_flags_lib",
657        "kotlinx-coroutines-android",
658        "kotlinx-coroutines-core",
659        "kotlinx_coroutines_test",
660        "kotlin-reflect",
661        "//frameworks/libs/systemui:iconloader_base",
662        "SystemUI-tags",
663        "SystemUI-proto",
664        "metrics-helper-lib",
665        "hamcrest-library",
666        "androidx.test.rules",
667        "testables",
668        "truth",
669        "monet",
670        "libmonet",
671        "lottie_compose",
672        "dagger2",
673        "jsr330",
674        "WindowManager-Shell",
675        "LowLightDreamLib",
676        "//frameworks/libs/systemui:motion_tool_lib",
677        "//frameworks/libs/systemui:contextualeducationlib",
678        "androidx.core_core-animation-testing",
679        "androidx.lifecycle_lifecycle-runtime-testing",
680        "androidx.compose.ui_ui",
681        "flag-junit",
682        "ravenwood-junit",
683        "platform-test-annotations",
684        "notification_flags_lib",
685        "PlatformComposeCore",
686        "PlatformComposeSceneTransitionLayout",
687        "PlatformComposeSceneTransitionLayoutTestsUtils",
688        "androidx.compose.runtime_runtime",
689        "androidx.compose.material3_material3",
690        "androidx.compose.material_material-icons-extended",
691        "androidx.activity_activity-compose",
692        "androidx.compose.animation_animation-graphics",
693        "androidx.lifecycle_lifecycle-viewmodel-compose",
694        "TraceurCommon",
695        "Traceur-res",
696    ],
697}
698
699android_library {
700    name: "SystemUI-tests",
701    use_resource_processor: true,
702    manifest: "tests/AndroidManifest-base.xml",
703    resource_dirs: [],
704    additional_manifests: ["tests/AndroidManifest.xml"],
705    srcs: [
706        "tests/src/**/*.kt",
707        "tests/src/**/*.java",
708        "src/**/*.kt",
709        "src/**/*.java",
710        "src/**/I*.aidl",
711        ":ReleaseJavaFiles",
712        ":SystemUI-tests-multivalent",
713        ":SystemUI-tests-utils",
714        "compose/features/src/**/*.kt",
715        "compose/facade/enabled/src/**/*.kt",
716    ],
717    static_libs: [
718        "//frameworks/libs/systemui:compilelib",
719        "//frameworks/base/packages/SystemUI/pods/com/android/systemui/dagger:api",
720        "//frameworks/base/packages/SystemUI/pods/com/android/systemui/util/settings:api",
721        "//frameworks/base/packages/SystemUI/pods/com/android/systemui/retail:impl",
722        "SystemUI-tests-base",
723        "androidx.test.uiautomator_uiautomator",
724        "androidx.core_core-animation-testing",
725        "androidx.lifecycle_lifecycle-runtime-testing",
726        "mockito-target-extended-minus-junit4",
727        "mockito-kotlin-nodeps",
728        "androidx.test.ext.junit",
729        "androidx.test.ext.truth",
730        "kotlin-test",
731        "platform-screenshot-diff-core",
732        "PlatformMotionTesting",
733        "SystemUICustomizationTestUtils",
734        "androidx.compose.runtime_runtime",
735        "kosmos",
736        "testables",
737        "androidx.test.rules",
738    ],
739    libs: [
740        "android.test.runner.stubs.system",
741        "android.test.base.stubs.system",
742        "android.test.mock.stubs.system",
743        "keepanno-annotations",
744    ],
745    kotlincflags: [
746        "-Xjvm-default=all",
747        // TODO(b/352363800): Why do we need this?
748        "-J-Xmx8192M",
749    ],
750    aaptflags: [
751        "--extra-packages",
752        "com.android.systemui",
753    ],
754    plugins: [
755        "androidx.room_room-compiler-plugin",
756        "dagger2-compiler",
757    ],
758    lint: {
759        test: true,
760        extra_check_modules: ["SystemUILintChecker"],
761    },
762}
763
764android_app {
765    name: "SystemUIRobo-stub",
766    // SystemUiRavenTests references the .aapt.srcjar
767    use_resource_processor: false,
768    defaults: [
769        "platform_app_defaults",
770        "SystemUI_optimized_defaults",
771    ],
772    manifest: "tests/AndroidManifest-base.xml",
773
774    static_libs: [
775        "//frameworks/libs/systemui:compilelib",
776        "SystemUI-tests-base",
777        "androidx.compose.runtime_runtime",
778        "SystemUI-core",
779    ],
780    libs: [
781        "keepanno-annotations",
782    ],
783    aaptflags: [
784        "--extra-packages",
785        "com.android.systemui",
786    ],
787    dont_merge_manifests: true,
788    platform_apis: true,
789    system_ext_specific: true,
790    certificate: "platform",
791    privileged: true,
792    resource_dirs: [],
793    kotlincflags: ["-Xjvm-default=all"],
794    optimize: {
795        optimize: false,
796        shrink_resources: false,
797        optimized_shrink_resources: false,
798        proguard_flags_files: ["proguard.flags"],
799    },
800
801    plugins: ["dagger2-compiler"],
802}
803
804java_library {
805    name: "RoboTestLibraries",
806    static_libs: [
807        "dagger2",
808        "androidx.test.uiautomator_uiautomator",
809        "androidx.core_core-animation-testing",
810        "androidx.test.ext.junit",
811        "inline-mockito-robolectric-prebuilt",
812        "mockito-kotlin-nodeps",
813        "platform-parametric-runner-lib",
814        "SystemUICustomizationTestUtils",
815        "kotlin-test",
816        "kosmos",
817    ],
818}
819
820android_robolectric_test {
821    name: "SystemUiRoboTests",
822    srcs: [
823        "tests/robolectric/src/**/*.kt",
824        "tests/robolectric/src/**/*.java",
825        ":SystemUI-tests-utils",
826        ":SystemUI-tests-multivalent",
827    ],
828    static_libs: [
829        "RoboTestLibraries",
830        "androidx.compose.runtime_runtime",
831    ],
832    libs: [
833        "android.test.runner.impl",
834        "android.test.base.impl",
835        "android.test.mock.impl",
836        "truth",
837        "androidx.test.ext.truth",
838    ],
839
840    upstream: true,
841
842    instrumentation_for: "SystemUIRobo-stub",
843    java_resource_dirs: ["tests/robolectric/config"],
844    plugins: [
845        "dagger2-compiler",
846    ],
847    strict_mode: false,
848}
849
850// in-place tests which use Robolectric in the tests directory
851// instead of multivalentTests
852android_robolectric_test {
853    name: "SystemUiRoboTestsInplace",
854    srcs: [
855        "tests/robolectric/src/**/*.kt",
856        "tests/robolectric/src/**/*.java",
857        ":SystemUI-tests-utils",
858        ":SystemUI-tests-multivalent",
859        ":SystemUI-tests-robofiles",
860    ],
861    exclude_srcs: [
862        ":SystemUI-tests-broken-robofiles-mockito-extended",
863        ":SystemUI-tests-broken-robofiles-internal",
864        ":SystemUI-tests-broken-robofiles-run",
865    ],
866    static_libs: [
867        "RoboTestLibraries",
868        "androidx.compose.runtime_runtime",
869    ],
870    libs: [
871        "android.test.runner.impl",
872        "android.test.base.impl",
873        "android.test.mock.impl",
874        "truth",
875        "androidx.test.ext.truth",
876    ],
877
878    upstream: true,
879
880    instrumentation_for: "SystemUIRobo-stub",
881    java_resource_dirs: ["tests/robolectric/config"],
882    plugins: [
883        "dagger2-compiler",
884    ],
885    strict_mode: false,
886}
887
888android_ravenwood_test {
889    name: "SystemUiRavenTests",
890    srcs: [
891        ":SystemUI-tests-utils",
892        ":SystemUI-tests-multivalent",
893        // TODO(b/294256649): pivot to using {.aapt.jar} and re-enable
894        // use_resource_processor: true when better supported by soong
895        ":SystemUIRobo-stub{.aapt.srcjar}",
896    ],
897    static_libs: [
898        "SystemUI-core",
899        "SystemUI-res",
900        "SystemUI-tests-base",
901        "androidx.test.uiautomator_uiautomator",
902        "androidx.core_core-animation-testing",
903        "androidx.test.ext.junit",
904        "kosmos",
905        "kotlin-test",
906        "mockito-kotlin-nodeps",
907        "androidx.compose.runtime_runtime",
908    ],
909    libs: [
910        "android.test.runner.impl",
911        "android.test.base.impl",
912        "android.test.mock.impl",
913    ],
914    auto_gen_config: true,
915    plugins: [
916        "dagger2-compiler",
917    ],
918}
919
920// Opt-out config for optimizing the SystemUI target using R8.
921// Disabled via `export SYSTEMUI_OPTIMIZE_JAVA=false`, or explicitly in Make via
922// `SYSTEMUI_OPTIMIZE_JAVA := false`.
923soong_config_module_type {
924    name: "systemui_optimized_java_defaults",
925    module_type: "java_defaults",
926    config_namespace: "ANDROID",
927    bool_variables: ["SYSTEMUI_OPTIMIZE_JAVA"],
928    properties: ["optimize"],
929}
930
931systemui_optimized_java_defaults {
932    name: "SystemUI_optimized_defaults",
933    soong_config_variables: {
934        SYSTEMUI_OPTIMIZE_JAVA: {
935            optimize: {
936                enabled: true,
937                optimize: true,
938                shrink: true,
939                shrink_resources: true,
940                optimized_shrink_resources: true,
941                ignore_warnings: false,
942                proguard_compatibility: false,
943            },
944            conditions_default: {
945                optimize: {
946                    ignore_warnings: false,
947                    proguard_compatibility: false,
948                },
949            },
950        },
951    },
952}
953
954android_app {
955    name: "SystemUI",
956    defaults: [
957        "platform_app_defaults",
958        "SystemUI_optimized_defaults",
959        "wmshell_defaults",
960    ],
961    static_libs: [
962        "SystemUI-core",
963    ],
964    resource_dirs: [],
965
966    use_resource_processor: true,
967    platform_apis: true,
968    system_ext_specific: true,
969    certificate: "platform",
970    privileged: true,
971
972    kotlincflags: ["-Xjvm-default=all"],
973
974    dxflags: ["--multi-dex"],
975    optimize: {
976        proguard_flags_files: ["proguard.flags"],
977    },
978    required: [
979        "privapp_whitelist_com.android.systemui",
980    ],
981}
982