package com.dwdesign.tweetings.activity; import com.dwdesign.tweetings.Constants; import com.dwdesign.tweetings.R; import com.dwdesign.tweetings.util.OnBackPressedAccessor; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; import android.os.Build; import android.os.Bundle; import android.preference.PreferenceActivity; import android.view.KeyEvent; public class InternalSettingsDetailsActivity extends PreferenceActivity implements Constants { @SuppressWarnings("deprecation") @Override public void onCreate(final Bundle savedInstanceState) { setTheme(); super.onCreate(savedInstanceState); getPreferenceManager().setSharedPreferencesName(SHARED_PREFERENCES_NAME); final Bundle args = getIntent().getExtras(); if (args != null) { if (args.containsKey(INTENT_KEY_RESID)) { addPreferencesFromResource(args.getInt(INTENT_KEY_RESID)); } } } @Override public boolean onKeyUp(final int keyCode, final KeyEvent event) { switch (keyCode) { case KeyEvent.KEYCODE_BACK: { final Activity activity = getParent(); if (activity instanceof SettingsActivity && Build.VERSION.SDK_INT >= Build.VERSION_CODES.ECLAIR) { OnBackPressedAccessor.onBackPressed(activity); return true; } break; } } return super.onKeyUp(keyCode, event); } public void setTheme() { final SharedPreferences preferences = getSharedPreferences(SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE); final boolean is_dark_theme = preferences.getBoolean(PREFERENCE_KEY_DARK_THEME, true); final boolean solid_color_background = preferences.getBoolean(PREFERENCE_KEY_SOLID_COLOR_BACKGROUND, false); setTheme(is_dark_theme ? R.style.Theme_Twidere : R.style.Theme_Twidere_Light); if (solid_color_background) { getWindow().setBackgroundDrawableResource(is_dark_theme ? android.R.color.black : android.R.color.white); } } }