package org.ebookdroid.ui.settings;
import org.sufficientlysecure.viewer.R;
import org.ebookdroid.common.settings.AppSettings;
import org.ebookdroid.common.settings.SettingsManager;
import org.ebookdroid.common.settings.books.BookSettings;
import android.content.SharedPreferences;
import android.net.Uri;
import android.os.Bundle;
import android.preference.PreferenceManager;
import org.emdev.common.filesystem.PathFromUri;
public class BookSettingsActivity extends BaseSettingsActivity {
private BookSettings current;
@SuppressWarnings("deprecation")
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final Uri uri = getIntent().getData();
final String fileName = PathFromUri.retrieve(getContentResolver(), uri);
current = SettingsManager.getBookSettings(fileName);
if (current == null) {
finish();
return;
}
setRequestedOrientation(current.getOrientation(AppSettings.current()));
SettingsManager.onBookSettingsActivityCreated(current);
try {
addPreferencesFromResource(R.xml.fragment_book);
} catch (final ClassCastException e) {
LCTX.e("Book preferences are corrupt! Resetting to default values.");
final SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
final SharedPreferences.Editor editor = preferences.edit();
editor.clear();
editor.commit();
PreferenceManager.setDefaultValues(this, R.xml.fragment_book, true);
addPreferencesFromResource(R.xml.fragment_book);
}
decorator.decoratePreference(getRoot());
decorator.decorateBooksSettings(current);
}
@Override
protected void onPause() {
SettingsManager.onBookSettingsActivityClosed(current);
super.onPause();
}
}