mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-05 02:16:49 +00:00
Taskbar Icon changes
Test: Manual Bug: 379158656 Flag: com.android.wm.shell.enable_gsf Change-Id: Ic4ec9a7c634231c2592cfcd6ba6c8f8252c2dd98
This commit is contained in:
@@ -37,6 +37,7 @@ import com.android.launcher3.views.ActivityContext
|
||||
import com.android.launcher3.views.IconButtonView
|
||||
import com.android.quickstep.DeviceConfigWrapper
|
||||
import com.android.quickstep.util.ContextualSearchStateManager
|
||||
import com.android.wm.shell.Flags
|
||||
|
||||
/** Taskbar all apps button container for customizable taskbar. */
|
||||
class TaskbarAllAppsButtonContainer
|
||||
@@ -97,14 +98,34 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0
|
||||
|
||||
@DrawableRes
|
||||
private fun getAllAppsButton(isTransientTaskbar: Boolean): Int {
|
||||
if (Flags.enableGsf()) {
|
||||
return getAllAppsButtonForExpressiveTheme()
|
||||
}
|
||||
val shouldSelectTransientIcon =
|
||||
isTransientTaskbar || (enableTaskbarPinning() && !activityContext.isThreeButtonNav)
|
||||
return if (shouldSelectTransientIcon) R.drawable.ic_transient_taskbar_all_apps_search_button
|
||||
else R.drawable.ic_taskbar_all_apps_search_button
|
||||
}
|
||||
|
||||
@DrawableRes
|
||||
private fun getAllAppsButtonForExpressiveTheme(): Int {
|
||||
return R.drawable.ic_taskbar_all_apps_search_button_expressive_theme
|
||||
}
|
||||
|
||||
@DimenRes
|
||||
fun getAllAppsButtonTranslationXOffsetForExpressiveTheme(isTransientTaskbar: Boolean): Int {
|
||||
return if (isTransientTaskbar) {
|
||||
R.dimen.transient_taskbar_all_apps_button_translation_x_offset_for_expressive_theme
|
||||
} else {
|
||||
R.dimen.taskbar_all_apps_search_button_translation_x_offset_for_expressive_theme
|
||||
}
|
||||
}
|
||||
|
||||
@DimenRes
|
||||
fun getAllAppsButtonTranslationXOffset(isTransientTaskbar: Boolean): Int {
|
||||
if (Flags.enableGsf()) {
|
||||
return getAllAppsButtonTranslationXOffsetForExpressiveTheme(isTransientTaskbar)
|
||||
}
|
||||
return if (isTransientTaskbar) {
|
||||
R.dimen.transient_taskbar_all_apps_button_translation_x_offset
|
||||
} else {
|
||||
|
||||
@@ -20,6 +20,7 @@ import android.annotation.SuppressLint
|
||||
import android.content.Context
|
||||
import android.content.res.ColorStateList
|
||||
import android.graphics.Color.TRANSPARENT
|
||||
import android.graphics.drawable.Drawable
|
||||
import android.util.AttributeSet
|
||||
import androidx.core.view.setPadding
|
||||
import com.android.launcher3.R
|
||||
@@ -28,6 +29,7 @@ import com.android.launcher3.taskbar.TaskbarActivityContext
|
||||
import com.android.launcher3.taskbar.TaskbarViewCallbacks
|
||||
import com.android.launcher3.views.ActivityContext
|
||||
import com.android.launcher3.views.IconButtonView
|
||||
import com.android.wm.shell.Flags
|
||||
|
||||
/** Taskbar divider view container for customizable taskbar. */
|
||||
class TaskbarDividerContainer
|
||||
@@ -46,16 +48,24 @@ constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0
|
||||
setUpIcon()
|
||||
}
|
||||
|
||||
@SuppressLint("UseCompatLoadingForDrawables")
|
||||
fun setUpIcon() {
|
||||
backgroundTintList = ColorStateList.valueOf(TRANSPARENT)
|
||||
val drawable = resources.getDrawable(R.drawable.taskbar_divider_button)
|
||||
val drawable = getTaskbarDividerIcon()
|
||||
setIconDrawable(drawable)
|
||||
if (!activityContext.isTransientTaskbar) {
|
||||
setPadding(dpToPx(activityContext.taskbarSpecsEvaluator.taskbarIconPadding.toFloat()))
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressLint("UseCompatLoadingForDrawables")
|
||||
fun getTaskbarDividerIcon(): Drawable {
|
||||
return if (Flags.enableGsf()) {
|
||||
resources.getDrawable(R.drawable.taskbar_divider_button_expressive_theme)
|
||||
} else {
|
||||
resources.getDrawable(R.drawable.taskbar_divider_button)
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressLint("ClickableViewAccessibility")
|
||||
fun setUpCallbacks(callbacks: TaskbarViewCallbacks) {
|
||||
setOnLongClickListener(callbacks.taskbarDividerLongClickListener)
|
||||
|
||||
Reference in New Issue
Block a user