implement on_boot checkbox
authorMichael Gernoth <michael@gernoth.net>
Sat, 21 May 2011 12:10:20 +0000 (14:10 +0200)
committerMichael Gernoth <michael@gernoth.net>
Sat, 21 May 2011 12:10:20 +0000 (14:10 +0200)
MS2Debounce/res/layout/main.xml
MS2Debounce/src/de/rmdir/ms2debounce/DebounceBootReceiver.java
MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java
MS2Debounce/src/de/rmdir/ms2debounce/MS2Debounce.java

index fcf4ea2..a62239d 100644 (file)
@@ -48,6 +48,7 @@
     android:layout_below="@id/load"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
+    android:onClick="toggle_on_boot"
     android:text="Load module on boot" />
 <TextView  
     android:id="@+id/text"
index cc072b0..b60b558 100644 (file)
@@ -10,7 +10,7 @@ public class DebounceBootReceiver extends BroadcastReceiver{
                if("android.intent.action.BOOT_COMPLETED".equals(intent.getAction())) {
                        DebounceModuleHelper module = new DebounceModuleHelper(context);
 
-                       if (module.is_safe_to_load()) {
+                       if (module.get_on_boot() && module.is_safe_to_load()) {
                                module.loadModule();
                        }
                }
index 6901353..39a29a8 100644 (file)
@@ -128,9 +128,20 @@ public class DebounceModuleHelper
 
        public synchronized boolean is_safe_to_load() {
                SharedPreferences settings = ctx.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
-               boolean safe_to_load = settings.getBoolean("safe_to_load", false);
+               return settings.getBoolean("safe_to_load", false);
+       }
+
+       public synchronized boolean get_on_boot() {
+               SharedPreferences settings = ctx.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
+               return settings.getBoolean("on_boot", false);
+       }
 
-               return safe_to_load;
+       public synchronized void set_on_boot(boolean on_boot) {
+               SharedPreferences settings = ctx.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
+               SharedPreferences.Editor editor = settings.edit();
+
+               editor.putBoolean("on_boot", on_boot);
+               editor.commit();
        }
 
        private synchronized void extractModule() {
index d1ece2b..abdabfc 100644 (file)
@@ -72,6 +72,7 @@ public class MS2Debounce extends Activity
                }
 
                CheckBox on_boot = (CheckBox)findViewById(R.id.on_boot);
+               on_boot.setChecked(module.get_on_boot());
                if (safe_to_load) {
                        on_boot.setEnabled(true);
                } else {
@@ -120,6 +121,12 @@ public class MS2Debounce extends Activity
                updateUI();
        }
 
+       public void toggle_on_boot(View view) {
+               CheckBox on_boot = (CheckBox)view;
+
+               module.set_on_boot(on_boot.isChecked());
+       }
+
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
                MenuInflater inflater = getMenuInflater();
Impressum, Datenschutz