X-Git-Url: http://www.average.org/gitweb/?p=WhereAmI.git;a=blobdiff_plain;f=src%2Forg%2Faverage%2Fwhereami%2FWhereAmI.java;h=1d3c2686e26da6b773d8da8b0042efab0bbc6bd8;hp=2323f5421f0800c2d3c90175d432055144af8f4f;hb=ecc054fdc790ab6cd0ccf9693b192a7e1fd3252c;hpb=f8ce18fab68dccae08e0897d2f9acf647ccba09c diff --git a/src/org/average/whereami/WhereAmI.java b/src/org/average/whereami/WhereAmI.java index 2323f54..1d3c268 100644 --- a/src/org/average/whereami/WhereAmI.java +++ b/src/org/average/whereami/WhereAmI.java @@ -1,5 +1,7 @@ package org.average.whereami; +import org.average.whereami.WhereAmIprefs; + import android.app.Activity; import android.net.wifi.WifiManager; import android.os.Bundle; @@ -13,6 +15,7 @@ import android.content.Intent; import android.content.IntentFilter; import android.content.Context; import android.content.res.Resources; +import android.content.SharedPreferences; import android.text.format.Time; import android.util.Log; import android.view.View; @@ -27,6 +30,7 @@ public class WhereAmI extends Activity { private WifiManager wifiman; private Integer runningtasks = 0; + private SharedPreferences prefs; private class UpdateTarget { private TextView tv; @@ -126,6 +130,7 @@ public class WhereAmI extends Activity IntentFilter intentFilter = new IntentFilter("android.net.conn.CONNECTIVITY_CHANGE"); registerReceiver(connChanged,intentFilter); + connChangedRegistered = true; boolean wifion = wifiman.setWifiEnabled(true); Log.w("WhereAmI", "enabling wifi result " + wifion); mHandler.postDelayed(resetInfo, 30000); @@ -136,7 +141,10 @@ public class WhereAmI extends Activity private Runnable resetInfo = new Runnable () { public void run() { Log.w("WhereAmI", "resetInfo starting"); - unregisterReceiver(connChanged); + if (connChangedRegistered) { + unregisterReceiver(connChanged); + connChangedRegistered = false; + } if (runningtasks > 0) { for (int i = 0; i < ut.length; i++) { ut[i].cancel(); @@ -151,6 +159,7 @@ public class WhereAmI extends Activity } }; + private boolean connChangedRegistered = false; private final BroadcastReceiver connChanged = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { @@ -174,12 +183,16 @@ public class WhereAmI extends Activity public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + prefs = getSharedPreferences("WhereAmI", MODE_PRIVATE); wifiman = (WifiManager)getSystemService(Context.WIFI_SERVICE); requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); - //getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); - //getWindow().clearFlags(WindowManager.LayoutParams. - // FLAG_FORCE_NOT_FULLSCREEN); + boolean fullscreen = prefs.getBoolean("fullscreen", false); + if (fullscreen) { + getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); + getWindow().clearFlags(WindowManager.LayoutParams. + FLAG_FORCE_NOT_FULLSCREEN); + } setContentView(R.layout.main); res = getResources(); month = res.getStringArray(R.array.month); @@ -203,8 +216,7 @@ public class WhereAmI extends Activity public void onPause() { super.onPause(); - Log.w("WhereAmI", "calling finish"); - finish(); + Log.w("WhereAmI", "going background"); } /** Called when the activity is destroyed. */ @@ -216,7 +228,10 @@ public class WhereAmI extends Activity mHandler.removeCallbacks(updateClock); mHandler.removeCallbacks(updateCal); mHandler.removeCallbacks(updateInfo); - //unregisterReceiver(connChanged); + if (connChangedRegistered) { + unregisterReceiver(connChanged); + connChangedRegistered = false; + } boolean wifion = wifiman.setWifiEnabled(false); Log.w("WhereAmI", "disabling wifi result " + wifion); } @@ -238,6 +253,7 @@ public class WhereAmI extends Activity return true; case R.id.settings: Log.w("WhereAmI", "settings requested"); + startActivity(new Intent(this, WhereAmIprefs.class)); return true; default: return super.onOptionsItemSelected(item);