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

Commit 41413d8e authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "nfc(api): Dont invoke enableReaderMode from setDiscoveryTech" into main

parents c909a3e2 280c087c
Loading
Loading
Loading
Loading
+11 −5
Original line number Diff line number Diff line
@@ -195,18 +195,27 @@ public final class NfcActivityManager extends IAppCallback.Stub
            Bundle extras) {
        boolean isResumed;
        Binder token;
        int pollTech, listenTech;
        synchronized (NfcActivityManager.this) {
            NfcActivityState state = getActivityState(activity);
            state.readerCallback = callback;
            state.readerModeFlags = flags;
            state.readerModeExtras = extras;
            pollTech = state.mPollTech;
            listenTech = state.mListenTech;
            token = state.token;
            isResumed = state.resumed;
        }
        if (isResumed) {
            if (listenTech != NfcAdapter.FLAG_USE_ALL_TECH
                    || pollTech != NfcAdapter.FLAG_USE_ALL_TECH) {
                throw new IllegalStateException(
                    "Cannot be used when alternative DiscoveryTechnology is set");
            } else {
                setReaderMode(token, flags, extras);
            }
        }
    }

    public void disableReaderMode(Activity activity) {
        boolean isResumed;
@@ -385,15 +394,12 @@ public final class NfcActivityManager extends IAppCallback.Stub
        boolean readerModeFlagsSet;
        synchronized (NfcActivityManager.this) {
            NfcActivityState state = getActivityState(activity);
            readerModeFlagsSet = state.readerModeFlags != 0;
            state.mListenTech = NfcAdapter.FLAG_USE_ALL_TECH;
            state.mPollTech = NfcAdapter.FLAG_USE_ALL_TECH;
            token = state.token;
            isResumed = state.resumed;
        }
        if (readerModeFlagsSet) {
            disableReaderMode(activity);
        } else if (isResumed) {
        if (isResumed) {
            changeDiscoveryTech(token, NfcAdapter.FLAG_USE_ALL_TECH, NfcAdapter.FLAG_USE_ALL_TECH);
        }

+1 −4
Original line number Diff line number Diff line
@@ -1846,10 +1846,7 @@ public final class NfcAdapter {
                    throw new UnsupportedOperationException();
                }
            }
            mNfcActivityManager.enableReaderMode(activity, null, pollTechnology, null);
            return;
        }
        if (pollTechnology == FLAG_READER_DISABLE) {
        } else if (pollTechnology == FLAG_READER_DISABLE) {
            synchronized (sLock) {
                if (!sHasCeFeature) {
                    throw new UnsupportedOperationException();