Reorganized some settings. Fix last tab.
This commit is contained in:
parent
a892ffb75f
commit
1c57bbf618
8 changed files with 40 additions and 62 deletions
|
|
@ -151,7 +151,7 @@ public class SettingsActivity extends AbsBaseActivity implements ColorChooserDia
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreatePreferences(Bundle bundle, String s) {
|
public void onCreatePreferences(Bundle bundle, String s) {
|
||||||
addPreferencesFromResource(R.xml.pref_general);
|
addPreferencesFromResource(R.xml.pref_library);
|
||||||
addPreferencesFromResource(R.xml.pref_colors);
|
addPreferencesFromResource(R.xml.pref_colors);
|
||||||
addPreferencesFromResource(R.xml.pref_notification);
|
addPreferencesFromResource(R.xml.pref_notification);
|
||||||
addPreferencesFromResource(R.xml.pref_now_playing_screen);
|
addPreferencesFromResource(R.xml.pref_now_playing_screen);
|
||||||
|
|
@ -190,13 +190,6 @@ public class SettingsActivity extends AbsBaseActivity implements ColorChooserDia
|
||||||
}
|
}
|
||||||
|
|
||||||
private void invalidateSettings() {
|
private void invalidateSettings() {
|
||||||
final Preference defaultStartPage = findPreference("default_start_page");
|
|
||||||
setSummary(defaultStartPage);
|
|
||||||
defaultStartPage.setOnPreferenceChangeListener((preference, o) -> {
|
|
||||||
setSummary(defaultStartPage, o);
|
|
||||||
return true;
|
|
||||||
});
|
|
||||||
|
|
||||||
final Preference generalTheme = findPreference("general_theme");
|
final Preference generalTheme = findPreference("general_theme");
|
||||||
setSummary(generalTheme);
|
setSummary(generalTheme);
|
||||||
generalTheme.setOnPreferenceChangeListener((preference, o) -> {
|
generalTheme.setOnPreferenceChangeListener((preference, o) -> {
|
||||||
|
|
|
||||||
|
|
@ -101,7 +101,9 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
|
||||||
pagerAdapter.setCategoryInfos(PreferenceUtil.getInstance(getActivity()).getLibraryCategoryInfos());
|
pagerAdapter.setCategoryInfos(PreferenceUtil.getInstance(getActivity()).getLibraryCategoryInfos());
|
||||||
pager.setOffscreenPageLimit(pagerAdapter.getCount() - 1);
|
pager.setOffscreenPageLimit(pagerAdapter.getCount() - 1);
|
||||||
int position = pagerAdapter.getItemPosition(current);
|
int position = pagerAdapter.getItemPosition(current);
|
||||||
pager.setCurrentItem(position > -1 ? position : 0);
|
if (position < 0) position = 0;
|
||||||
|
pager.setCurrentItem(position);
|
||||||
|
PreferenceUtil.getInstance(getContext()).setLastPage(position);
|
||||||
|
|
||||||
// hide the tab bar with single tab
|
// hide the tab bar with single tab
|
||||||
tabs.setVisibility(pagerAdapter.getCount() == 1 ? View.GONE : View.VISIBLE);
|
tabs.setVisibility(pagerAdapter.getCount() == 1 ? View.GONE : View.VISIBLE);
|
||||||
|
|
@ -131,10 +133,9 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
|
||||||
tabs.setTabTextColors(normalColor, selectedColor);
|
tabs.setTabTextColors(normalColor, selectedColor);
|
||||||
tabs.setSelectedTabIndicatorColor(ThemeStore.accentColor(getActivity()));
|
tabs.setSelectedTabIndicatorColor(ThemeStore.accentColor(getActivity()));
|
||||||
|
|
||||||
int startPosition = PreferenceUtil.getInstance(getActivity()).getDefaultStartPage();
|
if (PreferenceUtil.getInstance(getContext()).rememberLastTab()) {
|
||||||
startPosition = startPosition == -1 ? PreferenceUtil.getInstance(getActivity()).getLastPage() : startPosition;
|
pager.setCurrentItem(PreferenceUtil.getInstance(getContext()).getLastPage());
|
||||||
pager.setCurrentItem(startPosition);
|
}
|
||||||
PreferenceUtil.getInstance(getActivity()).setLastPage(startPosition); // just in case
|
|
||||||
pager.addOnPageChangeListener(this);
|
pager.addOnPageChangeListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ import java.util.ArrayList;
|
||||||
|
|
||||||
public final class PreferenceUtil {
|
public final class PreferenceUtil {
|
||||||
public static final String GENERAL_THEME = "general_theme";
|
public static final String GENERAL_THEME = "general_theme";
|
||||||
public static final String DEFAULT_START_PAGE = "default_start_page";
|
public static final String REMEMBER_LAST_TAB = "remember_last_tab";
|
||||||
public static final String LAST_PAGE = "last_start_page";
|
public static final String LAST_PAGE = "last_start_page";
|
||||||
public static final String LAST_MUSIC_CHOOSER = "last_music_chooser";
|
public static final String LAST_MUSIC_CHOOSER = "last_music_chooser";
|
||||||
public static final String NOW_PLAYING_SCREEN_ID = "now_playing_screen_id";
|
public static final String NOW_PLAYING_SCREEN_ID = "now_playing_screen_id";
|
||||||
|
|
@ -122,8 +122,8 @@ public final class PreferenceUtil {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public final int getDefaultStartPage() {
|
public final boolean rememberLastTab() {
|
||||||
return Integer.parseInt(mPreferences.getString(DEFAULT_START_PAGE, "-1"));
|
return mPreferences.getBoolean(REMEMBER_LAST_TAB, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setLastPage(final int value) {
|
public void setLastPage(final int value) {
|
||||||
|
|
|
||||||
|
|
@ -116,7 +116,7 @@
|
||||||
<string name="pref_header_now_playing_screen">Now playing</string>
|
<string name="pref_header_now_playing_screen">Now playing</string>
|
||||||
<string name="pref_title_general_theme">General theme</string>
|
<string name="pref_title_general_theme">General theme</string>
|
||||||
<string name="pref_header_audio">Audio</string>
|
<string name="pref_header_audio">Audio</string>
|
||||||
<string name="pref_header_general">General</string>
|
<string name="pref_header_library">Library</string>
|
||||||
<string name="pref_header_images">Images</string>
|
<string name="pref_header_images">Images</string>
|
||||||
<string name="pref_header_lockscreen">Lockscreen</string>
|
<string name="pref_header_lockscreen">Lockscreen</string>
|
||||||
<string name="pref_header_playlists">Playlists</string>
|
<string name="pref_header_playlists">Playlists</string>
|
||||||
|
|
@ -134,6 +134,7 @@
|
||||||
<string name="pref_title_audio_ducking">Reduce volume on focus loss</string>
|
<string name="pref_title_audio_ducking">Reduce volume on focus loss</string>
|
||||||
<string name="pref_title_last_added_interval">Last added playlist interval</string>
|
<string name="pref_title_last_added_interval">Last added playlist interval</string>
|
||||||
<string name="pref_title_synchronized_lyrics_show">Show synchronized lyrics</string>
|
<string name="pref_title_synchronized_lyrics_show">Show synchronized lyrics</string>
|
||||||
|
<string name="pref_title_remember_last_tab">Remember last tab</string>
|
||||||
<string name="no_equalizer">No equalizer found.</string>
|
<string name="no_equalizer">No equalizer found.</string>
|
||||||
<string name="no_audio_ID">"Play a song first, then try again."</string>
|
<string name="no_audio_ID">"Play a song first, then try again."</string>
|
||||||
<string name="delete_action">Delete</string>
|
<string name="delete_action">Delete</string>
|
||||||
|
|
@ -167,6 +168,7 @@
|
||||||
<string name="pref_summary_colored_app_shortcuts">Colors the app shortcuts in the primary color.</string>
|
<string name="pref_summary_colored_app_shortcuts">Colors the app shortcuts in the primary color.</string>
|
||||||
<string name="pref_summary_audio_ducking">Notifications, navigation etc.</string>
|
<string name="pref_summary_audio_ducking">Notifications, navigation etc.</string>
|
||||||
<string name="pref_summary_synchronized_lyrics_show">Currently only synchronized lyrics in LRC format are supported. Either embedded or as a separate file.</string>
|
<string name="pref_summary_synchronized_lyrics_show">Currently only synchronized lyrics in LRC format are supported. Either embedded or as a separate file.</string>
|
||||||
|
<string name="pref_summary_remember_last_tab">Go to the last opened tab on launch</string>
|
||||||
<string name="could_not_download_album_cover">"Couldn\u2019t download a matching album cover."</string>
|
<string name="could_not_download_album_cover">"Couldn\u2019t download a matching album cover."</string>
|
||||||
<string name="search_hint">Search your library…</string>
|
<string name="search_hint">Search your library…</string>
|
||||||
<string name="favorites">Favorites</string>
|
<string name="favorites">Favorites</string>
|
||||||
|
|
|
||||||
|
|
@ -1,19 +1,4 @@
|
||||||
<resources>
|
<resources>
|
||||||
<string-array name="pref_start_page_list_titles">
|
|
||||||
<item>@string/last_opened</item>
|
|
||||||
<item>@string/songs</item>
|
|
||||||
<item>@string/albums</item>
|
|
||||||
<item>@string/artists</item>
|
|
||||||
<item>@string/playlists</item>
|
|
||||||
</string-array>
|
|
||||||
|
|
||||||
<string-array name="pref_start_page_list_values">
|
|
||||||
<item>-1</item>
|
|
||||||
<item>0</item>
|
|
||||||
<item>1</item>
|
|
||||||
<item>2</item>
|
|
||||||
<item>3</item>
|
|
||||||
</string-array>
|
|
||||||
|
|
||||||
<string-array name="pref_general_theme_list_titles">
|
<string-array name="pref_general_theme_list_titles">
|
||||||
<item>@string/light_theme_name</item>
|
<item>@string/light_theme_name</item>
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,15 @@
|
||||||
|
|
||||||
<com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory android:title="@string/pref_header_colors">
|
<com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory android:title="@string/pref_header_colors">
|
||||||
|
|
||||||
|
<com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEListPreference
|
||||||
|
android:defaultValue="light"
|
||||||
|
android:entries="@array/pref_general_theme_list_titles"
|
||||||
|
android:entryValues="@array/pref_general_theme_list_values"
|
||||||
|
android:key="general_theme"
|
||||||
|
android:negativeButtonText="@null"
|
||||||
|
android:positiveButtonText="@null"
|
||||||
|
android:title="@string/pref_title_general_theme" />
|
||||||
|
|
||||||
<com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEColorPreference
|
<com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEColorPreference
|
||||||
android:key="primary_color"
|
android:key="primary_color"
|
||||||
android:persistent="false"
|
android:persistent="false"
|
||||||
|
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
<android.support.v7.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
|
||||||
|
|
||||||
<com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory android:title="@string/pref_header_general">
|
|
||||||
|
|
||||||
<com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEListPreference
|
|
||||||
android:defaultValue="-1"
|
|
||||||
android:entries="@array/pref_start_page_list_titles"
|
|
||||||
android:entryValues="@array/pref_start_page_list_values"
|
|
||||||
android:key="default_start_page"
|
|
||||||
android:negativeButtonText="@null"
|
|
||||||
android:positiveButtonText="@null"
|
|
||||||
android:title="@string/pref_title_set_default_start_page" />
|
|
||||||
|
|
||||||
<com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEListPreference
|
|
||||||
android:defaultValue="light"
|
|
||||||
android:entries="@array/pref_general_theme_list_titles"
|
|
||||||
android:entryValues="@array/pref_general_theme_list_values"
|
|
||||||
android:key="general_theme"
|
|
||||||
android:negativeButtonText="@null"
|
|
||||||
android:positiveButtonText="@null"
|
|
||||||
android:title="@string/pref_title_general_theme" />
|
|
||||||
|
|
||||||
<com.kabouzeid.gramophone.preferences.LibraryPreference
|
|
||||||
android:key="library_categories"
|
|
||||||
android:summary="@string/pref_summary_library_categories"
|
|
||||||
android:title="@string/library_categories" />
|
|
||||||
|
|
||||||
</com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory>
|
|
||||||
|
|
||||||
</android.support.v7.preference.PreferenceScreen>
|
|
||||||
18
app/src/main/res/xml/pref_library.xml
Normal file
18
app/src/main/res/xml/pref_library.xml
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
<android.support.v7.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
|
||||||
|
<com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory android:title="@string/pref_header_library">
|
||||||
|
|
||||||
|
<com.kabouzeid.gramophone.preferences.LibraryPreference
|
||||||
|
android:key="library_categories"
|
||||||
|
android:summary="@string/pref_summary_library_categories"
|
||||||
|
android:title="@string/library_categories" />
|
||||||
|
|
||||||
|
<com.kabouzeid.appthemehelper.common.prefs.supportv7.ATESwitchPreference
|
||||||
|
android:defaultValue="true"
|
||||||
|
android:key="remember_last_tab"
|
||||||
|
android:summary="@string/pref_summary_remember_last_tab"
|
||||||
|
android:title="@string/pref_title_remember_last_tab" />
|
||||||
|
|
||||||
|
</com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEPreferenceCategory>
|
||||||
|
|
||||||
|
</android.support.v7.preference.PreferenceScreen>
|
||||||
Loading…
Add table
Add a link
Reference in a new issue