コード例 #1
0
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    context = getActivity();
    mPreferences = PreferenceManager.getDefaultSharedPreferences(context);
    mPreferences.registerOnSharedPreferenceChangeListener(this);
    addPreferencesFromResource(R.layout.tools);

    mResidualFiles = findPreference(RESIDUAL_FILES);
    mOptimDB = findPreference(PREF_OPTIM_DB);

    long mStartTime = mPreferences.getLong(RESIDUAL_FILES, 0);
    mResidualFiles.setSummary("");
    if (mStartTime > 0) mResidualFiles.setSummary(DateUtils.getRelativeTimeSpanString(mStartTime));

    mStartTime = mPreferences.getLong(PREF_OPTIM_DB, 0);
    mOptimDB.setSummary("");
    if (mStartTime > 0) mOptimDB.setSummary(DateUtils.getRelativeTimeSpanString(mStartTime));

    if (Helpers.binExist("dd").equals(NOT_FOUND) || NO_FLASH) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("category_flash_img");
      getPreferenceScreen().removePreference(hideCat);
    }
    if (Helpers.binExist("pm").equals(NOT_FOUND)) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("category_freezer");
      getPreferenceScreen().removePreference(hideCat);
    }
    setRetainInstance(true);
    setHasOptionsMenu(true);
  }
コード例 #2
0
 /**
  * onCreateView
  *
  * <p>handles the special case of the serverport entry which is an int....
  */
 @Override
 public View onCreateView(
     LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
   SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getActivity());
   // prefs.registerOnSharedPreferenceChangeListener(this);
   for (String key : prefs.getAll().keySet()) {
     Preference pref = findPreference(key);
     if (pref == null) continue;
     if (key.equals("serverport")) pref.setSummary("" + prefs.getInt(key, 0));
     else pref.setSummary(prefs.getString(key, key));
   }
   return super.onCreateView(inflater, container, savedInstanceState);
 }
コード例 #3
0
  @Override
  public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
    if (key.equals(RESIDUAL_FILES)) {
      mResidualFiles.setSummary("");
      final long mStartTime = sharedPreferences.getLong(key, 0);
      if (mStartTime > 0)
        mResidualFiles.setSummary(DateUtils.getRelativeTimeSpanString(mStartTime));

    } else if (key.equals(PREF_OPTIM_DB)) {
      mOptimDB.setSummary("");
      final long mStartTime = sharedPreferences.getLong(key, 0);
      if (mStartTime > 0) mOptimDB.setSummary(DateUtils.getRelativeTimeSpanString(mStartTime));
    }
  }
コード例 #4
0
  /**
   * onSharedPreferenceChanged not needed in my code, but still in case i have one listpreference,
   * its takes the selected entry to create the summary (planned when/if i add background images to
   * the buttons...
   */
  @Override
  public void onSharedPreferenceChanged(SharedPreferences sharedPref, String key) {
    Preference pref = findPreference(key);
    // Log.d(TAG, "preference change for " + key + " " + pref.getTitle());

    // pref.getTitle();
    if (pref instanceof ListPreference) {
      ListPreference listPref = (ListPreference) pref;
      pref.setSummary(listPref.getEntry());
    } else pref.setSummary(sharedPref.getString(key, key));

    // MainActivity mainAct = (MainActivity) getContext();
    // if(mainAct != null) mainAct.onSharedPreferenceChanged(sharedPref,key);
  }
コード例 #5
0
 /**
  * For each list dialog, we display the value selected in the "summary" text. When a new value is
  * selected from the list dialog, update the summary to the selected entry.
  */
 public boolean onPreferenceChange(Preference preference, Object newValue) {
   ListPreference list = (ListPreference) preference;
   int index = list.findIndexOfValue((String) newValue);
   CharSequence entry = list.getEntries()[index];
   preference.setSummary(entry);
   return true;
 }
コード例 #6
0
ファイル: Setting.java プロジェクト: 594904292/bangbangmang
 @Override
 public boolean onPreferenceChange(Preference p, Object newValue) {
   if (p instanceof CheckBoxPreference) {;
   } else {
     p.setSummary("" + newValue);
   }
   return true;
 }
