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

Commit 6e82910a authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Give current TaskView accessibility focus" into ub-launcher3-master

parents 9fb7d28b 619daaf8
Loading
Loading
Loading
Loading
+6 −0
Original line number Original line Diff line number Diff line
@@ -37,6 +37,7 @@ import static com.android.quickstep.SysUINavigationMode.removeShelfFromOverview;


import android.graphics.Rect;
import android.graphics.Rect;
import android.view.View;
import android.view.View;
import android.view.accessibility.AccessibilityEvent;
import android.view.animation.Interpolator;
import android.view.animation.Interpolator;


import com.android.launcher3.AbstractFloatingView;
import com.android.launcher3.AbstractFloatingView;
@@ -47,6 +48,7 @@ import com.android.launcher3.R;
import com.android.launcher3.Workspace;
import com.android.launcher3.Workspace;
import com.android.launcher3.allapps.DiscoveryBounce;
import com.android.launcher3.allapps.DiscoveryBounce;
import com.android.launcher3.anim.AnimatorSetBuilder;
import com.android.launcher3.anim.AnimatorSetBuilder;
import com.android.launcher3.compat.AccessibilityManagerCompat;
import com.android.launcher3.userevent.nano.LauncherLogProto.Action;
import com.android.launcher3.userevent.nano.LauncherLogProto.Action;
import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType;
import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType;
import com.android.quickstep.SysUINavigationMode;
import com.android.quickstep.SysUINavigationMode;
@@ -143,6 +145,10 @@ public class OverviewState extends LauncherState {
    public void onStateTransitionEnd(Launcher launcher) {
    public void onStateTransitionEnd(Launcher launcher) {
        launcher.getRotationHelper().setCurrentStateRequest(REQUEST_ROTATE);
        launcher.getRotationHelper().setCurrentStateRequest(REQUEST_ROTATE);
        DiscoveryBounce.showForOverviewIfNeeded(launcher);
        DiscoveryBounce.showForOverviewIfNeeded(launcher);
        RecentsView recentsView = launcher.getOverviewPanel();
        AccessibilityManagerCompat.sendCustomAccessibilityEvent(
                recentsView.getPageAt(recentsView.getCurrentPage()),
                AccessibilityEvent.TYPE_VIEW_FOCUSED, null);
    }
    }


    @Override
    @Override
+5 −0
Original line number Original line Diff line number Diff line
@@ -92,6 +92,7 @@ import com.android.launcher3.Utilities;
import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.anim.PropertyListBuilder;
import com.android.launcher3.anim.PropertyListBuilder;
import com.android.launcher3.anim.SpringObjectAnimator;
import com.android.launcher3.anim.SpringObjectAnimator;
import com.android.launcher3.compat.AccessibilityManagerCompat;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.graphics.RotationMode;
import com.android.launcher3.graphics.RotationMode;
import com.android.launcher3.userevent.nano.LauncherLogProto;
import com.android.launcher3.userevent.nano.LauncherLogProto;
@@ -972,6 +973,10 @@ public abstract class RecentsView<T extends BaseActivity> extends PagedView impl
        TaskView runningTask = getRunningTaskView();
        TaskView runningTask = getRunningTaskView();
        if (runningTask != null) {
        if (runningTask != null) {
            runningTask.setStableAlpha(isHidden ? 0 : mContentAlpha);
            runningTask.setStableAlpha(isHidden ? 0 : mContentAlpha);
            if (!isHidden) {
                AccessibilityManagerCompat.sendCustomAccessibilityEvent(runningTask,
                        AccessibilityEvent.TYPE_VIEW_FOCUSED, null);
            }
        }
        }
    }
    }


+2 −0
Original line number Original line Diff line number Diff line
@@ -374,6 +374,8 @@ public abstract class PagedView<T extends View & PageIndicator> extends ViewGrou
    protected void onPageEndTransition() {
    protected void onPageEndTransition() {
        mWasInOverscroll = false;
        mWasInOverscroll = false;
        AccessibilityManagerCompat.sendScrollFinishedEventToTest(getContext());
        AccessibilityManagerCompat.sendScrollFinishedEventToTest(getContext());
        AccessibilityManagerCompat.sendCustomAccessibilityEvent(getPageAt(mCurrentPage),
                AccessibilityEvent.TYPE_VIEW_FOCUSED, null);
    }
    }


    protected int getUnboundedScrollX() {
    protected int getUnboundedScrollX() {
+7 −2
Original line number Original line Diff line number Diff line
@@ -18,11 +18,14 @@ package com.android.launcher3.compat;


import android.content.Context;
import android.content.Context;
import android.os.Bundle;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import android.util.Log;
import android.view.View;
import android.view.View;
import android.view.accessibility.AccessibilityEvent;
import android.view.accessibility.AccessibilityEvent;
import android.view.accessibility.AccessibilityManager;
import android.view.accessibility.AccessibilityManager;


import androidx.annotation.Nullable;

import com.android.launcher3.Utilities;
import com.android.launcher3.Utilities;
import com.android.launcher3.testing.TestProtocol;
import com.android.launcher3.testing.TestProtocol;


@@ -37,11 +40,13 @@ public class AccessibilityManagerCompat {
        return isAccessibilityEnabled(context);
        return isAccessibilityEnabled(context);
    }
    }


    public static void sendCustomAccessibilityEvent(View target, int type, String text) {
    public static void sendCustomAccessibilityEvent(View target, int type, @Nullable String text) {
        if (isObservedEventType(target.getContext(), type)) {
        if (isObservedEventType(target.getContext(), type)) {
            AccessibilityEvent event = AccessibilityEvent.obtain(type);
            AccessibilityEvent event = AccessibilityEvent.obtain(type);
            target.onInitializeAccessibilityEvent(event);
            target.onInitializeAccessibilityEvent(event);
            if (!TextUtils.isEmpty(text)) {
                event.getText().add(text);
                event.getText().add(text);
            }
            getManager(target.getContext()).sendAccessibilityEvent(event);
            getManager(target.getContext()).sendAccessibilityEvent(event);
        }
        }
    }
    }