public void registerLikes(Context context, boolean initial) { if (!social.hasLikes()) return; NicedPreferences.NiceInfoPreference ip; NicedPreferences.NiceListPreference lp; if (initial) { ip = new NicedPreferences.NiceInfoPreference(context); ip.setTitle(R.string.pref_social_likes); ip.setSummary(likesSummary); ip.setEnabled(enabled); ip.setOrder(20000); preferences.add(ip); lp = new NicedPreferences.NiceListPreference(context); lp.setKey(keyprefix + ".newlikes.default"); lp.setTitle(R.string.pref_social_autolikes); lp.setEntryValues(R.array.pref_social_newlikes_keys); lp.setEntries(R.array.pref_social_newlikes_vals); lp.setDefaultValue("folder"); lp.setEnabled(enabled); lp.setOrder(20001); preferences.add(lp); } String likesname = keyprefix + ".like.name."; String likesmode = keyprefix + ".like.mode."; Map<String, Object> likespref = Simple.getAllPreferences(likesname); for (Map.Entry<String, ?> entry : likespref.entrySet()) { Object fnobj = entry.getValue(); if (!(fnobj instanceof String)) continue; String fpfid = entry.getKey().substring(likesname.length()); String fname = (String) fnobj; if (knownpfids.contains(fpfid)) continue; knownpfids.add(fpfid); lp = new NicedPreferences.NiceListPreference(context); lp.setKey(likesmode + fpfid); lp.setTitle(fname); lp.setIcon(social.getProfileDrawable(fpfid, true)); lp.setEntryValues(R.array.pref_social_newlikes_keys); lp.setEntries(R.array.pref_social_newlikes_vals); lp.setEnabled(enabled); final NicedPreferences.NiceListPreference lpfinal = lp; lp.setOnLongClick( new Runnable() { @Override public void run() { onLongClick(lpfinal); } }); // // Updated items get first. // lp.setOrder(29999 - preferences.size()); preferences.add(lp); if (!initial) getPreferenceScreen().addPreference(lp); } }