コード例 #7
0
ファイル: Setting.java プロジェクト: 594904292/bangbangmang
 private void bind(PreferenceGroup group) {
   SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
   for (int i = 0; i < group.getPreferenceCount(); i++) {
     Preference p = group.getPreference(i);
     if (p instanceof PreferenceGroup) {
       bind((PreferenceGroup) p);
     } else {
       if (p instanceof CheckBoxPreference) {;
       } else {
         Object val = sp.getAll().get(p.getKey());
         p.setSummary(val == null ? "" : ("" + val));
         p.setOnPreferenceChangeListener(this);
       }
     }
   }
 }
コード例 #8
0
ファイル: Advanced.java プロジェクト: cougar11/Tools
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    context = getActivity();
    mPreferences = PreferenceManager.getDefaultSharedPreferences(context);
    mPreferences.registerOnSharedPreferenceChangeListener(this);
    addPreferencesFromResource(R.layout.advanced);

    sreadahead = getResources().getString(R.string.ps_read_ahead, "");

    mReadAhead = (ListPreference) findPreference(PREF_READ_AHEAD);
    mBltimeout = findPreference(PREF_BLTIMEOUT);
    mBltouch = (CheckBoxPreference) findPreference(PREF_BLTOUCH);
    mBln = (CheckBoxPreference) findPreference(PREF_BLN);
    mWifiPM = (CheckBoxPreference) findPreference("pref_wifi_pm");
    mTouchScr = findPreference("touchscr_settings");
    mViber = findPreference("pref_viber");
    mVM = findPreference("vm_settings");

    mDsync = (CheckBoxPreference) findPreference(PREF_DSYNC);

    mPFK = findPreference("pfk_settings");

    mDynamicWriteBackOn = (CheckBoxPreference) findPreference(PREF_DYNAMIC_DIRTY_WRITEBACK);
    mDynamicWriteBackActive = findPreference(PREF_DIRTY_WRITEBACK_ACTIVE);
    mDynamicWriteBackSuspend = findPreference(PREF_DIRTY_WRITEBACK_SUSPEND);

    if (!new File(DSYNC_PATH).exists()) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("dsync");
      getPreferenceScreen().removePreference(hideCat);
    } else {
      mDsync.setChecked(Helpers.readOneLine(DSYNC_PATH).equals("1"));
    }
    if (!new File(PFK_HOME_ENABLED).exists() || !new File(PFK_MENUBACK_ENABLED).exists()) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("pfk");
      getPreferenceScreen().removePreference(hideCat);
    }

    if (!new File(BL_TIMEOUT_PATH).exists()) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("bltimeout");
      getPreferenceScreen().removePreference(hideCat);
    } else {
      mBltimeout.setSummary(Helpers.readOneLine(BL_TIMEOUT_PATH));
    }

    if (!new File(BL_TOUCH_ON_PATH).exists()) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("bltouch");
      getPreferenceScreen().removePreference(hideCat);
    } else {
      mBltouch.setChecked(Helpers.readOneLine(BL_TOUCH_ON_PATH).equals("1"));
    }

    BLN_PATH = Helpers.bln_path();
    if (BLN_PATH == null) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("bln");
      getPreferenceScreen().removePreference(hideCat);
    } else {
      mBln.setChecked(Helpers.readOneLine(BLN_PATH).equals("1"));
    }

    if (no_touchscreen()) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("touch_scr");
      getPreferenceScreen().removePreference(hideCat);
    }

    VIBE_PATH = vib.get_path();

    if (VIBE_PATH == null) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("viber");
      getPreferenceScreen().removePreference(hideCat);
    } else {
      mViber.setSummary(vib.get_val(VIBE_PATH));
    }

    if (!new File(DYNAMIC_DIRTY_WRITEBACK_PATH).exists()) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("cat_dynamic_write_back");
      getPreferenceScreen().removePreference(hideCat);
    } else {
      boolean ison = Helpers.readOneLine(DYNAMIC_DIRTY_WRITEBACK_PATH).equals("1");
      mDynamicWriteBackOn.setChecked(ison);
      mDynamicWriteBackActive.setSummary(Helpers.readOneLine(DIRTY_WRITEBACK_ACTIVE_PATH));
      mDynamicWriteBackSuspend.setSummary(Helpers.readOneLine(DIRTY_WRITEBACK_SUSPEND_PATH));
    }
    WIFIPM_PATH = Helpers.wifipm_path();
    if (WIFIPM_PATH == null) {
      PreferenceCategory hideCat = (PreferenceCategory) findPreference("wifi_pm");
      getPreferenceScreen().removePreference(hideCat);
    } else {
      mWifiPM.setChecked(Helpers.readOneLine(WIFIPM_PATH).equals("1"));
    }
    final String readahead = Helpers.readOneLine(READ_AHEAD_PATH);
    mReadAhead.setValue(readahead);
    mReadAhead.setSummary(getString(R.string.ps_read_ahead, readahead + "  kb"));

    setHasOptionsMenu(true);
  }
