246 lines
6.9 KiB
Java
246 lines
6.9 KiB
Java
/*
|
|
* Copyright 2014 A.C.R. Development
|
|
*/
|
|
package acr.browser.lightning;
|
|
|
|
import android.app.AlertDialog;
|
|
import android.content.DialogInterface;
|
|
import android.content.SharedPreferences;
|
|
import android.os.Bundle;
|
|
import android.support.v7.app.ActionBarActivity;
|
|
import android.support.v7.widget.Toolbar;
|
|
import android.view.MenuItem;
|
|
import android.view.View;
|
|
import android.view.View.OnClickListener;
|
|
import android.view.WindowManager;
|
|
import android.widget.CheckBox;
|
|
import android.widget.CompoundButton;
|
|
import android.widget.CompoundButton.OnCheckedChangeListener;
|
|
import android.widget.RelativeLayout;
|
|
|
|
public class DisplaySettingsActivity extends ActionBarActivity {
|
|
|
|
// mPreferences variables
|
|
private SharedPreferences mPreferences;
|
|
private SharedPreferences.Editor mEditPrefs;
|
|
private CheckBox cbHideStatusBar, cbFullScreen, cbWideViewPort, cbOverView, cbTextReflow;
|
|
|
|
@Override
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
super.onCreate(savedInstanceState);
|
|
setContentView(R.layout.display_settings);
|
|
|
|
// set up ActionBar
|
|
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
|
|
setSupportActionBar(toolbar);
|
|
|
|
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
|
|
|
mPreferences = getSharedPreferences(PreferenceConstants.PREFERENCES, 0);
|
|
if (mPreferences.getBoolean(PreferenceConstants.HIDE_STATUS_BAR, false)) {
|
|
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
|
|
WindowManager.LayoutParams.FLAG_FULLSCREEN);
|
|
}
|
|
|
|
// TODO WARNING: SharedPreferences.edit() without a corresponding
|
|
// commit() or apply() call
|
|
mEditPrefs = mPreferences.edit();
|
|
|
|
initialize();
|
|
}
|
|
|
|
@Override
|
|
public boolean onOptionsItemSelected(MenuItem item) {
|
|
finish();
|
|
return true;
|
|
}
|
|
|
|
private void initialize() {
|
|
|
|
RelativeLayout rHideStatusBar, rFullScreen, rWideViewPort, rOverView, rTextReflow, rTextSize;
|
|
|
|
rHideStatusBar = (RelativeLayout) findViewById(R.id.rHideStatusBar);
|
|
rFullScreen = (RelativeLayout) findViewById(R.id.rFullScreen);
|
|
rWideViewPort = (RelativeLayout) findViewById(R.id.rWideViewPort);
|
|
rOverView = (RelativeLayout) findViewById(R.id.rOverView);
|
|
rTextReflow = (RelativeLayout) findViewById(R.id.rTextReflow);
|
|
rTextSize = (RelativeLayout) findViewById(R.id.rTextSize);
|
|
|
|
cbHideStatusBar = (CheckBox) findViewById(R.id.cbHideStatusBar);
|
|
cbFullScreen = (CheckBox) findViewById(R.id.cbFullScreen);
|
|
cbWideViewPort = (CheckBox) findViewById(R.id.cbWideViewPort);
|
|
cbOverView = (CheckBox) findViewById(R.id.cbOverView);
|
|
cbTextReflow = (CheckBox) findViewById(R.id.cbTextReflow);
|
|
|
|
cbHideStatusBar.setChecked(mPreferences.getBoolean(PreferenceConstants.HIDE_STATUS_BAR, false));
|
|
cbFullScreen.setChecked(mPreferences.getBoolean(PreferenceConstants.FULL_SCREEN, false));
|
|
cbWideViewPort.setChecked(mPreferences.getBoolean(PreferenceConstants.USE_WIDE_VIEWPORT, true));
|
|
cbOverView.setChecked(mPreferences.getBoolean(PreferenceConstants.OVERVIEW_MODE, true));
|
|
cbTextReflow.setChecked(mPreferences.getBoolean(PreferenceConstants.TEXT_REFLOW, false));
|
|
|
|
rHideStatusBar(rHideStatusBar);
|
|
rFullScreen(rFullScreen);
|
|
rWideViewPort(rWideViewPort);
|
|
rOverView(rOverView);
|
|
rTextReflow(rTextReflow);
|
|
rTextSize(rTextSize);
|
|
cbHideStatusBar(cbHideStatusBar);
|
|
cbFullScreen(cbFullScreen);
|
|
cbWideViewPort(cbWideViewPort);
|
|
cbOverView(cbOverView);
|
|
cbTextReflow(cbTextReflow);
|
|
}
|
|
|
|
private void cbHideStatusBar(CheckBox view) {
|
|
view.setOnCheckedChangeListener(new OnCheckedChangeListener() {
|
|
|
|
@Override
|
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
|
mEditPrefs.putBoolean(PreferenceConstants.HIDE_STATUS_BAR, isChecked);
|
|
mEditPrefs.apply();
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
private void cbFullScreen(CheckBox view) {
|
|
view.setOnCheckedChangeListener(new OnCheckedChangeListener() {
|
|
|
|
@Override
|
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
|
mEditPrefs.putBoolean(PreferenceConstants.FULL_SCREEN, isChecked);
|
|
mEditPrefs.apply();
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
|
|
private void cbWideViewPort(CheckBox view) {
|
|
view.setOnCheckedChangeListener(new OnCheckedChangeListener() {
|
|
|
|
@Override
|
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
|
mEditPrefs.putBoolean(PreferenceConstants.USE_WIDE_VIEWPORT, isChecked);
|
|
mEditPrefs.apply();
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
private void cbOverView(CheckBox view) {
|
|
view.setOnCheckedChangeListener(new OnCheckedChangeListener() {
|
|
|
|
@Override
|
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
|
mEditPrefs.putBoolean(PreferenceConstants.OVERVIEW_MODE, isChecked);
|
|
mEditPrefs.apply();
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
private void cbTextReflow(CheckBox view) {
|
|
view.setOnCheckedChangeListener(new OnCheckedChangeListener() {
|
|
|
|
@Override
|
|
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
|
|
mEditPrefs.putBoolean(PreferenceConstants.TEXT_REFLOW, isChecked);
|
|
mEditPrefs.apply();
|
|
}
|
|
});
|
|
}
|
|
|
|
private void rHideStatusBar(RelativeLayout view) {
|
|
view.setOnClickListener(new OnClickListener() {
|
|
|
|
@Override
|
|
public void onClick(View v) {
|
|
cbHideStatusBar.setChecked(!cbHideStatusBar.isChecked());
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
private void rFullScreen(RelativeLayout view) {
|
|
view.setOnClickListener(new OnClickListener() {
|
|
|
|
@Override
|
|
public void onClick(View v) {
|
|
cbFullScreen.setChecked(!cbFullScreen.isChecked());
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
private void rWideViewPort(RelativeLayout view) {
|
|
view.setOnClickListener(new OnClickListener() {
|
|
|
|
@Override
|
|
public void onClick(View v) {
|
|
// TODO Auto-generated method stub
|
|
cbWideViewPort.setChecked(!cbWideViewPort.isChecked());
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
private void rOverView(RelativeLayout view) {
|
|
view.setOnClickListener(new OnClickListener() {
|
|
|
|
@Override
|
|
public void onClick(View v) {
|
|
// TODO Auto-generated method stub
|
|
cbOverView.setChecked(!cbOverView.isChecked());
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
private void rTextReflow(RelativeLayout view) {
|
|
view.setOnClickListener(new OnClickListener() {
|
|
|
|
@Override
|
|
public void onClick(View v) {
|
|
cbTextReflow.setChecked(!cbTextReflow.isChecked());
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
private void rTextSize(RelativeLayout view) {
|
|
view.setOnClickListener(new OnClickListener() {
|
|
|
|
@Override
|
|
public void onClick(View v) {
|
|
AlertDialog.Builder picker = new AlertDialog.Builder(DisplaySettingsActivity.this);
|
|
picker.setTitle(getResources().getString(R.string.title_text_size));
|
|
|
|
int n = mPreferences.getInt(PreferenceConstants.TEXT_SIZE, 3);
|
|
|
|
picker.setSingleChoiceItems(R.array.text_size, n - 1,
|
|
new DialogInterface.OnClickListener() {
|
|
|
|
@Override
|
|
public void onClick(DialogInterface dialog, int which) {
|
|
mEditPrefs.putInt(PreferenceConstants.TEXT_SIZE, which + 1);
|
|
mEditPrefs.apply();
|
|
|
|
}
|
|
});
|
|
picker.setNeutralButton(getResources().getString(R.string.action_ok),
|
|
new DialogInterface.OnClickListener() {
|
|
|
|
@Override
|
|
public void onClick(DialogInterface dialog, int which) {
|
|
|
|
}
|
|
});
|
|
picker.show();
|
|
}
|
|
|
|
});
|
|
}
|
|
}
|