/** Shows preferences. */ public void showPreferences() { if (preferencesMap != null) { view.show(); return; } preferencesMap = new HashMap<>(); for (PreferencePagePresenter preference : preferences) { Set<PreferencePagePresenter> prefsList = preferencesMap.get(preference.getCategory()); if (prefsList == null) { prefsList = new HashSet<PreferencePagePresenter>(); preferencesMap.put(preference.getCategory(), prefsList); } prefsList.add(preference); } view.setPreferences(preferencesMap); view.show(); view.enableSaveButton(false); view.selectPreference(preferencesMap.entrySet().iterator().next().getValue().iterator().next()); }