Moved Flattr/gpodder to their own files
This commit is contained in:
parent
686801fea2
commit
c3510d821d
@ -145,7 +145,7 @@ public class PreferenceActivity extends AppCompatActivity {
|
||||
@Override
|
||||
public void onPause() {
|
||||
PreferenceActivity activity = instance.get();
|
||||
if (screen == R.xml.preferences_integrations) {
|
||||
if (screen == R.xml.preferences_gpodder) {
|
||||
activity.preferenceController.unregisterGpodnet();
|
||||
}
|
||||
super.onPause();
|
||||
|
@ -94,8 +94,9 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
|
||||
private static final String PREF_SCREEN_INTEGRATIONS = "prefScreenIntegrations";
|
||||
private static final String PREF_SCREEN_STORAGE = "prefScreenStorage";
|
||||
private static final String PREF_SCREEN_AUTODL = "prefAutoDownloadSettings";
|
||||
private static final String PREF_SCREEN_FLATTR = "prefFlattrSettings";
|
||||
private static final String PREF_SCREEN_GPODDER = "prefGpodderSettings";
|
||||
|
||||
private static final String PREF_FLATTR_SETTINGS = "prefFlattrSettings";
|
||||
private static final String PREF_FLATTR_AUTH = "pref_flattr_authenticate";
|
||||
private static final String PREF_FLATTR_REVOKE = "prefRevokeAccess";
|
||||
private static final String PREF_AUTO_FLATTR_PREFS = "prefAutoFlattrPrefs";
|
||||
@ -176,6 +177,12 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
|
||||
case R.xml.preferences_integrations:
|
||||
setupIntegrationsScreen();
|
||||
break;
|
||||
case R.xml.preferences_flattr:
|
||||
setupFlattrScreen();
|
||||
break;
|
||||
case R.xml.preferences_gpodder:
|
||||
setupGpodderScreen();
|
||||
break;
|
||||
case R.xml.preferences_storage:
|
||||
setupStorageScreen();
|
||||
break;
|
||||
@ -295,7 +302,20 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
|
||||
}
|
||||
|
||||
private void setupIntegrationsScreen() {
|
||||
final Activity activity = ui.getActivity();
|
||||
final AppCompatActivity activity = ui.getActivity();
|
||||
|
||||
ui.findPreference(PREF_SCREEN_FLATTR).setOnPreferenceClickListener(preference -> {
|
||||
openScreen(R.xml.preferences_flattr, activity);
|
||||
return true;
|
||||
});
|
||||
ui.findPreference(PREF_SCREEN_GPODDER).setOnPreferenceClickListener(preference -> {
|
||||
openScreen(R.xml.preferences_gpodder, activity);
|
||||
return true;
|
||||
});
|
||||
}
|
||||
|
||||
private void setupFlattrScreen() {
|
||||
final AppCompatActivity activity = ui.getActivity();
|
||||
|
||||
ui.findPreference(PreferenceController.PREF_FLATTR_REVOKE).setOnPreferenceClickListener(
|
||||
preference -> {
|
||||
@ -304,6 +324,29 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
|
||||
return true;
|
||||
}
|
||||
);
|
||||
|
||||
ui.findPreference(PreferenceController.PREF_AUTO_FLATTR_PREFS)
|
||||
.setOnPreferenceClickListener(preference -> {
|
||||
AutoFlattrPreferenceDialog.newAutoFlattrPreferenceDialog(activity,
|
||||
new AutoFlattrPreferenceDialog.AutoFlattrPreferenceDialogInterface() {
|
||||
@Override
|
||||
public void onCancelled() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onConfirmed(boolean autoFlattrEnabled, float autoFlattrValue) {
|
||||
UserPreferences.setAutoFlattrSettings(autoFlattrEnabled, autoFlattrValue);
|
||||
checkFlattrItemVisibility();
|
||||
}
|
||||
});
|
||||
return true;
|
||||
});
|
||||
}
|
||||
|
||||
private void setupGpodderScreen() {
|
||||
final AppCompatActivity activity = ui.getActivity();
|
||||
|
||||
ui.findPreference(PreferenceController.PREF_GPODNET_SETLOGIN_INFORMATION)
|
||||
.setOnPreferenceClickListener(preference -> {
|
||||
AuthenticationDialog dialog = new AuthenticationDialog(activity,
|
||||
@ -351,24 +394,6 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
|
||||
GpodnetSetHostnameDialog.createDialog(activity).setOnDismissListener(dialog -> updateGpodnetPreferenceScreen());
|
||||
return true;
|
||||
});
|
||||
|
||||
ui.findPreference(PreferenceController.PREF_AUTO_FLATTR_PREFS)
|
||||
.setOnPreferenceClickListener(preference -> {
|
||||
AutoFlattrPreferenceDialog.newAutoFlattrPreferenceDialog(activity,
|
||||
new AutoFlattrPreferenceDialog.AutoFlattrPreferenceDialogInterface() {
|
||||
@Override
|
||||
public void onCancelled() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onConfirmed(boolean autoFlattrEnabled, float autoFlattrValue) {
|
||||
UserPreferences.setAutoFlattrSettings(autoFlattrEnabled, autoFlattrValue);
|
||||
checkFlattrItemVisibility();
|
||||
}
|
||||
});
|
||||
return true;
|
||||
});
|
||||
}
|
||||
|
||||
private void setupPlaybackScreen() {
|
||||
@ -555,6 +580,10 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
|
||||
return R.string.user_interface_label;
|
||||
case R.xml.preferences_integrations:
|
||||
return R.string.integrations_label;
|
||||
case R.xml.preferences_flattr:
|
||||
return R.string.flattr_label;
|
||||
case R.xml.preferences_gpodder:
|
||||
return R.string.gpodnet_main_label;
|
||||
default:
|
||||
return R.string.settings_label;
|
||||
}
|
||||
@ -627,9 +656,14 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
|
||||
setDataFolderText();
|
||||
break;
|
||||
case R.xml.preferences_integrations:
|
||||
setIntegrationsItemVisibility();
|
||||
return;
|
||||
case R.xml.preferences_flattr:
|
||||
checkFlattrItemVisibility();
|
||||
break;
|
||||
case R.xml.preferences_gpodder:
|
||||
GpodnetPreferences.registerOnSharedPreferenceChangeListener(gpoddernetListener);
|
||||
updateGpodnetPreferenceScreen();
|
||||
checkFlattrItemVisibility();
|
||||
break;
|
||||
case R.xml.preferences_playback:
|
||||
checkSonicItemVisibility();
|
||||
@ -796,10 +830,13 @@ public class PreferenceController implements SharedPreferences.OnSharedPreferenc
|
||||
}
|
||||
}
|
||||
|
||||
private void setIntegrationsItemVisibility() {
|
||||
ui.findPreference(PreferenceController.PREF_SCREEN_FLATTR).setEnabled(FlattrUtils.hasAPICredentials());
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
private void checkFlattrItemVisibility() {
|
||||
boolean hasFlattrToken = FlattrUtils.hasToken();
|
||||
ui.findPreference(PreferenceController.PREF_FLATTR_SETTINGS).setEnabled(FlattrUtils.hasAPICredentials());
|
||||
ui.findPreference(PreferenceController.PREF_FLATTR_AUTH).setEnabled(!hasFlattrToken);
|
||||
ui.findPreference(PreferenceController.PREF_FLATTR_REVOKE).setEnabled(hasFlattrToken);
|
||||
ui.findPreference(PreferenceController.PREF_AUTO_FLATTR_PREFS).setEnabled(hasFlattrToken);
|
||||
|
21
app/src/main/res/xml/preferences_flattr.xml
Normal file
21
app/src/main/res/xml/preferences_flattr.xml
Normal file
@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<PreferenceScreen
|
||||
android:key="pref_flattr_authenticate"
|
||||
android:summary="@string/pref_flattr_auth_sum"
|
||||
android:title="@string/pref_flattr_auth_title">
|
||||
<intent android:action=".activities.FlattrAuthActivity"/>
|
||||
</PreferenceScreen>
|
||||
|
||||
<Preference
|
||||
android:key="prefAutoFlattrPrefs"
|
||||
android:summary="@string/pref_auto_flattr_sum"
|
||||
android:title="@string/pref_auto_flattr_title"/>
|
||||
<Preference
|
||||
android:key="prefRevokeAccess"
|
||||
android:summary="@string/pref_revokeAccess_sum"
|
||||
android:title="@string/pref_revokeAccess_title"/>
|
||||
|
||||
</PreferenceScreen>
|
35
app/src/main/res/xml/preferences_gpodder.xml
Normal file
35
app/src/main/res/xml/preferences_gpodder.xml
Normal file
@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<PreferenceScreen
|
||||
android:key="pref_gpodnet_authenticate"
|
||||
android:title="@string/pref_gpodnet_authenticate_title"
|
||||
android:summary="@string/pref_gpodnet_authenticate_sum">
|
||||
<intent android:action=".activity.gpoddernet.GpodnetAuthenticationActivity"/>
|
||||
</PreferenceScreen>
|
||||
<Preference
|
||||
android:key="pref_gpodnet_setlogin_information"
|
||||
android:title="@string/pref_gpodnet_setlogin_information_title"
|
||||
android:summary="@string/pref_gpodnet_setlogin_information_sum"/>
|
||||
<Preference
|
||||
android:key="pref_gpodnet_sync"
|
||||
android:title="@string/pref_gpodnet_sync_changes_title"
|
||||
android:summary="@string/pref_gpodnet_sync_changes_sum"/>
|
||||
<Preference
|
||||
android:key="pref_gpodnet_force_full_sync"
|
||||
android:title="@string/pref_gpodnet_full_sync_title"
|
||||
android:summary="@string/pref_gpodnet_full_sync_sum"/>
|
||||
<Preference
|
||||
android:key="pref_gpodnet_logout"
|
||||
android:title="@string/pref_gpodnet_logout_title"/>
|
||||
<Preference
|
||||
android:key="pref_gpodnet_hostname"
|
||||
android:title="@string/pref_gpodnet_sethostname_title"/>
|
||||
<SwitchPreference
|
||||
android:key="pref_gpodnet_notifications"
|
||||
android:title="@string/pref_gpodnet_notifications_title"
|
||||
android:summary="@string/pref_gpodnet_notifications_sum"
|
||||
android:defaultValue="true"/>
|
||||
|
||||
</PreferenceScreen>
|
@ -3,61 +3,14 @@
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<PreferenceScreen
|
||||
<Preference
|
||||
android:key="prefFlattrSettings"
|
||||
android:title="@string/flattr_label"
|
||||
android:summary="@string/flattr_summary">
|
||||
<PreferenceScreen
|
||||
android:key="pref_flattr_authenticate"
|
||||
android:summary="@string/pref_flattr_auth_sum"
|
||||
android:title="@string/pref_flattr_auth_title">
|
||||
<intent android:action=".activities.FlattrAuthActivity"/>
|
||||
</PreferenceScreen>
|
||||
android:summary="@string/flattr_summary" />
|
||||
|
||||
<Preference
|
||||
android:key="prefAutoFlattrPrefs"
|
||||
android:summary="@string/pref_auto_flattr_sum"
|
||||
android:title="@string/pref_auto_flattr_title"/>
|
||||
<Preference
|
||||
android:key="prefRevokeAccess"
|
||||
android:summary="@string/pref_revokeAccess_sum"
|
||||
android:title="@string/pref_revokeAccess_title"/>
|
||||
</PreferenceScreen>
|
||||
|
||||
<PreferenceScreen
|
||||
<Preference
|
||||
android:key="prefGpodderSettings"
|
||||
android:title="@string/gpodnet_main_label"
|
||||
android:summary="@string/gpodnet_summary">
|
||||
|
||||
<PreferenceScreen
|
||||
android:key="pref_gpodnet_authenticate"
|
||||
android:title="@string/pref_gpodnet_authenticate_title"
|
||||
android:summary="@string/pref_gpodnet_authenticate_sum">
|
||||
<intent android:action=".activity.gpoddernet.GpodnetAuthenticationActivity"/>
|
||||
</PreferenceScreen>
|
||||
<Preference
|
||||
android:key="pref_gpodnet_setlogin_information"
|
||||
android:title="@string/pref_gpodnet_setlogin_information_title"
|
||||
android:summary="@string/pref_gpodnet_setlogin_information_sum"/>
|
||||
<Preference
|
||||
android:key="pref_gpodnet_sync"
|
||||
android:title="@string/pref_gpodnet_sync_changes_title"
|
||||
android:summary="@string/pref_gpodnet_sync_changes_sum"/>
|
||||
<Preference
|
||||
android:key="pref_gpodnet_force_full_sync"
|
||||
android:title="@string/pref_gpodnet_full_sync_title"
|
||||
android:summary="@string/pref_gpodnet_full_sync_sum"/>
|
||||
<Preference
|
||||
android:key="pref_gpodnet_logout"
|
||||
android:title="@string/pref_gpodnet_logout_title"/>
|
||||
<Preference
|
||||
android:key="pref_gpodnet_hostname"
|
||||
android:title="@string/pref_gpodnet_sethostname_title"/>
|
||||
<SwitchPreference
|
||||
android:key="pref_gpodnet_notifications"
|
||||
android:title="@string/pref_gpodnet_notifications_title"
|
||||
android:summary="@string/pref_gpodnet_notifications_sum"
|
||||
android:defaultValue="true"/>
|
||||
</PreferenceScreen>
|
||||
android:summary="@string/gpodnet_summary" />
|
||||
|
||||
</PreferenceScreen>
|
||||
|
Loading…
x
Reference in New Issue
Block a user