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

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

Merge "Querying capability of haptic playback."

parents cf80f34c 6012f913
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -1315,6 +1315,13 @@ status_t AudioSystem::setA11yServicesUids(const std::vector<uid_t>& uids)
    return aps->setA11yServicesUids(uids);
}

bool AudioSystem::isHapticPlaybackSupported()
{
    const sp<IAudioPolicyService>& aps = AudioSystem::get_audio_policy_service();
    if (aps == 0) return false;
    return aps->isHapticPlaybackSupported();
}


// ---------------------------------------------------------------------------

+19 −0
Original line number Diff line number Diff line
@@ -89,6 +89,7 @@ enum {
    REMOVE_SOURCE_DEFAULT_EFFECT,
    SET_ASSISTANT_UID,
    SET_A11Y_SERVICES_UIDS,
    IS_HAPTIC_PLAYBACK_SUPPORTED,
};

#define MAX_ITEMS_PER_LIST 1024
@@ -978,6 +979,17 @@ public:
        return static_cast <status_t> (reply.readInt32());
    }

    virtual bool isHapticPlaybackSupported()
    {
        Parcel data, reply;
        data.writeInterfaceToken(IAudioPolicyService::getInterfaceDescriptor());
        status_t status = remote()->transact(IS_HAPTIC_PLAYBACK_SUPPORTED, data, &reply);
        if (status != NO_ERROR) {
            return false;
        }
        return reply.readBool();
    }

};

IMPLEMENT_META_INTERFACE(AudioPolicyService, "android.media.IAudioPolicyService");
@@ -1795,6 +1807,13 @@ status_t BnAudioPolicyService::onTransact(
            return NO_ERROR;
        }

        case IS_HAPTIC_PLAYBACK_SUPPORTED: {
            CHECK_INTERFACE(IAudioPolicyService, data, reply);
            bool isSupported = isHapticPlaybackSupported();
            reply->writeBool(isSupported);
            return NO_ERROR;
        }

        default:
            return BBinder::onTransact(code, data, reply, flags);
    }
+2 −0
Original line number Diff line number Diff line
@@ -345,6 +345,8 @@ public:
    static status_t setAssistantUid(uid_t uid);
    static status_t setA11yServicesUids(const std::vector<uid_t>& uids);

    static bool     isHapticPlaybackSupported();

    // ----------------------------------------------------------------------------

    class AudioPortCallback : public RefBase
+2 −0
Original line number Diff line number Diff line
@@ -185,6 +185,8 @@ public:

    virtual status_t setAssistantUid(uid_t uid) = 0;
    virtual status_t setA11yServicesUids(const std::vector<uid_t>& uids) = 0;

    virtual bool     isHapticPlaybackSupported() = 0;
};


+2 −0
Original line number Diff line number Diff line
@@ -228,6 +228,8 @@ public:
                                        bool reported) = 0;
    virtual status_t setSurroundFormatEnabled(audio_format_t audioFormat, bool enabled) = 0;

    virtual bool     isHapticPlaybackSupported() = 0;

    virtual void     setAppState(uid_t uid, app_state_t state);
};

Loading