コード例 #9
0
ファイル: Advanced.java プロジェクト: cougar11/Tools
 @Override
 public void onSharedPreferenceChanged(final SharedPreferences sharedPreferences, String key) {
   final SharedPreferences.Editor editor = sharedPreferences.edit();
   if (key.equals(PREF_READ_AHEAD)) {
     final String values = mReadAhead.getValue();
     if (!values.equals(Helpers.readOneLine(READ_AHEAD_PATH))) {
       for (byte i = 0; i < 2; i++) {
         if (new File(READ_AHEAD_PATH.replace("mmcblk0", "mmcblk" + i)).exists())
           new CMDProcessor()
               .su.runWaitFor(
                   "busybox echo "
                       + values
                       + " > "
                       + READ_AHEAD_PATH.replace("mmcblk0", "mmcblk" + i));
       }
     }
     mReadAhead.setSummary(sreadahead + values + " kb");
   } else if (key.equals(PREF_BLTIMEOUT)) {
     mBltimeout.setSummary(Helpers.readOneLine(BL_TIMEOUT_PATH));
   } else if (key.equals(BLX_SOB)) {
     if (sharedPreferences.getBoolean(key, false)) {
       editor.putInt(PREF_BLX, Integer.parseInt(Helpers.readOneLine(BLX_PATH))).apply();
     } else {
       editor.remove(PREF_BLX).apply();
     }
   } else if (key.equals(BLTIMEOUT_SOB)) {
     if (sharedPreferences.getBoolean(key, false)) {
       editor
           .putInt(PREF_BLTIMEOUT, Integer.parseInt(Helpers.readOneLine(BL_TIMEOUT_PATH)))
           .apply();
     } else {
       editor.remove(PREF_BLTIMEOUT).apply();
     }
   } else if (key.equals(PFK_SOB)) {
     if (sharedPreferences.getBoolean(key, false)) {
       if (Helpers.readOneLine(PFK_HOME_ENABLED).equals("1")) {
         editor.putBoolean(PFK_HOME_ON, true);
       } else {
         editor.putBoolean(PFK_HOME_ON, false);
       }
       editor
           .putInt(
               PREF_HOME_ALLOWED_IRQ, Integer.parseInt(Helpers.readOneLine(PFK_HOME_ALLOWED_IRQ)))
           .putInt(
               PREF_HOME_REPORT_WAIT, Integer.parseInt(Helpers.readOneLine(PFK_HOME_REPORT_WAIT)));
       if (Helpers.readOneLine(PFK_MENUBACK_ENABLED).equals("1")) {
         editor.putBoolean(PFK_MENUBACK_ON, true);
       } else {
         editor.putBoolean(PFK_MENUBACK_ON, false);
       }
       editor
           .putInt(
               PREF_MENUBACK_INTERRUPT_CHECKS,
               Integer.parseInt(Helpers.readOneLine(PFK_MENUBACK_INTERRUPT_CHECKS)))
           .putInt(
               PREF_MENUBACK_FIRST_ERR_WAIT,
               Integer.parseInt(Helpers.readOneLine(PFK_MENUBACK_FIRST_ERR_WAIT)))
           .putInt(
               PREF_MENUBACK_LAST_ERR_WAIT,
               Integer.parseInt(Helpers.readOneLine(PFK_MENUBACK_LAST_ERR_WAIT)))
           .apply();
     } else {
       editor
           .remove(PFK_HOME_ON)
           .remove(PREF_HOME_ALLOWED_IRQ)
           .remove(PREF_HOME_REPORT_WAIT)
           .remove(PFK_MENUBACK_ON)
           .remove(PREF_MENUBACK_INTERRUPT_CHECKS)
           .remove(PREF_MENUBACK_FIRST_ERR_WAIT)
           .remove(PREF_MENUBACK_LAST_ERR_WAIT)
           .apply();
     }
   } else if (key.equals(DYNAMIC_DIRTY_WRITEBACK_SOB)) {
     if (sharedPreferences.getBoolean(key, false)) {
       if (Helpers.readOneLine(DYNAMIC_DIRTY_WRITEBACK_PATH).equals("1")) {
         editor.putBoolean(PREF_DYNAMIC_DIRTY_WRITEBACK, true);
       } else {
         editor.putBoolean(PREF_DYNAMIC_DIRTY_WRITEBACK, false);
       }
       editor
           .putInt(
               PREF_DIRTY_WRITEBACK_ACTIVE,
               Integer.parseInt(Helpers.readOneLine(DIRTY_WRITEBACK_ACTIVE_PATH)))
           .putInt(
               PREF_DIRTY_WRITEBACK_SUSPEND,
               Integer.parseInt(Helpers.readOneLine(DIRTY_WRITEBACK_SUSPEND_PATH)))
           .apply();
     } else {
       editor
           .remove(PREF_DYNAMIC_DIRTY_WRITEBACK)
           .remove(PREF_DIRTY_WRITEBACK_ACTIVE)
           .remove(PREF_DIRTY_WRITEBACK_SUSPEND)
           .apply();
     }
   }
 }
