Android Open Source - birthday-adapter Base Fragment






From Project

Back to project page birthday-adapter.

License

The source code is released under:

GNU General Public License

If you think the Android project birthday-adapter listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright (C) 2012-2013 Dominik Schrmann <dominik@dominikschuermann.de>
 *//  w ww.  j  a  v a  2s  . c  om
 * This file is part of Birthday Adapter.
 * 
 * Birthday Adapter is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * Birthday Adapter is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with Birthday Adapter.  If not, see <http://www.gnu.org/licenses/>.
 *
 */

package org.birthdayadapter.ui;

import android.content.Intent;
import android.net.Uri;
import org.birthdayadapter.BuildConfig;
import org.birthdayadapter.R;
import org.birthdayadapter.util.AccountHelper;
import org.birthdayadapter.util.Constants;
import org.birthdayadapter.util.Log;
import org.birthdayadapter.util.PreferencesHelper;

import android.annotation.TargetApi;
import android.os.Build;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceFragment;
import android.preference.SwitchPreference;
import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.Preference.OnPreferenceClickListener;

@TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH)
public class BaseFragment extends PreferenceFragment {
    private BaseActivity mActivity;
    private AccountHelper mAccountHelper;

    private SwitchPreference mEnabled;
    private Preference mForceSync;

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);

        Log.d(Constants.TAG, "onActivityCreated!");

        mActivity = (BaseActivity) getActivity();

        mAccountHelper = new AccountHelper(mActivity, mActivity.mBackgroundStatusHandler);

        // save prefs here
        getPreferenceManager().setSharedPreferencesName(Constants.PREFS_NAME);
        // load preferences from xml
        addPreferencesFromResource(R.xml.base_preferences);

        // if this is the first run, enable and sync birthday adapter!
        if (PreferencesHelper.getFirstRun(mActivity)) {
            PreferencesHelper.setFirstRun(mActivity, false);

            mAccountHelper.addAccountAndSync();
        }

        mEnabled = (SwitchPreference) findPreference(getString(R.string.pref_enabled_key));
        mEnabled.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
            @Override
            public boolean onPreferenceChange(Preference preference, Object newValue) {
                if (newValue instanceof Boolean) {
                    Boolean boolVal = (Boolean) newValue;

                    if (boolVal) {
                        mAccountHelper.addAccountAndSync();
                        mForceSync.setEnabled(true);
                    } else {
                        mAccountHelper.removeAccount();
                        mForceSync.setEnabled(false);
                    }
                }
                return true;
            }
        });

        mForceSync = (Preference) findPreference(getString(R.string.pref_force_sync_key));
        mForceSync.setOnPreferenceClickListener(new OnPreferenceClickListener() {
            @Override
            public boolean onPreferenceClick(Preference preference) {
                mAccountHelper.manualSync();

                return false;
            }
        });
    }

    @Override
    public void onResume() {
        super.onResume();

        // If account is activated check the preference
        if (mAccountHelper.isAccountActivated()) {
            mEnabled.setChecked(true);
            mForceSync.setEnabled(true);
        } else {
            mEnabled.setChecked(false);
            mForceSync.setEnabled(false);
        }
    }

}




Java Source Code List

android.provider.CalendarContract.java
net.margaritov.preference.colorpicker.AlphaPatternDrawable.java
net.margaritov.preference.colorpicker.ColorPickerDialog.java
net.margaritov.preference.colorpicker.ColorPickerPanelView.java
net.margaritov.preference.colorpicker.ColorPickerPreference.java
net.margaritov.preference.colorpicker.ColorPickerView.java
org.birthdayadapter.provider.BirthdayAdapterContract.java
org.birthdayadapter.provider.BirthdayAdapterDatabase.java
org.birthdayadapter.provider.BirthdayAdapterProvider.java
org.birthdayadapter.provider.ProviderHelper.java
org.birthdayadapter.service.AccountAuthenticatorService.java
org.birthdayadapter.service.CalendarSyncAdapterService.java
org.birthdayadapter.service.MainIntentService.java
org.birthdayadapter.ui.AboutFragment.java
org.birthdayadapter.ui.AccountListFragment.java
org.birthdayadapter.ui.BaseActivityV8.java
org.birthdayadapter.ui.BaseActivity.java
org.birthdayadapter.ui.BaseFragment.java
org.birthdayadapter.ui.CreateAccountActivity.java
org.birthdayadapter.ui.HelpActivityV8.java
org.birthdayadapter.ui.HelpFragment.java
org.birthdayadapter.ui.InstallWorkaroundDialogFragment.java
org.birthdayadapter.ui.PreferencesFragment.java
org.birthdayadapter.ui.ReminderPreference.java
org.birthdayadapter.ui.ShowContactActivity.java
org.birthdayadapter.util.AccountHelper.java
org.birthdayadapter.util.AccountListAdapter.java
org.birthdayadapter.util.AccountListEntry.java
org.birthdayadapter.util.AccountListLoader.java
org.birthdayadapter.util.BackgroundStatusHandler.java
org.birthdayadapter.util.Constants.java
org.birthdayadapter.util.FragmentStatePagerAdapterV14.java
org.birthdayadapter.util.Log.java
org.birthdayadapter.util.MySharedPreferenceChangeListener.java
org.birthdayadapter.util.PreferencesHelper.java
org.sufficientlysecure.htmltextview.HtmlTagHandler.java
org.sufficientlysecure.htmltextview.HtmlTextView.java
org.sufficientlysecure.htmltextview.JellyBeanSpanFixTextView.java
org.sufficientlysecure.htmltextview.UrlImageGetter.java