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

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

Merge "Pass in window name along with focus request"

parents 2369e9ff 9ad01462
Loading
Loading
Loading
Loading
+0 −11
Original line number Diff line number Diff line
@@ -1417,17 +1417,6 @@ SurfaceComposerClient::Transaction& SurfaceComposerClient::Transaction::setInput
    return *this;
}

SurfaceComposerClient::Transaction& SurfaceComposerClient::Transaction::setFocusedWindow(
        const sp<IBinder>& token, const sp<IBinder>& focusedToken, nsecs_t timestampNanos,
        int32_t displayId) {
    FocusRequest request;
    request.token = token;
    request.focusedToken = focusedToken;
    request.timestamp = timestampNanos;
    request.displayId = displayId;
    return setFocusedWindow(request);
}

SurfaceComposerClient::Transaction& SurfaceComposerClient::Transaction::setFocusedWindow(
        const FocusRequest& request) {
    mInputWindowCommands.focusRequests.push_back(request);
+0 −2
Original line number Diff line number Diff line
@@ -522,8 +522,6 @@ public:

#ifndef NO_INPUT
        Transaction& setInputWindowInfo(const sp<SurfaceControl>& sc, const InputWindowInfo& info);
        Transaction& setFocusedWindow(const sp<IBinder>& token, const sp<IBinder>& focusedToken,
                                      nsecs_t timestampNanos, int32_t displayId);
        Transaction& setFocusedWindow(const FocusRequest& request);
        Transaction& syncInputWindows();
#endif
+8 −2
Original line number Diff line number Diff line
@@ -202,8 +202,14 @@ public:

    void requestFocus() {
        SurfaceComposerClient::Transaction t;
        t.setFocusedWindow(mInputInfo.token, nullptr, systemTime(SYSTEM_TIME_MONOTONIC),
                           0 /* displayId */);
        FocusRequest request;
        request.token = mInputInfo.token;
        request.windowName = mInputInfo.name;
        request.focusedToken = nullptr;
        request.focusedWindowName = "";
        request.timestamp = systemTime(SYSTEM_TIME_MONOTONIC);
        request.displayId = 0;
        t.setFocusedWindow(request);
        t.apply(true);
    }

+2 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ parcelable FocusRequest {
     * Input channel token used to identify the window that should gain focus.
     */
    IBinder token;
    @utf8InCpp String windowName;
    /**
     * The token that the caller expects currently to be focused. If the
     * specified token does not match the currently focused window, this request will be dropped.
@@ -30,6 +31,7 @@ parcelable FocusRequest {
     * is.
     */
    @nullable IBinder focusedToken;
    @utf8InCpp String focusedWindowName;
    /**
     * SYSTEM_TIME_MONOTONIC timestamp in nanos set by the client (wm) when requesting the focus
     * change. This determines which request gets precedence if there is a focus change request