diff options
| author | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-01-14 20:18:03 +0100 | 
|---|---|---|
| committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-01-14 20:18:03 +0100 | 
| commit | 1516ebf26afdd10cab81da945251015af2aa819d (patch) | |
| tree | 5ab9760114a46bf7545b155b7187d15d463174df /OpenKeychain/src/main/java | |
| parent | 85b6669625c9b94972fb03ec0de2da689c24d299 (diff) | |
| download | open-keychain-1516ebf26afdd10cab81da945251015af2aa819d.tar.gz open-keychain-1516ebf26afdd10cab81da945251015af2aa819d.tar.bz2 open-keychain-1516ebf26afdd10cab81da945251015af2aa819d.zip | |
Toolbar for settings
Diffstat (limited to 'OpenKeychain/src/main/java')
| -rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DrawerActivity.java | 3 | ||||
| -rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysCloudFragment.java | 2 | ||||
| -rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java (renamed from OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PreferencesActivity.java) | 48 | ||||
| -rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsKeyServerActivity.java (renamed from OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PreferencesKeyServerActivity.java) | 2 | 
4 files changed, 41 insertions, 14 deletions
| diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DrawerActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DrawerActivity.java index b3521ebcc..712516b8d 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DrawerActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DrawerActivity.java @@ -27,7 +27,6 @@ import android.support.v4.app.ActionBarDrawerToggle;  import android.support.v4.view.GravityCompat;  import android.support.v4.widget.DrawerLayout;  import android.support.v4.widget.FixedDrawerLayout; -import android.support.v7.app.ActionBarActivity;  import android.view.LayoutInflater;  import android.view.Menu;  import android.view.MenuItem; @@ -179,7 +178,7 @@ public abstract class DrawerActivity extends BaseActivity {          switch (item.getItemId()) {              case MENU_ID_PREFERENCE: { -                Intent intent = new Intent(this, PreferencesActivity.class); +                Intent intent = new Intent(this, SettingsActivity.class);                  startActivity(intent);                  return true;              } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysCloudFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysCloudFragment.java index 03aba344a..89826b8e9 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysCloudFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysCloudFragment.java @@ -110,7 +110,7 @@ public class ImportKeysCloudFragment extends Fragment {          mConfigButton.setOnClickListener(new OnClickListener() {              @Override              public void onClick(View v) { -                Intent i = new Intent(mImportActivity, PreferencesActivity.class); +                Intent i = new Intent(mImportActivity, SettingsActivity.class);                  // GRR, for some reason I can’t set the Action or I get an incomprehensible                  //  exception about “modern two-pane layouts”                  // i.setAction(PreferencesActivity.ACTION_PREFS_CLOUD); diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PreferencesActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java index 1769caa47..8ef6ec187 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PreferencesActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsActivity.java @@ -17,7 +17,6 @@  package org.sufficientlysecure.keychain.ui; -import android.annotation.SuppressLint;  import android.content.Context;  import android.content.Intent;  import android.os.Bundle; @@ -26,6 +25,10 @@ import android.preference.Preference;  import android.preference.PreferenceActivity;  import android.preference.PreferenceFragment;  import android.preference.PreferenceScreen; +import android.support.v7.widget.Toolbar; +import android.view.View; +import android.view.ViewGroup; +import android.widget.LinearLayout;  import org.spongycastle.bcpg.CompressionAlgorithmTags;  import org.spongycastle.bcpg.HashAlgorithmTags; @@ -37,8 +40,7 @@ import org.sufficientlysecure.keychain.util.Preferences;  import java.util.List; -@SuppressLint("NewApi") -public class PreferencesActivity extends PreferenceActivity { +public class SettingsActivity extends PreferenceActivity {      public static final String ACTION_PREFS_CLOUD = "org.sufficientlysecure.keychain.ui.PREFS_CLOUD";      public static final String ACTION_PREFS_ADV = "org.sufficientlysecure.keychain.ui.PREFS_ADV"; @@ -53,6 +55,8 @@ public class PreferencesActivity extends PreferenceActivity {          sPreferences = Preferences.getPreferences(this);          super.onCreate(savedInstanceState); +        setupToolbar(); +          String action = getIntent().getAction();          if (action != null && action.equals(ACTION_PREFS_CLOUD)) { @@ -63,9 +67,9 @@ public class PreferencesActivity extends PreferenceActivity {              mKeyServerPreference                      .setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {                          public boolean onPreferenceClick(Preference preference) { -                            Intent intent = new Intent(PreferencesActivity.this, -                                    PreferencesKeyServerActivity.class); -                            intent.putExtra(PreferencesKeyServerActivity.EXTRA_KEY_SERVERS, +                            Intent intent = new Intent(SettingsActivity.this, +                                    SettingsKeyServerActivity.class); +                            intent.putExtra(SettingsKeyServerActivity.EXTRA_KEY_SERVERS,                                      sPreferences.getKeyServers());                              startActivityForResult(intent, REQUEST_CODE_KEYSERVER_PREF);                              return false; @@ -132,6 +136,30 @@ public class PreferencesActivity extends PreferenceActivity {          }      } +    /** +     * Hack to get Toolbar in PreferenceActivity. See http://stackoverflow.com/a/26614696 +     */ +    private void setupToolbar() { +        ViewGroup root = (ViewGroup) findViewById(android.R.id.content); +        LinearLayout content = (LinearLayout) root.getChildAt(0); +        LinearLayout toolbarContainer = (LinearLayout) View.inflate(this, R.layout.preference_toolbar_activity, null); + +        root.removeAllViews(); +        toolbarContainer.addView(content); +        root.addView(toolbarContainer); + +        Toolbar toolbar = (Toolbar) toolbarContainer.findViewById(R.id.toolbar); +        toolbar.setTitle(R.string.title_preferences); +        toolbar.setNavigationIcon(getResources().getDrawable(R.drawable.ic_arrow_back_white_24dp)); +        toolbar.setNavigationOnClickListener(new View.OnClickListener() { +            @Override +            public void onClick(View v) { +                //What to do on back clicked +                finish(); +            } +        }); +    } +      @Override      protected void onActivityResult(int requestCode, int resultCode, Intent data) {          switch (requestCode) { @@ -140,7 +168,7 @@ public class PreferencesActivity extends PreferenceActivity {                      return;                  }                  String servers[] = data -                        .getStringArrayExtra(PreferencesKeyServerActivity.EXTRA_KEY_SERVERS); +                        .getStringArrayExtra(SettingsKeyServerActivity.EXTRA_KEY_SERVERS);                  sPreferences.setKeyServers(servers);                  mKeyServerPreference.setSummary(keyserverSummary(this));                  break; @@ -181,8 +209,8 @@ public class PreferencesActivity extends PreferenceActivity {                      .setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {                          public boolean onPreferenceClick(Preference preference) {                              Intent intent = new Intent(getActivity(), -                                    PreferencesKeyServerActivity.class); -                            intent.putExtra(PreferencesKeyServerActivity.EXTRA_KEY_SERVERS, +                                    SettingsKeyServerActivity.class); +                            intent.putExtra(SettingsKeyServerActivity.EXTRA_KEY_SERVERS,                                      sPreferences.getKeyServers());                              startActivityForResult(intent, REQUEST_CODE_KEYSERVER_PREF);                              return false; @@ -204,7 +232,7 @@ public class PreferencesActivity extends PreferenceActivity {                          return;                      }                      String servers[] = data -                            .getStringArrayExtra(PreferencesKeyServerActivity.EXTRA_KEY_SERVERS); +                            .getStringArrayExtra(SettingsKeyServerActivity.EXTRA_KEY_SERVERS);                      sPreferences.setKeyServers(servers);                      mKeyServerPreference.setSummary(keyserverSummary(getActivity()));                      break; diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PreferencesKeyServerActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsKeyServerActivity.java index 9e2e443af..365e8026c 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PreferencesKeyServerActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SettingsKeyServerActivity.java @@ -35,7 +35,7 @@ import org.sufficientlysecure.keychain.ui.widget.KeyServerEditor;  import java.util.Vector; -public class PreferencesKeyServerActivity extends BaseActivity implements OnClickListener, +public class SettingsKeyServerActivity extends BaseActivity implements OnClickListener,          EditorListener {      public static final String EXTRA_KEY_SERVERS = "key_servers"; | 
