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

Commit 837443e7 authored by Grace Cheng's avatar Grace Cheng Committed by Android (Google) Code Review
Browse files

Merge "Resolving duplicate “Fingerprint Sensor” talkback in Side-FPS SUW" into tm-dev

parents b83faa12 1a313bf7
Loading
Loading
Loading
Loading
+19 −0
Original line number Original line Diff line number Diff line
@@ -33,6 +33,8 @@ import android.hardware.fingerprint.FingerprintSensorPropertiesInternal
import android.hardware.fingerprint.ISidefpsController
import android.hardware.fingerprint.ISidefpsController
import android.os.Handler
import android.os.Handler
import android.util.Log
import android.util.Log
import android.view.View.AccessibilityDelegate
import android.view.accessibility.AccessibilityEvent
import android.view.Display
import android.view.Display
import android.view.Gravity
import android.view.Gravity
import android.view.LayoutInflater
import android.view.LayoutInflater
@@ -181,6 +183,23 @@ class SidefpsController @Inject constructor(
        }
        }
        lottie.addOverlayDynamicColor(context)
        lottie.addOverlayDynamicColor(context)


        /**
         * Intercepts TYPE_WINDOW_STATE_CHANGED accessibility event, preventing Talkback from
         * speaking @string/accessibility_fingerprint_label twice when sensor location indicator
         * is in focus
         */
        view.setAccessibilityDelegate(object : AccessibilityDelegate() {
            override fun dispatchPopulateAccessibilityEvent(
                host: View,
                event: AccessibilityEvent
            ): Boolean {
                return if (event.getEventType() === AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED) {
                    true
                } else {
                    super.dispatchPopulateAccessibilityEvent(host, event)
                }
            }
        })
        return view
        return view
    }
    }