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

Commit 660fb6cd authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 11938003 from 4e082b0c to 24Q3-release

Change-Id: I7772fdcbe1e9bb3749aa81daf81e5b4f903687d2
parents 46062ae6 4e082b0c
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -307,6 +307,11 @@ java_aconfig_library {
    defaults: ["framework-minus-apex-aconfig-java-defaults"],
}

cc_aconfig_library {
    name: "android_security_flags_aconfig_c_lib",
    aconfig_declarations: "android.security.flags-aconfig",
}

// UsageStats
aconfig_declarations {
    name: "android.app.usage.flags-aconfig",

DREAM_MANAGER_OWNERS

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
brycelee@google.com
+0 −1
Original line number Diff line number Diff line
@@ -8,4 +8,3 @@ philipcuadra@google.com
shayba@google.com
shombert@google.com
timmurray@google.com
wessam@google.com
+1 −1
Original line number Diff line number Diff line
@@ -21,7 +21,7 @@ Adapted to use CrystalBall from art/test/2239-varhandle-perf/util-src/generate_j
To run use: python generate_java.py <destination_directory>

And then to correct lint errors (from frameworks/base):
../../tools/repohooks/tools/google-java-format.py --fix --sort-imports  --google-java-format-diff ../../external/google-java-format/scripts/google-java-format-diff.py
../../tools/repohooks/tools/google-java-format.py --fix --google-java-format-diff ../../external/google-java-format/scripts/google-java-format-diff.py
"""


+2 −97
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package android.accessibilityservice;

import static android.accessibilityservice.AccessibilityServiceInfo.CAPABILITY_CAN_CONTROL_MAGNIFICATION;
import static android.accessibilityservice.MagnificationConfig.MAGNIFICATION_MODE_FULLSCREEN;
import static android.view.WindowManager.LayoutParams.TYPE_ACCESSIBILITY_OVERLAY;

@@ -70,8 +69,6 @@ import android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction;
import android.view.accessibility.AccessibilityWindowInfo;
import android.view.inputmethod.EditorInfo;

import androidx.annotation.GuardedBy;

import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.inputmethod.CancellationGroup;
import com.android.internal.inputmethod.IAccessibilityInputMethodSession;
@@ -643,8 +640,6 @@ public abstract class AccessibilityService extends Service {
        /** The detected gesture information for different displays */
        boolean onGesture(AccessibilityGestureEvent gestureInfo);
        boolean onKeyEvent(KeyEvent event);
        /** Magnification SystemUI connection changed callbacks */
        void onMagnificationSystemUIConnectionChanged(boolean connected);
        /** Magnification changed callbacks for different displays */
        void onMagnificationChanged(int displayId, @NonNull Region region,
                MagnificationConfig config);
@@ -795,6 +790,7 @@ public abstract class AccessibilityService extends Service {
    public static final String KEY_ACCESSIBILITY_SCREENSHOT_TIMESTAMP =
            "screenshot_timestamp";


    /**
     * Annotations for result codes of attaching accessibility overlays.
     *
@@ -841,13 +837,6 @@ public abstract class AccessibilityService extends Service {

    private WindowManager mWindowManager;

    @GuardedBy("mLock")
    private boolean mServiceConnected;
    @GuardedBy("mLock")
    private boolean mMagnificationSystemUIConnected;
    @GuardedBy("mLock")
    private boolean mServiceConnectedNotified;

    /** List of magnification controllers, mapping from displayId -> MagnificationController. */
    private final SparseArray<MagnificationController> mMagnificationControllers =
            new SparseArray<>(0);
@@ -897,14 +886,11 @@ public abstract class AccessibilityService extends Service {
            for (int i = 0; i < mMagnificationControllers.size(); i++) {
                mMagnificationControllers.valueAt(i).onServiceConnectedLocked();
            }
            checkIsMagnificationSystemUIConnectedAlready();
            final AccessibilityServiceInfo info = getServiceInfo();
            if (info != null) {
                updateInputMethod(info);
                mMotionEventSources = info.getMotionEventSources();
            }
            mServiceConnected = true;
            mServiceConnectedNotified = false;
        }
        if (mSoftKeyboardController != null) {
            mSoftKeyboardController.onServiceConnected();
@@ -912,58 +898,8 @@ public abstract class AccessibilityService extends Service {

        // The client gets to handle service connection last, after we've set
        // up any state upon which their code may rely.
        if (android.view.accessibility.Flags
                .waitMagnificationSystemUiConnectionToNotifyServiceConnected()) {
            notifyOnServiceConnectedIfReady();
        } else {
        onServiceConnected();
    }
    }

    private void notifyOnServiceConnectedIfReady() {
        synchronized (mLock) {
            if (mServiceConnectedNotified) {
                return;
            }
            boolean canControlMagnification;
            final AccessibilityServiceInfo info = getServiceInfo();
            if (info != null) {
                int flagMask = CAPABILITY_CAN_CONTROL_MAGNIFICATION;
                canControlMagnification = (info.getCapabilities() & flagMask) == flagMask;
            } else {
                canControlMagnification = false;
            }
            boolean ready = canControlMagnification
                    ? (mServiceConnected && mMagnificationSystemUIConnected)
                    : mServiceConnected;
            if (ready) {
                getMainExecutor().execute(() -> onServiceConnected());
                mServiceConnectedNotified = true;
            }
        }
    }

    @GuardedBy("mLock")
    private void checkIsMagnificationSystemUIConnectedAlready() {
        if (!android.view.accessibility.Flags
                .waitMagnificationSystemUiConnectionToNotifyServiceConnected()) {
            return;
        }
        if (mMagnificationSystemUIConnected) {
            return;
        }
        final IAccessibilityServiceConnection connection =
                AccessibilityInteractionClient.getInstance(this).getConnection(mConnectionId);
        if (connection != null) {
            try {
                boolean connected = connection.isMagnificationSystemUIConnected();
                mMagnificationSystemUIConnected = connected;
            } catch (RemoteException re) {
                Log.w(LOG_TAG, "Failed to check magnification system ui connection", re);
                re.rethrowFromSystemServer();
            }
        }
    }

    private void updateInputMethod(AccessibilityServiceInfo info) {
        if (info != null) {
@@ -1424,22 +1360,6 @@ public abstract class AccessibilityService extends Service {
        }
    }

    private void onMagnificationSystemUIConnectionChanged(boolean connected) {
        if (!android.view.accessibility.Flags
                .waitMagnificationSystemUiConnectionToNotifyServiceConnected()) {
            return;
        }

        synchronized (mLock) {
            boolean changed = (mMagnificationSystemUIConnected != connected);
            mMagnificationSystemUIConnected = connected;

            if (changed) {
                notifyOnServiceConnectedIfReady();
            }
        }
    }

    private void onMagnificationChanged(int displayId, @NonNull Region region,
            MagnificationConfig config) {
        MagnificationController controller;
@@ -2902,11 +2822,6 @@ public abstract class AccessibilityService extends Service {
                return AccessibilityService.this.onKeyEvent(event);
            }

            @Override
            public void onMagnificationSystemUIConnectionChanged(boolean connected) {
                AccessibilityService.this.onMagnificationSystemUIConnectionChanged(connected);
            }

            @Override
            public void onMagnificationChanged(int displayId, @NonNull Region region,
                    MagnificationConfig config) {
@@ -3117,16 +3032,6 @@ public abstract class AccessibilityService extends Service {
            });
        }

        @Override
        public void onMagnificationSystemUIConnectionChanged(boolean connected) {
            mExecutor.execute(() -> {
                if (mConnectionId != AccessibilityInteractionClient.NO_ID) {
                    mCallback.onMagnificationSystemUIConnectionChanged(connected);
                }
                return;
            });
        }

        /** Magnification changed callbacks for different displays */
        public void onMagnificationChanged(int displayId, @NonNull Region region,
                MagnificationConfig config) {
Loading