From 6ac91e6cf32feb0dde83af0d93e55a3f74eaa71d Mon Sep 17 00:00:00 2001 From: orangenbaumblatt Date: Sun, 24 May 2020 15:09:54 +0200 Subject: [PATCH] Improve Action Bar consistency for Settings and About Change Group Manager back icon --- app/src/main/AndroidManifest.xml | 4 +++- .../aegis/ui/AboutActivity.java | 19 +++++++++++++++++++ .../aegis/ui/GroupManagerActivity.java | 8 ++++---- .../aegis/ui/PreferencesActivity.java | 19 +++++++++++++++++++ app/src/main/res/values/strings.xml | 1 + 5 files changed, 46 insertions(+), 5 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 72d1fb8e..e8ce3a2e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -54,7 +54,9 @@ android:name=".ui.IntroActivity" android:theme="@style/Theme.Intro" /> - + diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/AboutActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/AboutActivity.java index ba178b49..cff204e1 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/AboutActivity.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/AboutActivity.java @@ -6,6 +6,7 @@ import android.content.Context; import android.content.Intent; import android.net.Uri; import android.os.Bundle; +import android.view.MenuItem; import android.view.View; import android.widget.TextView; import android.widget.Toast; @@ -43,6 +44,11 @@ public class AboutActivity extends AegisActivity { super.onCreate(savedInstanceState); setContentView(R.layout.activity_about); + if (getSupportActionBar() != null) { + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + getSupportActionBar().setDisplayShowHomeEnabled(true); + } + View btnLicenses = findViewById(R.id.btn_licenses); btnLicenses.setOnClickListener(v -> showLicenseDialog()); @@ -133,4 +139,17 @@ public class AboutActivity extends AegisActivity { private String getThemeColorAsHex(@AttrRes int attributeId) { return String.format("%06X", (0xFFFFFF & ThemeHelper.getThemeColor(attributeId, getTheme()))); } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case android.R.id.home: + onBackPressed(); + break; + default: + return super.onOptionsItemSelected(item); + } + + return true; + } } diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/GroupManagerActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/GroupManagerActivity.java index 5c08a199..b612b672 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/GroupManagerActivity.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/GroupManagerActivity.java @@ -11,7 +11,6 @@ import java.text.Collator; import java.util.ArrayList; import java.util.TreeSet; -import androidx.appcompat.app.ActionBar; import androidx.appcompat.app.AlertDialog; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; @@ -29,9 +28,10 @@ public class GroupManagerActivity extends AegisActivity implements GroupAdapter. _groups = new TreeSet<>(Collator.getInstance()); _groups.addAll(intent.getStringArrayListExtra("groups")); - ActionBar bar = getSupportActionBar(); - bar.setHomeAsUpIndicator(R.drawable.ic_close); - bar.setDisplayHomeAsUpEnabled(true); + if (getSupportActionBar() != null) { + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + getSupportActionBar().setDisplayShowHomeEnabled(true); + } // set up the recycler view _adapter = new GroupAdapter(this); diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesActivity.java index 2e3ca784..145ab158 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesActivity.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesActivity.java @@ -1,6 +1,7 @@ package com.beemdevelopment.aegis.ui; import android.os.Bundle; +import android.view.MenuItem; public class PreferencesActivity extends AegisActivity { private PreferencesFragment _fragment; @@ -9,6 +10,11 @@ public class PreferencesActivity extends AegisActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + if (getSupportActionBar() != null) { + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + getSupportActionBar().setDisplayShowHomeEnabled(true); + } + if (savedInstanceState == null) { _fragment = new PreferencesFragment(); _fragment.setArguments(getIntent().getExtras()); @@ -40,4 +46,17 @@ public class PreferencesActivity extends AegisActivity { outState.putParcelable("result", _fragment.getResult()); super.onSaveInstanceState(outState); } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case android.R.id.home: + onBackPressed(); + break; + default: + return super.onOptionsItemSelected(item); + } + + return true; + } } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 7d2e1f35..99de8ab3 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -189,6 +189,7 @@ Group name Edit groups Manage and delete your groups here + Settings Search in account names Include account name matches in the search results Highlight tokens when tapped