blob: 42a6c6cb78fa7435ec484e858a3017c95ae0a65f [file] [log] [blame]
package com.fairphone.checkup.tests.buttons;
import android.content.Context;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;
import com.fairphone.checkup.R;
import com.fairphone.checkup.tests.Test;
/**
* Created by maarten on 22/09/16.
*/
public class ButtonsTest extends Test {
private static final String TAG = ButtonsTest.class.getSimpleName();
View mTestView;
public ButtonsTest(Context context) {
super(context);
}
@Override
protected int getTestTitleID() {
return R.string.buttons_test_title;
}
@Override
protected int getTestDescriptionID() {
return R.string.buttons_test_description;
}
protected void replaceView() {
mTestView = LayoutInflater.from(getContext()).inflate(R.layout.view_buttons_test, null);
setTestView(mTestView);
}
@Override
protected void runTest() {
replaceView();
setupOnKeyListener();
}
@Override
protected void onCleanUp() {
super.onCleanUp();
}
private void setupOnKeyListener() {
OnKeyListener onKeyListener = new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
int action = event.getAction();
if(action == KeyEvent.ACTION_DOWN) {
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_UP:
((TextView)findViewById(R.id.button_volume_up_value)).setText(getResources().getString(R.string.buttons_pressed));
break;
case KeyEvent.KEYCODE_VOLUME_DOWN:
((TextView)findViewById(R.id.button_volume_down_value)).setText(getResources().getString(R.string.buttons_pressed));
break;
case KeyEvent.KEYCODE_CAMERA:
((TextView)findViewById(R.id.button_camera_value)).setText(getResources().getString(R.string.buttons_triggered));
break;
default:
return false;
}
} else if (action == KeyEvent.ACTION_UP) {
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_UP:
((TextView)findViewById(R.id.button_volume_up_value)).setText(getResources().getString(R.string.buttons_unpressed));
break;
case KeyEvent.KEYCODE_VOLUME_DOWN:
((TextView)findViewById(R.id.button_volume_down_value)).setText(getResources().getString(R.string.buttons_unpressed));
break;
default:
return false;
}
}
return true;
}
};
setFocusableInTouchMode(true);
requestFocus();
setOnKeyListener(onKeyListener);
}
}