141f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines/* 241f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * Copyright (C) 2008 The Android Open Source Project 341f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * 441f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * Licensed under the Apache License, Version 2.0 (the "License"); 541f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * you may not use this file except in compliance with the License. 641f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * You may obtain a copy of the License at 741f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * 841f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * http://www.apache.org/licenses/LICENSE-2.0 941f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * 1041f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * Unless required by applicable law or agreed to in writing, software 1141f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * distributed under the License is distributed on an "AS IS" BASIS, 1241f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1341f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * See the License for the specific language governing permissions and 1441f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines * limitations under the License. 1541f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines */ 1641f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 1741f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinespackage com.android.rs.test_v14; 1841f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 1941f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.renderscript.RSSurfaceView; 2041f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.renderscript.RenderScript; 2141f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 2241f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.app.Activity; 2341f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.content.res.Configuration; 2441f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.os.Bundle; 2541f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.os.Handler; 2641f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.os.Looper; 2741f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.os.Message; 2841f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.provider.Settings.System; 2941f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.util.Log; 3041f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.view.Menu; 3141f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.view.MenuItem; 3241f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.view.View; 3341f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.view.Window; 3441f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.widget.Button; 3541f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport android.widget.ListView; 3641f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 3741f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinesimport java.lang.Runtime; 3841f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 3941f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hinespublic class RSTest_v14 extends Activity { 4041f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines //EventListener mListener = new EventListener(); 4141f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 4241f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines private static final String LOG_TAG = "RSTest_v14"; 4341f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines private static final boolean DEBUG = false; 4441f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines private static final boolean LOG_ENABLED = false; 4541f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 4641f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines private RSTestView mView; 4741f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 4841f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines // get the current looper (from your Activity UI thread for instance 4941f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 5041f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines @Override 5141f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines public void onCreate(Bundle icicle) { 5241f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines super.onCreate(icicle); 5341f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 5441f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines // Create our Preview view and set it as the content of our 5541f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines // Activity 5641f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines mView = new RSTestView(this); 5741f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines setContentView(mView); 5841f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines } 5941f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 6041f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines @Override 6141f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines protected void onResume() { 6241f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines // Ideally a game should implement onResume() and onPause() 6341f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines // to take appropriate action when the activity loses focus 6441f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines super.onResume(); 6541f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines mView.resume(); 6641f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines } 6741f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 6841f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines @Override 6941f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines protected void onPause() { 7041f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines // Ideally a game should implement onResume() and onPause() 7141f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines // to take appropriate action when the activity loses focus 7241f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines super.onPause(); 7341f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines mView.pause(); 7441f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines } 7541f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 7641f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines @Override 7741f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines protected void onStop() { 7841f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines // Actually kill the app if we are stopping. We don't want to 7941f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines // continue/resume this test ever. It should always start fresh. 8041f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines finish(); 8141f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines super.onStop(); 8241f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines } 8341f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 8441f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines static void log(String message) { 8541f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines if (LOG_ENABLED) { 8641f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines Log.v(LOG_TAG, message); 8741f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines } 8841f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines } 8941f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 9041f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines 9141f1e5edee2d2663ae46b64528894896ff96fa3dStephen Hines} 92