Move host constraint builder logic to the concrete wrapper implementation.

Fix build.


Bug: 408283627
Flag: EXEMPT independent module
Test: See demo
Change-Id: Ic15eb61eaa76ee9eeb1680dfe90cb89442f7d159
This commit is contained in:
Shamali Patwa
2025-06-02 22:34:00 -07:00
parent 9e604fbe6e
commit a1c4ff596d
2 changed files with 20 additions and 20 deletions

View File

@@ -32,13 +32,14 @@ import com.android.launcher3.compose.core.widgetpicker.WidgetPickerComposeWrappe
import com.android.launcher3.concurrent.annotations.BackgroundContext
import com.android.launcher3.dagger.ApplicationContext
import com.android.launcher3.util.ApiWrapper
import com.android.launcher3.widgetpicker.WidgetPickerConfig
import com.android.launcher3.widgetpicker.WidgetPickerConfig.Companion.EXTRA_IS_PENDING_WIDGET_DRAG
import com.android.launcher3.widgetpicker.WidgetPickerConfig.Companion.asHostConstraints
import com.android.launcher3.widgetpicker.data.repository.WidgetAppIconsRepository
import com.android.launcher3.widgetpicker.data.repository.WidgetUsersRepository
import com.android.launcher3.widgetpicker.data.repository.WidgetsRepository
import com.android.launcher3.widgetpicker.listeners.WidgetPickerAddItemListener
import com.android.launcher3.widgetpicker.listeners.WidgetPickerDragItemListener
import com.android.launcher3.widgetpicker.shared.model.HostConstraint
import com.android.launcher3.widgetpicker.shared.model.WidgetHostInfo
import com.android.launcher3.widgetpicker.ui.WidgetInteractionInfo
import com.android.launcher3.widgetpicker.ui.WidgetPickerEventListeners
@@ -225,5 +226,23 @@ class WidgetPickerComposeWrapperImpl @Inject constructor(
finish()
}
/** Builds the host constraints to provide to the widget picker module. */
fun WidgetPickerConfig.asHostConstraints() =
buildList {
if (filteredUsers.isNotEmpty()) {
add(HostConstraint.HostUserConstraint(filteredUsers))
}
if (categoryInclusionFilter != 0
|| categoryExclusionFilter != 0
) {
add(
HostConstraint.HostCategoryConstraint(
categoryInclusionMask = categoryInclusionFilter,
categoryExclusionMask = categoryExclusionFilter,
)
)
}
}
}
}

View File

@@ -17,7 +17,6 @@
package com.android.launcher3.widgetpicker
import android.os.UserHandle
import com.android.launcher3.widgetpicker.shared.model.HostConstraint
/**
* Possible parameters sent over by the widget host when launching the widget picker activity.
@@ -58,23 +57,5 @@ data class WidgetPickerConfig(
const val EXTRA_IS_PENDING_WIDGET_DRAG = "is_pending_widget_drag"
const val HOMESCREEN_WIDGETS_UI_SURFACE = "widgets"
/** Builds the host constraints to provide to the widget picker module. */
fun WidgetPickerConfig.asHostConstraints() =
buildList {
if (filteredUsers.isNotEmpty()) {
add(HostConstraint.HostUserConstraint(filteredUsers))
}
if (categoryInclusionFilter != 0
|| categoryExclusionFilter != 0
) {
add(
HostConstraint.HostCategoryConstraint(
categoryInclusionMask = categoryInclusionFilter,
categoryExclusionMask = categoryExclusionFilter,
)
)
}
}
}
}