import android.os.Bundle;
import android.preference.PreferenceActivity;
+import android.view.MenuItem;
+import jackpal.androidterm.compat.ActionBarCompat;
+import jackpal.androidterm.compat.ActivityCompat;
import jackpal.androidterm.compat.AndroidCompat;
public class TermPreferences extends PreferenceActivity {
if (AndroidCompat.SDK < 11) {
getPreferenceManager().findPreference(ACTIONBAR_KEY).setEnabled(false);
}
+
+ // Display up indicator on action bar home button
+ if (AndroidCompat.SDK >= 11) {
+ ActionBarCompat bar = ActivityCompat.getActionBar(this);
+ if (bar != null) {
+ bar.setDisplayOptions(ActionBarCompat.DISPLAY_HOME_AS_UP, ActionBarCompat.DISPLAY_HOME_AS_UP);
+ }
+ }
}
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ switch (item.getItemId()) {
+ case ActionBarCompat.ID_HOME:
+ // Action bar home button selected
+ finish();
+ return true;
+ default:
+ return super.onOptionsItemSelected(item);
+ }
+ }
}
import android.util.AttributeSet;
import android.util.Log;
import android.view.LayoutInflater;
+import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
+import jackpal.androidterm.compat.ActionBarCompat;
+import jackpal.androidterm.compat.ActivityCompat;
+import jackpal.androidterm.compat.AndroidCompat;
import jackpal.androidterm.model.UpdateCallback;
import jackpal.androidterm.session.TermSession;
import jackpal.androidterm.util.SessionList;
listView.addHeaderView(newWindow, null, true);
setResult(RESULT_CANCELED);
+
+ // Display up indicator on action bar home button
+ if (AndroidCompat.SDK >= 11) {
+ ActionBarCompat bar = ActivityCompat.getActionBar(this);
+ if (bar != null) {
+ bar.setDisplayOptions(ActionBarCompat.DISPLAY_HOME_AS_UP, ActionBarCompat.DISPLAY_HOME_AS_UP);
+ }
+ }
}
@Override
setResult(RESULT_OK, data);
finish();
}
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ switch (item.getItemId()) {
+ case ActionBarCompat.ID_HOME:
+ // Action bar home button selected
+ finish();
+ return true;
+ default:
+ return super.onOptionsItemSelected(item);
+ }
+ }
}
public static final int DISPLAY_SHOW_TITLE = 8;
public static final int DISPLAY_SHOW_CUSTOM = 16;
+ // Provides android.R.id.home from API 11 and up
+ public static final int ID_HOME = 0x0102002c;
public interface OnNavigationListener {
public abstract boolean onNavigationItemSelected(int position, long id);