/*
* Copyright (C) 2012-2016 The Android Money Manager Ex Project Team
*
* This program 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.
*
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.money.manager.ex.currency.list;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.FragmentManager;
import android.text.TextUtils;
import android.view.KeyEvent;
import com.crashlytics.android.answers.Answers;
import com.crashlytics.android.answers.CustomEvent;
import com.money.manager.ex.Constants;
import com.money.manager.ex.R;
import com.money.manager.ex.common.MmxBaseFragmentActivity;
import com.money.manager.ex.core.AnswersEvents;
import com.money.manager.ex.utils.ActivityUtils;
/**
* List of currencies.
*/
public class CurrencyListActivity
extends MmxBaseFragmentActivity {
public static final String INTENT_RESULT_CURRENCYID = "CurrencyListActivity:ACCOUNTID";
public static final String INTENT_RESULT_CURRENCYNAME = "CurrencyListActivity:ACCOUNTNAME";
private static final String FRAGMENTTAG = CurrencyListActivity.class.getSimpleName() + "_Fragment";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.base_toolbar_activity);
// change home icon to 'back'.
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
CurrencyListFragment fragment = new CurrencyListFragment();
Intent intent = getIntent();
if (intent != null && !(TextUtils.isEmpty(intent.getAction()))) {
// restore previous device orientation if it was modified.
if(fragment.mPreviousOrientation != Constants.NOT_SET) {
int currentOrientation = ActivityUtils.forceCurrentOrientation(this);
if(currentOrientation != fragment.mPreviousOrientation) {
ActivityUtils.restoreOrientation(this, fragment.mPreviousOrientation);
}
}
}
FragmentManager fm = getSupportFragmentManager();
if (fm.findFragmentById(R.id.content) == null) {
fm.beginTransaction().add(R.id.content, fragment, FRAGMENTTAG).commit();
}
Answers.getInstance().logCustom(new CustomEvent(AnswersEvents.CurrencyList.name()));
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
// intercept key back
if (keyCode == KeyEvent.KEYCODE_BACK) {
CurrencyListFragment fragment = (CurrencyListFragment)
getSupportFragmentManager().findFragmentByTag(FRAGMENTTAG);
if (fragment != null) {
fragment.setResultAndFinish();
}
}
return super.onKeyUp(keyCode, event);
}
}