Beispiel #1
1
    @Override
    public boolean onContextItemSelected(MenuItem item) {

      int posn = (int) ((AdapterContextMenuInfo) item.getMenuInfo()).position;
      Codec c = codecs.elementAt(posn);
      if (item.getItemId() == MENU_UP) {
        if (posn == 0) return super.onContextItemSelected(item);
        Codec tmp = codecs.elementAt(posn - 1);
        codecs.set(posn - 1, c);
        codecs.set(posn, tmp);
      } else if (item.getItemId() == MENU_DOWN) {
        if (posn == codecs.size() - 1) return super.onContextItemSelected(item);
        Codec tmp = codecs.elementAt(posn + 1);
        codecs.set(posn + 1, c);
        codecs.set(posn, tmp);
      }
      PreferenceScreen ps = getPreferenceScreen();
      SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(Receiver.mContext);
      String v = "";
      SharedPreferences.Editor e = sp.edit();

      for (Codec d : codecs) v = v + d.number() + " ";
      e.putString(Settings.PREF_CODECS, v);
      e.commit();
      ps.removeAll();
      addPreferences(ps);
      return super.onContextItemSelected(item);
    }
  private void init() {
    m2GCheckBoxPreference = (CheckBoxPreference) mFragment.findPreference(KEY_NETWORK_TYPE_2G);
    m3GCheckBoxPreference = (CheckBoxPreference) mFragment.findPreference(KEY_NETWORK_TYPE_3G);
    m4GCheckBoxPreference = (CheckBoxPreference) mFragment.findPreference(KEY_NETWORK_TYPE_4G);

    if (m2GCheckBoxPreference != null) {
      m2GCheckBoxPreference.setOnPreferenceChangeListener(
          (Preference.OnPreferenceChangeListener) mFragment);
    }
    if (m3GCheckBoxPreference != null) {
      m3GCheckBoxPreference.setOnPreferenceChangeListener(
          (Preference.OnPreferenceChangeListener) mFragment);
    }
    if (m4GCheckBoxPreference != null) {
      m4GCheckBoxPreference.setOnPreferenceChangeListener(
          (Preference.OnPreferenceChangeListener) mFragment);
    }

    Intent intent = getIntent();
    mSlotId = intent.getIntExtra(NetworkEditor.PLMN_SLOT, -1);
    mAct = intent.getIntExtra(NetworkEditor.PLMN_SERVICE, 0);

    PhoneLog.d(TAG, "init(): mSlotId = " + mSlotId + ", mAct = " + mAct);
    convertAct2Selections(mAct);

    if (!is4GSimCard(mSlotId)) {
      PhoneLog.d(
          TAG, "init(): the baseband of the sim card do not contain 4G. remove 4G CheckBox item.");
      PreferenceScreen prefSet = mFragment.getPreferenceScreen();
      prefSet.removePreference(m4GCheckBoxPreference);
    }
  }
 private void setLanguageSummary(boolean[] temp) {
   if (temp == null) {
     return;
   }
   boolean allLanguagesFlag = true;
   int tLength = temp.length;
   for (int i = 1; i < tLength; i++) {
     if (!temp[i]) {
       allLanguagesFlag = false; // not select all languages
       break;
     }
   }
   temp[0] = allLanguagesFlag;
   if (temp[0]) {
     mLanguagePreference.setSummary(R.string.cb_all_languages);
     return;
   }
   int flag = 0;
   String summary = "";
   int lastIndex = -1;
   for (int i = 1; i < tLength; i++) {
     if (temp[i] && flag < 2) {
       summary += mLanguageList.get(i).getLanguageName() + " ";
       flag++;
       lastIndex = i;
     }
     if (temp[i] && i > lastIndex && lastIndex != -1) {
       summary += " ...";
       break;
     }
   }
   mLanguagePreference.setSummary(summary);
 }