コード例 #10
0
ファイル: SettingsActivity.java プロジェクト: ginkel/hashit
  /** @see android.app.Activity#onResume() */
  @Override
  protected void onResume() {
    super.onResume();

    final HistoryManager historyManager = HashItApplication.getApp(this).getHistoryManager();
    final PreferenceScreen prefScreen = getPreferenceScreen();

    final SharedPreferences defaults =
        PreferenceManager.getDefaultSharedPreferences(getBaseContext());

    if (SDK_INT >= HONEYCOMB) {
      // Look & Feel
      final PreferenceCategory lookAndFeel = new PreferenceCategory(this);
      lookAndFeel.setTitle(R.string.Header_LookAndFeel);
      prefScreen.addPreference(lookAndFeel);

      final Preference useDarkTheme =
          addCheckBoxPreference(
              lookAndFeel, USE_DARK_THEME, R.string.CheckBox_UseDarkTheme, defaults, false);
      useDarkTheme.setOnPreferenceChangeListener(
          new OnPreferenceChangeListener() {
            @Override
            public boolean onPreferenceChange(Preference preference, Object newValue) {
              recreate();
              return true;
            }
          });
    }

    // Convenience
    final PreferenceCategory convenience = new PreferenceCategory(this);
    convenience.setTitle(R.string.Header_Convenience);
    prefScreen.addPreference(convenience);

    final Preference enableHistory =
        addCheckBoxPreference(
            convenience, ENABLE_HISTORY, R.string.CheckBox_EnableHistory, defaults, true);
    enableHistory.setSummary(R.string.Summary_EnableHistory);

    final boolean enableClear = historyManager != null && !historyManager.isEmpty();
    final Preference clear =
        addActionPreference(
            convenience,
            R.string.Action_ClearHistory,
            new OnPreferenceClickListener() {

              public boolean onPreferenceClick(Preference pref) {
                historyManager.clear();
                pref.setSummary(R.string.Summary_ClearHistory_Empty);
                pref.setEnabled(false);
                return true;
              }
            },
            enableClear);
    clear.setSummary(
        enableClear ? R.string.Summary_ClearHistory : R.string.Summary_ClearHistory_Empty);

    final Preference autoExit =
        addCheckBoxPreference(convenience, AUTO_EXIT, R.string.CheckBox_AutoExit, defaults, false);
    autoExit.setSummary(R.string.Summary_AutoExit);

    final ListPreference cacheDuration =
        addListPreference(
            convenience,
            CACHE_DURATION,
            R.string.Label_CacheMasterKey,
            R.string.Header_CacheDuration,
            R.array.Array_CacheDuration,
            R.array.Array_CacheDuration_Values,
            defaults,
            -1);
    cacheDuration.setOnPreferenceChangeListener(
        new OnPreferenceChangeListener() {

          public boolean onPreferenceChange(Preference preference, Object newValue) {
            updateSummary((ListPreference) preference, newValue);
            if (Integer.parseInt((String) newValue) <= 0) {
              MemoryCacheServiceImpl.stopService(SettingsActivity.this);
            }
            return true;
          }
        });
    updateSummary(cacheDuration, cacheDuration.getValue());

    final Preference showMasterKeyDigest;
    showMasterKeyDigest =
        addCheckBoxPreference(
            convenience,
            SHOW_MASTER_KEY_DIGEST,
            R.string.CheckBox_ShowMasterKeyDigest,
            defaults,
            true);
    showMasterKeyDigest.setSummary(R.string.Summary_ShowMasterKeyDigest);

    disableConflictingPreferences(DISABLE_CLIPBOARD, DEPS_DISABLE_CLIPBOARD);

    if (savedState != null) {
      final Parcelable listState = savedState.getParcelable(PREF_LIST_STATE);
      if (listState != null) {
        Handler handler = new Handler();
        // run the position restore delayed (as it won't work synchronously)
        handler.post(
            new Runnable() {
              @Override
              public void run() {
                final ListView listView = getListView();
                listView.onRestoreInstanceState(listState);
              }
            });
      }
      savedState = null;
    }
  }
