| Index: content/public/test/android/javatests/src/org/chromium/content/browser/test/util/TestCallbackHelperContainer.java
|
| diff --git a/content/public/test/android/javatests/src/org/chromium/content/browser/test/util/TestCallbackHelperContainer.java b/content/public/test/android/javatests/src/org/chromium/content/browser/test/util/TestCallbackHelperContainer.java
|
| index c7079ed0fe7470742d4d5504efdd74217cac7dce..fedc4a5bab71c23ef3314be3f3a57f877e9a36bd 100644
|
| --- a/content/public/test/android/javatests/src/org/chromium/content/browser/test/util/TestCallbackHelperContainer.java
|
| +++ b/content/public/test/android/javatests/src/org/chromium/content/browser/test/util/TestCallbackHelperContainer.java
|
| @@ -81,8 +81,6 @@ public class TestCallbackHelperContainer {
|
| }
|
|
|
| public static class OnEvaluateJavaScriptResultHelper extends CallbackHelper {
|
| - private volatile Integer mRequestId;
|
| - private volatile Integer mId;
|
| private String mJsonResult;
|
|
|
| /**
|
| @@ -91,14 +89,22 @@ public class TestCallbackHelperContainer {
|
| * @param code A JavaScript code to be evaluated.
|
| */
|
| public void evaluateJavaScript(ContentViewCore contentViewCore, String code) {
|
| - setRequestId(contentViewCore.evaluateJavaScript(code));
|
| + ContentViewCore.JavaScriptCallback callback =
|
| + new ContentViewCore.JavaScriptCallback() {
|
| + @Override
|
| + public void handleJavaScriptResult(String jsonResult) {
|
| + notifyCalled(jsonResult);
|
| + }
|
| + };
|
| + contentViewCore.evaluateJavaScript(code, callback);
|
| + mJsonResult = null;
|
| }
|
|
|
| /**
|
| * Returns true if the evaluation started by evaluateJavaScript() has completed.
|
| */
|
| public boolean hasValue() {
|
| - return mId != null;
|
| + return mJsonResult != null;
|
| }
|
|
|
| /**
|
| @@ -109,7 +115,7 @@ public class TestCallbackHelperContainer {
|
| public String getJsonResultAndClear() {
|
| assert hasValue();
|
| String result = mJsonResult;
|
| - setRequestId(null);
|
| + mJsonResult = null;
|
| return result;
|
| }
|
|
|
| @@ -141,21 +147,8 @@ public class TestCallbackHelperContainer {
|
| return hasValue();
|
| }
|
|
|
| - private void setRequestId(Integer requestId) {
|
| - mRequestId = requestId;
|
| - mId = null;
|
| - mJsonResult = null;
|
| - }
|
| -
|
| - public void notifyCalled(int id, String jsonResult) {
|
| - if (mRequestId == null) {
|
| - Log.w("TestCallbackHelperContainer",
|
| - "Received JavaScript eval result when request id was not set");
|
| - return;
|
| - }
|
| - if (id != mRequestId.intValue()) return;
|
| - assert mId == null;
|
| - mId = Integer.valueOf(id);
|
| + public void notifyCalled(String jsonResult) {
|
| + assert !hasValue();
|
| mJsonResult = jsonResult;
|
| notifyCalled();
|
| }
|
|
|