package cz.destil.wearsquare.core;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import com.mariux.teleport.lib.TeleportClient;
import cz.destil.wearsquare.R;
/**
* Base activity for all others. It handles Teleport.
*
* @author David Vávra (david@vavra.me)
*/
public abstract class BaseActivity extends AppCompatActivity {
private TeleportClient mTeleportClient;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mTeleportClient = new TeleportClient(this);
setContentView(R.layout.activity_base);
setSupportActionBar((Toolbar) findViewById(R.id.toolbar));
if (getSupportActionBar() != null) {
getSupportActionBar().setDisplayHomeAsUpEnabled(shouldShowUpArrow());
}
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.content, getFragment()).commit();
}
}
public abstract Fragment getFragment();
public abstract boolean shouldShowUpArrow();
@Override
protected void onStart() {
super.onStart();
mTeleportClient.connect();
}
@Override
protected void onStop() {
super.onStop();
mTeleportClient.disconnect();
}
public TeleportClient teleport() {
return mTeleportClient;
}
}