コード例 #11
0
ファイル: SettingsActivity.java プロジェクト: ginkel/hashit
  @Override
  protected void populateSecurityCategory(
      final PreferenceCategory security, final SharedPreferences defaults) {
    final Preference compatibilityMode =
        addCheckBoxPreference(
            security, COMPATIBILITY_MODE, R.string.CheckBox_CompatibilityMode, defaults, true);
    compatibilityMode.setSummary(R.string.Summary_CompatibilityMode);
    compatibilityMode.setOnPreferenceChangeListener(
        new OnPreferenceChangeListener() {

          public boolean onPreferenceChange(final Preference pref, final Object newValue) {
            if (Boolean.FALSE == newValue) {
              new AlertDialog.Builder(SettingsActivity.this)
                  .setTitle(R.string.Title_SeedWarning)
                  .setMessage(R.string.Message_SeedWarning)
                  .setPositiveButton(android.R.string.ok, new DummyOnClickListener())
                  .setIcon(R.drawable.icon)
                  .show();
            }

            return true;
          }
        });
    final Preference setPrivateKey =
        addActionPreference(
            security,
            R.string.Action_ChangeSeed,
            new OnPreferenceClickListener() {
              public boolean onPreferenceClick(Preference pref) {
                final View view = View.inflate(SettingsActivity.this, R.layout.seed_entry, null);

                final EditText seed = (EditText) view.findViewById(R.id.Edit_SeedEntry);
                seed.setText(SeedHelper.getSeed(defaults));

                new AlertDialog.Builder(SettingsActivity.this)
                    .setTitle(R.string.Title_ChangeSeed)
                    .setView(view)
                    .setPositiveButton(
                        android.R.string.ok,
                        new DialogInterface.OnClickListener() {
                          public void onClick(DialogInterface dialog, int which) {
                            SeedHelper.storeSeed(seed.getText().toString(), defaults);
                          }
                        })
                    .setNegativeButton(android.R.string.cancel, new DummyOnClickListener())
                    .setCancelable(true)
                    .setIcon(R.drawable.icon)
                    .show();
                return true;
              }
            },
            true);
    setPrivateKey.setSummary(R.string.Summary_ChangeSeed);
    final Preference disableClipboard =
        addCheckBoxPreference(
            security, DISABLE_CLIPBOARD, R.string.CheckBox_DisableClipboard, defaults, false);
    disableClipboard.setSummary(R.string.Summary_DisableClipboard);
    disableClipboard.setOnPreferenceChangeListener(
        new OnPreferenceChangeListener() {

          public boolean onPreferenceChange(Preference preference, Object newVal) {
            Boolean newValue = (Boolean) newVal;

            disableConflictingPreferences(newValue, true, DEPS_DISABLE_CLIPBOARD);
            if (newValue) ((CheckBoxPreference) findPreference(AUTO_EXIT)).setChecked(false);

            return true;
          }
        });
  }