Merge "Making UI a bit more responsive."

This commit is contained in:
Alex Sakhartchouk
2011-12-09 10:04:27 -08:00
committed by Android (Google) Code Review
4 changed files with 18 additions and 0 deletions

View File

@@ -95,8 +95,10 @@ public class RsBench extends Activity {
switch (item.getItemId()) {
case R.id.benchmark_all:
mView.setBenchmarkMode(-1);
mView.suspendRendering(false);
return true;
case R.id.benchmark_one:
mView.suspendRendering(true);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Pick a Test");
builder.setItems(mView.getTestNames(),
@@ -106,11 +108,13 @@ public class RsBench extends Activity {
"Starting to benchmark: " + mView.getTestNames()[item],
Toast.LENGTH_SHORT).show();
mView.setBenchmarkMode(item);
mView.suspendRendering(false);
}
});
builder.show();
return true;
case R.id.debug_mode:
mView.suspendRendering(true);
AlertDialog.Builder debugBuilder = new AlertDialog.Builder(this);
debugBuilder.setTitle("Pick a Test");
debugBuilder.setItems(mView.getTestNames(),
@@ -120,6 +124,7 @@ public class RsBench extends Activity {
"Switching to: " + mView.getTestNames()[item],
Toast.LENGTH_SHORT).show();
mView.setDebugMode(item);
mView.suspendRendering(false);
}
});
debugBuilder.show();

View File

@@ -266,6 +266,10 @@ public class RsBenchRS {
mScript.invoke_setBenchmarkMode(benchNum);
}
public void pause(boolean pause) {
mScript.set_gPauseRendering(pause);
}
private void initRS() {
mScript = new ScriptC_rsbench(mRS, mRes, R.raw.rsbench);

View File

@@ -92,6 +92,10 @@ public class RsBenchView extends RSSurfaceView {
mRender.setBenchmarkMode(benchNum);
}
void suspendRendering(boolean pause) {
mRender.pause(pause);
}
void setDebugMode(int num) {
mRender.setDebugMode(num);
}

View File

@@ -51,6 +51,7 @@ typedef struct TestScripts_s {
TestScripts *gTestScripts;
bool gLoadComplete = false;
bool gPauseRendering = false;
static float gDt = 0;
@@ -257,6 +258,10 @@ int root(void) {
return 1;
}
if (gPauseRendering) {
rsgDrawText("Paused", 50, 50);
return 30;
}
if (gIsDebugMode) {
debug();
} else {