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

Commit 6cd452a2 authored by android-build-team Robot's avatar android-build-team Robot
Browse files

Snap for 6469672 from 2f116e22 to rvc-release

Change-Id: Ieb7c14edc36f3c66279400bd687f1377f3b09074
parents fc2b37d4 2f116e22
Loading
Loading
Loading
Loading
+0 −9
Original line number Diff line number Diff line
@@ -98,15 +98,6 @@ int32_t ActivityManager::getUidProcessState(const uid_t uid, const String16& cal
    return PROCESS_STATE_UNKNOWN;
}

bool ActivityManager::isUidActiveOrForeground(const uid_t uid, const String16& callingPackage)
{
    sp<IActivityManager> service = getService();
    if (service != nullptr) {
        return service->isUidActiveOrForeground(uid, callingPackage);
    }
    return false;
}

status_t ActivityManager::linkToDeath(const sp<IBinder::DeathRecipient>& recipient) {
    sp<IActivityManager> service = getService();
    if (service != nullptr) {
+0 −12
Original line number Diff line number Diff line
@@ -104,18 +104,6 @@ public:
        }
        return reply.readInt32();
    }

    virtual bool isUidActiveOrForeground(const uid_t uid, const String16& callingPackage)
    {
         Parcel data, reply;
         data.writeInterfaceToken(IActivityManager::getInterfaceDescriptor());
         data.writeInt32(uid);
         data.writeString16(callingPackage);
         remote()->transact(IS_UID_ACTIVE_OR_FOREGROUND_TRANSACTION, data, &reply);
         // fail on exception
         if (reply.readExceptionCode() != 0) return false;
         return reply.readInt32() == 1;
    }
};

// ------------------------------------------------------------------------------------
+19 −19
Original line number Diff line number Diff line
@@ -46,24 +46,25 @@ public:
        PROCESS_STATE_PERSISTENT = 0,
        PROCESS_STATE_PERSISTENT_UI = 1,
        PROCESS_STATE_TOP = 2,
        PROCESS_STATE_BOUND_TOP = 3,
        PROCESS_STATE_FOREGROUND_SERVICE = 4,
        PROCESS_STATE_BOUND_FOREGROUND_SERVICE = 5,
        PROCESS_STATE_IMPORTANT_FOREGROUND = 6,
        PROCESS_STATE_IMPORTANT_BACKGROUND = 7,
        PROCESS_STATE_TRANSIENT_BACKGROUND = 8,
        PROCESS_STATE_BACKUP = 9,
        PROCESS_STATE_SERVICE = 10,
        PROCESS_STATE_RECEIVER = 11,
        PROCESS_STATE_TOP_SLEEPING = 12,
        PROCESS_STATE_HEAVY_WEIGHT = 13,
        PROCESS_STATE_HOME = 14,
        PROCESS_STATE_LAST_ACTIVITY = 15,
        PROCESS_STATE_CACHED_ACTIVITY = 16,
        PROCESS_STATE_CACHED_ACTIVITY_CLIENT = 17,
        PROCESS_STATE_CACHED_RECENT = 18,
        PROCESS_STATE_CACHED_EMPTY = 19,
        PROCESS_STATE_NONEXISTENT = 20,
        PROCESS_STATE_FOREGROUND_SERVICE_LOCATION = 3,
        PROCESS_STATE_BOUND_TOP = 4,
        PROCESS_STATE_FOREGROUND_SERVICE = 5,
        PROCESS_STATE_BOUND_FOREGROUND_SERVICE = 6,
        PROCESS_STATE_IMPORTANT_FOREGROUND = 7,
        PROCESS_STATE_IMPORTANT_BACKGROUND = 8,
        PROCESS_STATE_TRANSIENT_BACKGROUND = 9,
        PROCESS_STATE_BACKUP = 10,
        PROCESS_STATE_SERVICE = 11,
        PROCESS_STATE_RECEIVER = 12,
        PROCESS_STATE_TOP_SLEEPING = 13,
        PROCESS_STATE_HEAVY_WEIGHT = 14,
        PROCESS_STATE_HOME = 15,
        PROCESS_STATE_LAST_ACTIVITY = 16,
        PROCESS_STATE_CACHED_ACTIVITY = 17,
        PROCESS_STATE_CACHED_ACTIVITY_CLIENT = 18,
        PROCESS_STATE_CACHED_RECENT = 19,
        PROCESS_STATE_CACHED_EMPTY = 20,
        PROCESS_STATE_NONEXISTENT = 21,
    };

    ActivityManager();
