Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 601e0ff8 authored by Jagrut Desai's avatar Jagrut Desai Committed by Android (Google) Code Review
Browse files

Merge "Make clear announcment for taskbar education." into tm-qpr-dev

parents bc65c3d4 ef1a9b79
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -21,6 +21,8 @@
    android:clipChildren="false"
    android:clipToPadding="false"
    android:fitsSystemWindows="true"
    android:focusable="true"
    android:importantForAccessibility="yes"
    android:gravity="center"
    android:orientation="vertical">

+40 −0
Original line number Diff line number Diff line
@@ -17,10 +17,13 @@ package com.android.launcher3.taskbar

import android.graphics.PorterDuff.Mode.SRC_ATOP
import android.graphics.PorterDuffColorFilter
import android.os.Bundle
import android.view.View
import android.view.View.GONE
import android.view.View.VISIBLE
import android.view.ViewGroup
import android.view.accessibility.AccessibilityEvent
import android.view.accessibility.AccessibilityNodeInfo
import androidx.annotation.IntDef
import androidx.annotation.LayoutRes
import com.airbnb.lottie.LottieAnimationView
@@ -153,6 +156,7 @@ class TaskbarEduTooltipController(val activityContext: TaskbarActivityContext) :
            FLAG_AUTOHIDE_SUSPEND_EDU_OPEN,
            true
        )

        tooltip.onCloseCallback = {
            this.tooltip = null
            controllers.taskbarAutohideSuspendController.updateFlag(
@@ -161,11 +165,47 @@ class TaskbarEduTooltipController(val activityContext: TaskbarActivityContext) :
            )
            controllers.taskbarStashController.updateAndAnimateTransientTaskbar(true)
        }
        tooltip.accessibilityDelegate = createAccessibilityDelegate()

        overlayContext.layoutInflater.inflate(contentResId, tooltip.content, true)
        this.tooltip = tooltip
    }

    private fun createAccessibilityDelegate() =
        object : View.AccessibilityDelegate() {
            override fun performAccessibilityAction(
                host: View?,
                action: Int,
                args: Bundle?
            ): Boolean {
                if (action == R.id.close) {
                    hide()
                    return true
                }
                return super.performAccessibilityAction(host, action, args)
            }

            override fun onPopulateAccessibilityEvent(host: View?, event: AccessibilityEvent?) {
                super.onPopulateAccessibilityEvent(host, event)
                if (event?.eventType == AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED) {
                    event.text?.add(host?.context?.getText(R.string.taskbar_edu_a11y_title))
                }
            }

            override fun onInitializeAccessibilityNodeInfo(
                host: View?,
                info: AccessibilityNodeInfo?
            ) {
                super.onInitializeAccessibilityNodeInfo(host, info)
                info?.addAction(
                    AccessibilityNodeInfo.AccessibilityAction(
                        R.id.close,
                        host?.context?.getText(R.string.taskbar_edu_close)
                    )
                )
            }
        }

    override fun dumpLogs(prefix: String?, pw: PrintWriter?) {
        pw?.println(prefix + "TaskbarEduTooltipController:")
        pw?.println("$prefix\tisTooltipEnabled=$isTooltipEnabled")
+2 −0
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@
    <item type="id" name="home" />
    <item type="id" name="recent_apps" />
    <item type="id" name="back" />
    <item type="id" name="close"/>
    <item type="id" name="ime_switcher" />
    <item type="id" name="accessibility_button" />
    <item type="id" name="rotate_suggestion" />
@@ -41,4 +42,5 @@

    <item type="id" name="saved_floating_widget_foreground" />
    <item type="id" name="saved_floating_widget_background" />

</resources>