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

Commit 8923735f authored by Jae Seo's avatar Jae Seo Committed by Android Git Automerger
Browse files

am e0177a28: am 59f79d9b: am 3a9a53cb: Merge "TIF: make the tune request...

am e0177a28: am 59f79d9b: am 3a9a53cb: Merge "TIF: make the tune request handling more efficient" into lmp-mr1-dev

* commit 'e0177a28':
  TIF: make the tune request handling more efficient
parents dbdcfae7 e0177a28
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@ public class ITvInputSessionWrapper extends ITvInputSession.Stub implements Hand
    private static final String TAG = "TvInputSessionWrapper";

    private static final int MESSAGE_HANDLING_DURATION_THRESHOLD_MILLIS = 50;
    private static final int MESSAGE_TUNE_DURATION_THRESHOLD_MILLIS = 1000;

    private static final int DO_RELEASE = 1;
    private static final int DO_SET_MAIN = 2;
@@ -161,6 +162,11 @@ public class ITvInputSessionWrapper extends ITvInputSession.Stub implements Hand
        if (duration > MESSAGE_HANDLING_DURATION_THRESHOLD_MILLIS) {
            Log.w(TAG, "Handling message (" + msg.what + ") took too long time (duration="
                    + duration + "ms)");
            if (msg.what == DO_TUNE && duration > MESSAGE_TUNE_DURATION_THRESHOLD_MILLIS) {
                throw new RuntimeException("Too much time to handle tune request. (" + duration
                        + "ms > " + MESSAGE_TUNE_DURATION_THRESHOLD_MILLIS + "ms) "
                        + "Consider handling the tune request in a separate thread.");
            }
        }
    }

@@ -193,6 +199,8 @@ public class ITvInputSessionWrapper extends ITvInputSession.Stub implements Hand

    @Override
    public void tune(Uri channelUri, Bundle params) {
        // Clear the pending tune requests.
        mCaller.removeMessages(DO_TUNE);
        mCaller.executeOrSendMessage(mCaller.obtainMessageOO(DO_TUNE, channelUri, params));
    }