Beispiel #4
0
  /** Create all the preference widgets in the view */
  private void createView() {
    PreferenceScreen root = getPreferenceManager().createPreferenceScreen(this);
    createRestoreDefaultPrefs(root);
    createTrackPrefs(root);
    createMutePrefs(root);
    createInstrumentPrefs(root);

    PreferenceCategory sheetTitle = new PreferenceCategory(this);
    sheetTitle.setTitle(R.string.sheet_prefs_title);
    root.addPreference(sheetTitle);

    createScrollPrefs(root);
    createShowPianoPrefs(root);
    createShowLyricsPrefs(root);
    if (options.tracks.length != 2) {
      createTwoStaffsPrefs(root);
    }
    createShowLetterPrefs(root);
    createTransposePrefs(root);
    createKeySignaturePrefs(root);
    createTimeSignaturePrefs(root);
    createCombineIntervalPrefs(root);
    createColorPrefs(root);
    createPlayMeasuresInLoopPrefs(root);
    setPreferenceScreen(root);
  }
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    new StartupService().onStartupApplication(this);
    ContextManager.setContext(this);

    PreferenceScreen screen = getPreferenceScreen();
    voiceInputAssistant = new VoiceInputAssistant(this);

    addPluginPreferences(screen);

    screen.getPreference(POWER_PACK_PREFERENCE).setEnabled(addOnService.hasPowerPack());

    final Resources r = getResources();
    // About pref
    Preference preference = screen.getPreference(ABOUT_PREFERENCE);
    preference.setTitle(r.getString(R.string.p_about));
    preference.setOnPreferenceClickListener(
        new OnPreferenceClickListener() {
          public boolean onPreferenceClick(Preference p) {
            showAbout();
            return true;
          }
        });

    addDebugPreferences();

    addPreferenceListeners();
  }
 private void setScreenState() {
   if (isAirplaneModeOn()) {
     mNetworkSetting.setEnabled(false);
     mCallSetting.setEnabled(false);
     mEnablerPreference.setEnabled(false);
     mCDMACheckbox.setChecked(false);
     mGSMCheckbox.setChecked(false);
   } else {
     mNetworkSetting.setEnabled(isSubActivated());
     mCallSetting.setEnabled(isSubActivated());
     mEnablerPreference.setEnabled(hasCard());
     mCDMACheckbox.setEnabled(mEnablerPreference.isCard1Active());
     mGSMCheckbox.setEnabled(mEnablerPreference.isCard1Active());
     for (int i = 0; i < MAX_SUBSCRIPTIONS; i++) {
       Subscription sub = mSubscriptionManager.getCurrentSubscription(i);
       Log.d(LOG_TAG, "kangta" + sub.toString());
       if (sub.subId == 0) {
         mCDMACheckbox.setChecked(
             ((sub.subStatus == Subscription.SubscriptionStatus.SUB_ACTIVATED && sub.slotId == 0)
                 ? true
                 : false));
       } else if (sub.subId == 1) {
         mGSMCheckbox.setChecked(
             ((sub.subStatus == Subscription.SubscriptionStatus.SUB_ACTIVATED && sub.slotId == 0)
                 ? true
                 : false));
       }
     }
   }
 }
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    addPreferencesFromResource(R.xml.screen_preferences);

    PreferenceScreen prefSet = getPreferenceScreen();
    mmDNIeScenario = (mDNIeScenario) findPreference(DeviceSettings.KEY_MDNIE_SCENARIO);
    mmDNIeScenario.setEnabled(mDNIeScenario.isSupported());

    mmDNIeMode = (mDNIeMode) findPreference(DeviceSettings.KEY_MDNIE_MODE);
    mmDNIeMode.setEnabled(mDNIeMode.isSupported());

    mmDNIeNegative = (mDNIeNegative) findPreference(DeviceSettings.KEY_MDNIE_NEGATIVE);
    mmDNIeNegative.setEnabled(mDNIeNegative.isSupported());

    mLedFade = (LedFade) findPreference(DeviceSettings.KEY_LED_FADE);
    mLedFade.setEnabled(LedFade.isSupported());

    if (((CheckBoxPreference) prefSet.findPreference(DeviceSettings.KEY_TOUCHKEY_LIGHT))
        .isChecked()) {
      prefSet.findPreference(DeviceSettings.KEY_TOUCHKEY_TIMEOUT).setEnabled(true);
    } else {
      prefSet.findPreference(DeviceSettings.KEY_TOUCHKEY_TIMEOUT).setEnabled(false);
    }
  }
 private void initPreference() {
   mLanguagePreference = (PreferenceScreen) findPreference(KEY_LANGUAGE);
   mAddChannelPreference = (PreferenceScreen) findPreference(KEY_ADD_CHANNEL);
   mChannelListPreference = (PreferenceCategory) findPreference(KEY_CHANNEL_LIST);
   mLanguagePreference.setOnPreferenceClickListener(this);
   mAddChannelPreference.setOnPreferenceClickListener(this);
 }
    @Override
    public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      PreferenceScreen preferenceScreen =
          getPreferenceManager().createPreferenceScreen(getActivity());
      setPreferenceScreen(preferenceScreen);
      mSummaryPreference =
          new Preference(getActivity()) {
            @Override
            protected void onBindView(View view) {
              super.onBindView(view);
              TextView summaryView = (TextView) view.findViewById(R.id.summary);
              summaryView.setText(getSummary());
              sendAccessibilityEvent(summaryView);
            }

            private void sendAccessibilityEvent(View view) {
              // Since the view is still not attached we create, populate,
              // and send the event directly since we do not know when it
              // will be attached and posting commands is not as clean.
              AccessibilityManager accessibilityManager =
                  AccessibilityManager.getInstance(getActivity());
              if (accessibilityManager.isEnabled()) {
                AccessibilityEvent event = AccessibilityEvent.obtain();
                event.setEventType(AccessibilityEvent.TYPE_VIEW_FOCUSED);
                view.onInitializeAccessibilityEvent(event);
                view.dispatchPopulateAccessibilityEvent(event);
                accessibilityManager.sendAccessibilityEvent(event);
              }
            }
          };
      mSummaryPreference.setPersistent(false);
      mSummaryPreference.setLayoutResource(R.layout.text_description_preference);
      preferenceScreen.addPreference(mSummaryPreference);
    }
  @Override
  public void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    addPreferencesFromResource(R.xml.recents_panel_settings);

    PreferenceScreen prefSet = getPreferenceScreen();
    ContentResolver resolver = getActivity().getContentResolver();
    PackageManager pm = getPackageManager();

    mRecentsClearAll = (SwitchPreference) prefSet.findPreference(SHOW_CLEAR_ALL_RECENTS);
    mRecentsClearAll.setChecked(
        Settings.System.getIntForUser(
                resolver, Settings.System.SHOW_CLEAR_ALL_RECENTS, 1, UserHandle.USER_CURRENT)
            == 1);
    mRecentsClearAll.setOnPreferenceChangeListener(this);

    mRecentsClearAllLocation = (ListPreference) prefSet.findPreference(RECENTS_CLEAR_ALL_LOCATION);
    int location =
        Settings.System.getIntForUser(
            resolver, Settings.System.RECENTS_CLEAR_ALL_LOCATION, 3, UserHandle.USER_CURRENT);
    mRecentsClearAllLocation.setValue(String.valueOf(location));
    mRecentsClearAllLocation.setOnPreferenceChangeListener(this);
    updateRecentsLocation(location);

    mOmniSwitch = (Preference) prefSet.findPreference(KEY_OMNISWITCH);
    if (!Helpers.isPackageInstalled(OMNISWITCH_PACKAGE_NAME, pm)) {
      prefSet.removePreference(mOmniSwitch);
    }
  }
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    if (getPreferenceManager() != null) {
      addPreferencesFromResource(R.xml.operator_preferences);
      PreferenceScreen prefSet = getPreferenceScreen();

      mOperatorDisplayStyle = (ListPreference) prefSet.findPreference(OPERATOR_STYLE);
      mOperatorDisplayStyle.setOnPreferenceChangeListener(this);

      mOperatorDisplayText = (EditTextPreference) prefSet.findPreference(OPERATOR_TEXT);
      mOperatorDisplayText.setOnPreferenceChangeListener(this);

      if (mOperatorDisplayText != null) {
        String operLabel = mOperatorDisplayText.getText();
        if (TextUtils.isEmpty(operLabel)) {
          mOperatorDisplayText.setSummary(getString(R.string.operator_display_summary));
        } else {
          mOperatorDisplayText.setSummary(mOperatorDisplayText.getText());
        }
      }

      int index = Settings.System.getInt(getContentResolver(), CARRIER_LABEL_TYPE, 0);
      index = index > (mOperatorDisplayStyle.getEntries().length - 1) ? 0 : index;
      mOperatorDisplayStyle.setSummary(mOperatorDisplayStyle.getEntries()[index]);

      mOperatorDisplayText.setEnabled(index == 3);
    }
  }
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    PreferenceScreen ps = getPreferenceManager().createPreferenceScreen(getActivity());
    ps.setTitle(R.string.quick_response_settings_title);

    mResponses = Utils.getQuickResponses(getActivity());

    if (mResponses != null) {
      mEditTextPrefs = new EditTextPreference[mResponses.length];

      Arrays.sort(mResponses);
      int i = 0;
      for (String response : mResponses) {
        EditTextPreference et = new EditTextPreference(getActivity());
        et.setDialogTitle(R.string.quick_response_settings_edit_title);
        et.setTitle(response); // Display Text
        et.setText(response); // Value to edit
        et.setOnPreferenceChangeListener(this);
        mEditTextPrefs[i++] = et;
        ps.addPreference(et);
      }
    } else {
      Log.wtf(TAG, "No responses found");
    }
    setPreferenceScreen(ps);
    /// M:Toast to alarm @{
    mToast = Toast.makeText(getActivity(), "", Toast.LENGTH_SHORT);
    /// @}
  }
  @SuppressWarnings("deprecation")
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getPreferenceManager().setSharedPreferencesMode(MODE_WORLD_READABLE);
    addPreferencesFromResource(R.xml.pref_general);

    dnsTestPreference = findPreference(Settings.DNS_TEST_KEY);
    dnsTestPreference.setOnPreferenceClickListener(
        new Preference.OnPreferenceClickListener() {
          @Override
          public boolean onPreferenceClick(final Preference preference) {
            if (dnsTestTask == null) {
              dnsTestTask = new DnsTestTask();
              dnsTestTask.execute();
            }
            return false;
          }
        });

    checkState();
    checkIcon();

    // unnecessary for now, hide temporarily
    PreferenceScreen preferenceScreen = getPreferenceScreen();
    preferenceScreen.removePreference(findPreference(Settings.DNS_SERVER_KEY));
    preferenceScreen.removePreference(findPreference(Settings.DNS_TEST_KEY));
    preferenceScreen.removePreference(findPreference(Settings.DNS_INSTRUCTION_KEY));
  }
 private void bindPreferences() {
   PreferenceScreen localPreferenceScreen = getPreferenceScreen();
   if (localPreferenceScreen != null) {
     ListView localListView = getListView();
     localPreferenceScreen.bind(localListView);
   }
 }
  @Override
  protected void onResume() {
    PreferenceScreen pref_root = getPreferenceManager().createPreferenceScreen(this);

    SharedPreferences config = getSharedPreferences(getPackageName(), MODE_WORLD_READABLE);
    String tunnels = config.getString("tunnels", "");
    List<String> tunnels_list = Arrays.asList(tunnels.split("\n"));
    for (String tunnel : tunnels_list) {
      if (tunnel.length() == 0) continue;
      String remote_server =
          config.getString(String.format("tunnels.%s.remote_server", tunnel), "0.0.0.0");
      String local_client =
          config.getString(String.format("tunnels.%s.local_client", tunnel), "0.0.0.0");
      boolean config_autodetect =
          config.getBoolean(String.format("tunnels.%s.local_autodetect", tunnel), false);
      if (config_autodetect) {
        local_client = "<dynamic>";
      }
      String tunnel_address =
          config.getString(String.format("tunnels.%s.tunnel_address", tunnel), "::0/0");

      Preference pref = new Preference(this);
      pref.setKey(tunnel);
      pref.setTitle(String.format("%s - %s", local_client, remote_server));
      pref.setSummary(tunnel_address);
      pref.setOnPreferenceClickListener(new TunnelPreferenceListener(this));
      pref_root.addPreference(pref);
    }

    setPreferenceScreen(pref_root);

    super.onResume();
  }
 /*
  * (non-Javadoc)
  * @see android.app.Activity#onPause()
  */
 @Override
 @SuppressWarnings("deprecation")
 protected void onPause() {
   super.onPause();
   final PreferenceScreen preferenceScreen = getPreferenceScreen();
   final SharedPreferences sharedPreferences = preferenceScreen.getSharedPreferences();
   sharedPreferences.unregisterOnSharedPreferenceChangeListener(this);
 }
 /**
  * Iterate over every preference and bind the summary to it's value. This is the default behavior
  * for Activities and Fragments.
  *
  * @param screen The PreferenceScreen
  */
 public static void bindAllPreferenceSummariesToValues(PreferenceScreen screen) {
   Map<String, ?> allValues = screen.getSharedPreferences().getAll();
   for (int i = 0; i < screen.getPreferenceCount(); i++) {
     Preference preference = screen.getPreference(i);
     Object value = allValues.get(preference.getKey());
     bindPreferenceSummaryToValue(preference, value);
   }
 }
  private void buildAutodownloadSelectedNetworsPreference() {
    final Activity activity = ui.getActivity();

    if (selectedNetworks != null) {
      clearAutodownloadSelectedNetworsPreference();
    }
    // get configured networks
    WifiManager wifiservice = (WifiManager) activity.getSystemService(Context.WIFI_SERVICE);
    List<WifiConfiguration> networks = wifiservice.getConfiguredNetworks();

    if (networks != null) {
      selectedNetworks = new CheckBoxPreference[networks.size()];
      List<String> prefValues = Arrays.asList(UserPreferences.getAutodownloadSelectedNetworks());
      PreferenceScreen prefScreen =
          (PreferenceScreen) ui.findPreference(PreferenceController.AUTO_DL_PREF_SCREEN);
      Preference.OnPreferenceClickListener clickListener =
          preference -> {
            if (preference instanceof CheckBoxPreference) {
              String key = preference.getKey();
              List<String> prefValuesList =
                  new ArrayList<>(Arrays.asList(UserPreferences.getAutodownloadSelectedNetworks()));
              boolean newValue = ((CheckBoxPreference) preference).isChecked();
              Log.d(TAG, "Selected network " + key + ". New state: " + newValue);

              int index = prefValuesList.indexOf(key);
              if (index >= 0 && !newValue) {
                // remove network
                prefValuesList.remove(index);
              } else if (index < 0 && newValue) {
                prefValuesList.add(key);
              }

              UserPreferences.setAutodownloadSelectedNetworks(
                  prefValuesList.toArray(new String[prefValuesList.size()]));
              return true;
            } else {
              return false;
            }
          };
      // create preference for each known network. attach listener and set
      // value
      for (int i = 0; i < networks.size(); i++) {
        WifiConfiguration config = networks.get(i);

        CheckBoxPreference pref = new CheckBoxPreference(activity);
        String key = Integer.toString(config.networkId);
        pref.setTitle(config.SSID);
        pref.setKey(key);
        pref.setOnPreferenceClickListener(clickListener);
        pref.setPersistent(false);
        pref.setChecked(prefValues.contains(key));
        selectedNetworks[i] = pref;
        prefScreen.addPreference(pref);
      }
    } else {
      Log.e(TAG, "Couldn't get list of configure Wi-Fi networks");
    }
  }
  /**
   * Construct a prefence item corresponding to a single parser entry
   *
   * @param category root preference category
   * @param parent parent preference screen
   * @param multi true if we are setting up multiple location selection menu
   * @param locMgr location manager
   * @return constructed preference
   */
  private Preference buildLocationItem(
      ParserCategory category, PreferenceScreen parent, boolean multi, LocationManager locMgr) {

    // Current rules are that category must contain only  subcategory or only parser entries.  See
    // which this is
    String catName = category.getName();
    ParserEntry[] entries = category.getParserList();
    boolean subcat = false;
    boolean plist = false;
    for (ParserEntry entry : entries) {
      if (entry.isCategory()) subcat = true;
      else plist = true;
    }
    if (subcat && plist)
      throw new RuntimeException("Parser group " + catName + " mixes parser and category entries");
    if (!subcat && !plist) throw new RuntimeException("Parser group " + catName + " is empty");

    // If it only contains subcategories, build a new preference screen with them
    if (subcat) {
      PreferenceScreen sub = getPreferenceManager().createPreferenceScreen(this);
      sub.setTitle(catName);
      buildLocationMenu(category, sub, multi, locMgr);
      return sub;
    }

    // Otherwise we are handing a parser list
    // What we do next depends on whether this is a single or multiple selection menu

    // If we are doing multiple selections, create a new preference screen and fill it
    // a location checkbox for each parser entry
    if (multi) {
      PreferenceScreen sub = getPreferenceManager().createPreferenceScreen(this);
      sub.setTitle(catName);
      for (ParserEntry entry : entries) {
        sub.addPreference(
            new LocationCheckBoxPreference(
                this, entry.getParserName(), stripStateAbbrv(entry.getLocName()), locMgr));
      }
      return sub;
    }

    // If we are doing single location selections, build a list preference
    // that can select from any of the parsers in this category
    LocationListPreference list = new LocationListPreference(this, locMgr, parent);
    list.setTitle(catName);
    list.setDialogTitle(catName);

    String[] values = new String[entries.length];
    String[] names = new String[entries.length];
    for (int ndx = 0; ndx < entries.length; ndx++) {
      ParserEntry entry = entries[ndx];
      values[ndx] = entry.getParserName();
      names[ndx] = stripStateAbbrv(entry.getLocName());
    }
    list.setEntryValues(values);
    list.setEntries(names);
    return list;
  }
 private void hideGPSCategory() {
   PreferenceScreen preferenceScreen = getPreferenceScreen();
   PreferenceCategory preferenceCategory =
       (PreferenceCategory) findPreference(getResources().getString(R.string.pref_gps_category));
   if (preferenceCategory != null) {
     preferenceCategory.removeAll();
     preferenceScreen.removePreference((Preference) preferenceCategory);
   }
 }
 @Override
 protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   addPreferencesFromResource(R.xml.settings);
   PreferenceScreen preferenceScreen = getPreferenceScreen();
   listPreference = (ListPreference) preferenceScreen.findPreference(PREF_MODE);
   listPreference.setDefaultValue(getResources().getString(R.string.default_mode));
   listPreference.setOnPreferenceChangeListener(this);
 }
  private void updateHardKeyboards() {
    mHardKeyboardPreferenceList.clear();
    if (getResources().getConfiguration().keyboard == Configuration.KEYBOARD_QWERTY) {
      final int[] devices = InputDevice.getDeviceIds();
      for (int i = 0; i < devices.length; i++) {
        InputDevice device = InputDevice.getDevice(devices[i]);
        if (device != null && !device.isVirtual() && device.isFullKeyboard()) {
          final String inputDeviceDescriptor = device.getDescriptor();
          final String keyboardLayoutDescriptor =
              mIm.getCurrentKeyboardLayoutForInputDevice(inputDeviceDescriptor);
          final KeyboardLayout keyboardLayout =
              keyboardLayoutDescriptor != null
                  ? mIm.getKeyboardLayout(keyboardLayoutDescriptor)
                  : null;

          final PreferenceScreen pref = new PreferenceScreen(getActivity(), null);
          pref.setTitle(device.getName());
          if (keyboardLayout != null) {
            pref.setSummary(keyboardLayout.toString());
          } else {
            pref.setSummary(R.string.keyboard_layout_default_label);
          }
          pref.setOnPreferenceClickListener(
              new Preference.OnPreferenceClickListener() {
                @Override
                public boolean onPreferenceClick(Preference preference) {
                  showKeyboardLayoutDialog(inputDeviceDescriptor);
                  return true;
                }
              });
          mHardKeyboardPreferenceList.add(pref);
        }
      }
    }

    if (!mHardKeyboardPreferenceList.isEmpty()) {
      for (int i = mHardKeyboardCategory.getPreferenceCount(); i-- > 0; ) {
        final Preference pref = mHardKeyboardCategory.getPreference(i);
        if (pref.getOrder() < 1000) {
          mHardKeyboardCategory.removePreference(pref);
        }
      }

      Collections.sort(mHardKeyboardPreferenceList);
      final int count = mHardKeyboardPreferenceList.size();
      for (int i = 0; i < count; i++) {
        final Preference pref = mHardKeyboardPreferenceList.get(i);
        pref.setOrder(i);
        mHardKeyboardCategory.addPreference(pref);
      }

      getPreferenceScreen().addPreference(mHardKeyboardCategory);
    } else {
      getPreferenceScreen().removePreference(mHardKeyboardCategory);
    }
  }
 private void initSummary(Preference p) {
   if (p instanceof PreferenceScreen) {
     PreferenceScreen pScr = (PreferenceScreen) p;
     for (int i = 0; i < pScr.getPreferenceCount(); i++) {
       initSummary(pScr.getPreference(i));
     }
   } else {
     updatePrefSummary(p);
   }
 }
  protected void hardRefresh() {
    // This is the only way to guarantee that the EditText dialogs created by
    // EditTextPreferences are re-created. This works around the issue described
    // at http://androiddev.orkitra.com/?p=112079.
    final PreferenceScreen statusScreen = (PreferenceScreen) ensureFindPreference("status_screen");
    statusScreen.removeAll();
    addPreferences();

    refresh();
  }
  /**
   * Set summary of a list field If empty will display default summary If one item selected will
   * display item name
   *
   * @param fieldName the preference key name
   */
  public void setListFieldSummary(String fieldName) {
    PreferenceScreen pfs = getPreferenceScreen();
    ListPreference pref = (ListPreference) pfs.findPreference(fieldName);

    CharSequence val = pref.getEntry();
    if (TextUtils.isEmpty(val)) {
      val = getDefaultFieldSummary(fieldName);
    }
    setPreferenceSummary(pref, val);
  }
 @Override
 public void onSaveInstanceState(Bundle bundle) {
   super.onSaveInstanceState(bundle);
   PreferenceScreen screen = getPreferenceScreen();
   if (screen != null) {
     Bundle localBundle = new Bundle();
     screen.saveHierarchyState(localBundle);
     bundle.putBundle(PREFERENCES_TAG, localBundle);
   }
 }
 @Override
 protected void onResume() {
   super.onResume();
   mSim1Setting.setEnabled(PhoneFactory.isCardReady(0));
   mSim2Setting.setEnabled(PhoneFactory.isCardReady(1));
   mIpDailingOn.setChecked(mIpDailingUtils.getIsIpDial());
   mIpDailingPreference.setEnabled(mIpDailingOn.isChecked());
   mGsmButtonCallVibrate.setChecked(
       (defaultSharedpref == null ? true : defaultSharedpref.getBoolean(KEY_CALL_VIBRATE, true)));
 }
  private PreferenceScreen createPreferenceHierarchy() {
    // Root
    PreferenceScreen root = getPreferenceManager().createPreferenceScreen(this);

    root.setPersistent(true);

    CheckBoxPreference nextScreenCheckBoxPref = new CheckBoxPreference(this);
    nextScreenCheckBoxPref.setKey(BlackBoxPrefs.KEY_ENABLED);
    nextScreenCheckBoxPref.setTitle("enabled");
    nextScreenCheckBoxPref.setSummary("is BlackBox enabled?");
    root.addPreference(nextScreenCheckBoxPref);

    EditTextPreference sgf_fname_pref = new EditTextPreference(this);
    sgf_fname_pref.setTitle("Path");
    root.addPreference(sgf_fname_pref);

    sgf_fname_pref.setDialogTitle("Enter BlackBox Path");
    sgf_fname_pref.setDialogMessage("Please enter the BlackBox Path.");
    sgf_fname_pref.setKey(BlackBoxPrefs.KEY_PATH);
    sgf_fname_pref.setText(BlackBoxPrefs.getPath());
    sgf_fname_pref.setSummary(BlackBoxPrefs.getPath());

    PreferenceScreen intentPref = getPreferenceManager().createPreferenceScreen(this);
    Intent i = new Intent(this, BlackBoxWatchActivity.class);

    intentPref.setIntent(i);
    intentPref.setTitle("Watch BlackBox");
    intentPref.setSummary("check BlackBox status");
    root.addPreference(intentPref);

    return root;
  }
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    addPreferencesFromResource(R.xml.gesture_anywhere);

    mEnabledPref = (SwitchPreference) findPreference(KEY_ENABLED);
    mEnabledPref.setChecked(
        (Settings.System.getInt(getContentResolver(), Settings.System.GESTURE_ANYWHERE_ENABLED, 0)
            == 1));
    mEnabledPref.setOnPreferenceChangeListener(this);

    mGestureAnywhereFloatingWindow = (SwitchPreference) findPreference(GESTURE_ANYWHERE_FLOATING);
    mGestureAnywhereFloatingWindow.setChecked(
        Settings.System.getInt(getContentResolver(), Settings.System.GESTURE_ANYWHERE_FLOATING, 0)
            == 1);
    mGestureAnywhereFloatingWindow.setOnPreferenceChangeListener(this);

    PreferenceScreen prefSet = getPreferenceScreen();
    mPositionPref = (ListPreference) prefSet.findPreference(KEY_POSITION);
    mPositionPref.setOnPreferenceChangeListener(this);
    int position =
        Settings.System.getInt(
            getContentResolver(), Settings.System.GESTURE_ANYWHERE_POSITION, Gravity.LEFT);
    mPositionPref.setValue(String.valueOf(position));
    updatePositionSummary(position);

    mTriggerWidthPref = (SeekBarPreferenceCham) findPreference(KEY_TRIGGER_WIDTH);
    mTriggerWidthPref.setValue(
        Settings.System.getInt(
            getContentResolver(), Settings.System.GESTURE_ANYWHERE_TRIGGER_WIDTH, 10));
    mTriggerWidthPref.setOnPreferenceChangeListener(this);

    mTriggerTopPref = (SeekBarPreferenceCham) findPreference(KEY_TRIGGER_TOP);
    mTriggerTopPref.setValue(
        Settings.System.getInt(
            getContentResolver(), Settings.System.GESTURE_ANYWHERE_TRIGGER_TOP, 0));
    mTriggerTopPref.setOnPreferenceChangeListener(this);

    mTriggerBottomPref = (SeekBarPreferenceCham) findPreference(KEY_TRIGGER_BOTTOM);
    mTriggerBottomPref.setValue(
        Settings.System.getInt(
            getContentResolver(), Settings.System.GESTURE_ANYWHERE_TRIGGER_HEIGHT, 100));
    mTriggerBottomPref.setOnPreferenceChangeListener(this);

    Preference pref = findPreference(KEY_GESTURES);
    pref.setOnPreferenceClickListener(
        new Preference.OnPreferenceClickListener() {
          @Override
          public boolean onPreferenceClick(Preference preference) {
            startActivity(new Intent(getActivity(), GestureAnywhereBuilderActivity.class));
            return true;
          }
        });
  }
  @Override
  public void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);

    final PreferenceScreen preferenceScreen = getPreferenceScreen();
    if (preferenceScreen != null) {
      Bundle container = new Bundle();
      preferenceScreen.saveHierarchyState(container);
      outState.putBundle(PREFERENCES_TAG, container);
    }
  }