@@ -76,7 +77,6 @@ public:
    void unregisterUidObserver(const sp<IUidObserver>& observer);
    bool isUidActive(const uid_t uid, const String16& callingPackage);
    int getUidProcessState(const uid_t uid, const String16& callingPackage);
    bool isUidActiveOrForeground(const uid_t uid, const String16& callingPackage);


  status_t linkToDeath(const sp<IBinder::DeathRecipient>& recipient);
+1 −3
Original line number Diff line number Diff line
@@ -39,15 +39,13 @@ public:
    virtual void unregisterUidObserver(const sp<IUidObserver>& observer) = 0;
    virtual bool isUidActive(const uid_t uid, const String16& callingPackage) = 0;
    virtual int32_t getUidProcessState(const uid_t uid, const String16& callingPackage) = 0;
    virtual bool isUidActiveOrForeground(const uid_t uid, const String16& callingPackage) = 0;

    enum {
        OPEN_CONTENT_URI_TRANSACTION = IBinder::FIRST_CALL_TRANSACTION,
        REGISTER_UID_OBSERVER_TRANSACTION,
        UNREGISTER_UID_OBSERVER_TRANSACTION,
        IS_UID_ACTIVE_TRANSACTION,
        GET_UID_PROCESS_STATE_TRANSACTION,
        IS_UID_ACTIVE_OR_FOREGROUND_TRANSACTION,
        GET_UID_PROCESS_STATE_TRANSACTION
    };
};

+4 −5
Original line number Diff line number Diff line
@@ -634,7 +634,7 @@ public:
        mInfo.applicationInfo = *inputApplicationHandle->getInfo();

        mInfo.token = token;
        mInfo.id = 0;
        mInfo.id = sId++;
        mInfo.name = name;
        mInfo.layoutParamsFlags = 0;
        mInfo.layoutParamsType = InputWindowInfo::TYPE_APPLICATION;
@@ -672,8 +672,6 @@ public:

    void setLayoutParamFlags(int32_t flags) { mInfo.layoutParamsFlags = flags; }

    void setId(int32_t id) { mInfo.id = id; }

    void setWindowScale(float xScale, float yScale) {
        mInfo.windowXScale = xScale;
        mInfo.windowYScale = yScale;
@@ -755,8 +753,11 @@ public:
private:
    const std::string mName;
    std::unique_ptr<FakeInputReceiver> mInputReceiver;
    static std::atomic<int32_t> sId; // each window gets a unique id, like in surfaceflinger
};

std::atomic<int32_t> FakeWindowHandle::sId{1};

static int32_t injectKeyDown(const sp<InputDispatcher>& dispatcher,
        int32_t displayId = ADISPLAY_ID_NONE) {
    KeyEvent event;
@@ -1910,14 +1911,12 @@ class InputDispatcherMultiWindowSameTokenTests : public InputDispatcherTest {
        // We also need FLAG_SPLIT_TOUCH or we won't be able to get touches for both windows.
        mWindow1->setLayoutParamFlags(InputWindowInfo::FLAG_NOT_TOUCH_MODAL |
                                      InputWindowInfo::FLAG_SPLIT_TOUCH);
        mWindow1->setId(0);
        mWindow1->setFrame(Rect(0, 0, 100, 100));

        mWindow2 = new FakeWindowHandle(application, mDispatcher, "Fake Window 2",
                                        ADISPLAY_ID_DEFAULT, mWindow1->getToken());
        mWindow2->setLayoutParamFlags(InputWindowInfo::FLAG_NOT_TOUCH_MODAL |
                                      InputWindowInfo::FLAG_SPLIT_TOUCH);
        mWindow2->setId(1);
        mWindow2->setFrame(Rect(100, 100, 200, 200));

        mDispatcher->setInputWindows({{ADISPLAY_ID_DEFAULT, {mWindow1, mWindow2}}});
Loading