SettingsActivity.java revision 76cffec78834a2db525608587eae1a5a7ef998dd
1c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka/* 2c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka * Copyright (C) 2012 The Android Open Source Project 3c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka * 48aa9963a895f9dd5bb1bc92ab2e4f461e058f87aTadashi G. Takaoka * Licensed under the Apache License, Version 2.0 (the "License"); 58aa9963a895f9dd5bb1bc92ab2e4f461e058f87aTadashi G. Takaoka * you may not use this file except in compliance with the License. 68aa9963a895f9dd5bb1bc92ab2e4f461e058f87aTadashi G. Takaoka * You may obtain a copy of the License at 7c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka * 88aa9963a895f9dd5bb1bc92ab2e4f461e058f87aTadashi G. Takaoka * http://www.apache.org/licenses/LICENSE-2.0 9c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka * 10c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka * Unless required by applicable law or agreed to in writing, software 118aa9963a895f9dd5bb1bc92ab2e4f461e058f87aTadashi G. Takaoka * distributed under the License is distributed on an "AS IS" BASIS, 128aa9963a895f9dd5bb1bc92ab2e4f461e058f87aTadashi G. Takaoka * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 138aa9963a895f9dd5bb1bc92ab2e4f461e058f87aTadashi G. Takaoka * See the License for the specific language governing permissions and 148aa9963a895f9dd5bb1bc92ab2e4f461e058f87aTadashi G. Takaoka * limitations under the License. 15c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka */ 16c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka 17a7d2fc6befa1b16883200a653fc01deb4d94944dKen Wakasapackage com.android.inputmethod.latin.settings; 18c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka 1964f64bdf58ebcfb412c810646eb12e22b586aa87Satoshi Kataokaimport com.android.inputmethod.latin.utils.FragmentUtils; 2064f64bdf58ebcfb412c810646eb12e22b586aa87Satoshi Kataoka 2176cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaokaimport android.app.ActionBar; 22c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaokaimport android.content.Intent; 2376cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaokaimport android.os.Bundle; 24c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaokaimport android.preference.PreferenceActivity; 2576cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaokaimport android.view.MenuItem; 26c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka 27a28a05e971cc242b338331a3b78276fa95188d19Tadashi G. Takaokapublic final class SettingsActivity extends PreferenceActivity { 2876cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka public static final String EXTRA_SHOW_HOME_AS_UP = "show_home_as_up"; 29cbee8a33d58f438b1e616947df282944c0046498Tadashi G. Takaoka private static final String DEFAULT_FRAGMENT = SettingsFragment.class.getName(); 3076cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka private boolean mShowHomeAsUp; 3176cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka 3276cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka @Override 3376cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka protected void onCreate(final Bundle savedState) { 3476cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka super.onCreate(savedState); 3576cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka final ActionBar actionBar = getActionBar(); 3676cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka if (actionBar != null) { 3776cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka mShowHomeAsUp = getIntent().getBooleanExtra(EXTRA_SHOW_HOME_AS_UP, true); 3876cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka actionBar.setDisplayHomeAsUpEnabled(mShowHomeAsUp); 3976cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka actionBar.setHomeButtonEnabled(mShowHomeAsUp); 4076cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka } 4176cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka } 4276cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka 4376cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka @Override 4476cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka public boolean onOptionsItemSelected(final MenuItem item) { 4576cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka if (mShowHomeAsUp && item.getItemId() == android.R.id.home) { 4676cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka finish(); 4776cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka return true; 4876cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka } 4976cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka return super.onOptionsItemSelected(item); 5076cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka } 51c27fe6253c1d8b3ad3c2f891a48ec5c54d77a3f1Tadashi G. Takaoka 52c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka @Override 53c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka public Intent getIntent() { 54c27fe6253c1d8b3ad3c2f891a48ec5c54d77a3f1Tadashi G. Takaoka final Intent intent = super.getIntent(); 55262d5bd9f964d7fb18d96ec2ccf821b042aa3a3aTadashi G. Takaoka final String fragment = intent.getStringExtra(EXTRA_SHOW_FRAGMENT); 56262d5bd9f964d7fb18d96ec2ccf821b042aa3a3aTadashi G. Takaoka if (fragment == null) { 57262d5bd9f964d7fb18d96ec2ccf821b042aa3a3aTadashi G. Takaoka intent.putExtra(EXTRA_SHOW_FRAGMENT, DEFAULT_FRAGMENT); 58262d5bd9f964d7fb18d96ec2ccf821b042aa3a3aTadashi G. Takaoka } 59c27fe6253c1d8b3ad3c2f891a48ec5c54d77a3f1Tadashi G. Takaoka intent.putExtra(EXTRA_NO_HEADERS, true); 60c27fe6253c1d8b3ad3c2f891a48ec5c54d77a3f1Tadashi G. Takaoka return intent; 61c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka } 62c5182c9a4ae66e75df8c959bf625d08ef99f81d2Satoshi Kataoka 63bfcd98edc7c5ac28fdc1e4b7a97b2912124e622aTadashi G. Takaoka @Override 6476cffec78834a2db525608587eae1a5a7ef998ddTadashi G. Takaoka public boolean isValidFragment(final String fragmentName) { 6564f64bdf58ebcfb412c810646eb12e22b586aa87Satoshi Kataoka return FragmentUtils.isValidFragment(fragmentName); 66c5182c9a4ae66e75df8c959bf625d08ef99f81d2Satoshi Kataoka } 67c206d0462354b3bf1ad0cec61534da567829555dTadashi G. Takaoka} 68