Skip to content
Snippets Groups Projects
Commit 458ba06f authored by Ibrahim Yilmaz's avatar Ibrahim Yilmaz
Browse files

Enable CallLayout setDataAsync when the flag is on

This CLs binds setDataAsync and its feature flag.

Bug: 293961072
Test: SystemUiTests
Change-Id: Ie482d130aff81943c55e7cee464b68274fcb8e99
parent df162471
No related branches found
No related tags found
No related merge requests found
/*
* Copyright (C) 2023 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 com.android.systemui.statusbar.notification.row
import android.content.Context
import android.util.AttributeSet
import android.view.View
import com.android.internal.widget.CallLayout
import javax.inject.Inject
class CallLayoutSetDataAsyncFactory @Inject constructor() : NotifRemoteViewsFactory {
override fun instantiate(
row: ExpandableNotificationRow,
@NotificationRowContentBinder.InflationFlag layoutType: Int,
parent: View?,
name: String,
context: Context,
attrs: AttributeSet
): View? =
if (name == CallLayout::class.java.name)
CallLayout(context, attrs).apply { setSetDataAsyncEnabled(true) }
else null
}
......@@ -61,7 +61,8 @@ public abstract class NotificationRowModule {
static Set<NotifRemoteViewsFactory> provideNotifRemoteViewsFactories(
FeatureFlags featureFlags,
PrecomputedTextViewFactory precomputedTextViewFactory,
BigPictureLayoutInflaterFactory bigPictureLayoutInflaterFactory
BigPictureLayoutInflaterFactory bigPictureLayoutInflaterFactory,
CallLayoutSetDataAsyncFactory callLayoutSetDataAsyncFactory
) {
final Set<NotifRemoteViewsFactory> replacementFactories = new HashSet<>();
if (featureFlags.isEnabled(Flags.PRECOMPUTED_TEXT)) {
......@@ -70,6 +71,9 @@ public abstract class NotificationRowModule {
if (featureFlags.isEnabled(Flags.BIGPICTURE_NOTIFICATION_LAZY_LOADING)) {
replacementFactories.add(bigPictureLayoutInflaterFactory);
}
if (featureFlags.isEnabled(Flags.CALL_LAYOUT_ASYNC_SET_DATA)) {
replacementFactories.add(callLayoutSetDataAsyncFactory);
}
return replacementFactories;
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment