diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
old mode 100644
new mode 100755
index 26b8ddfc..21abdc87
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -13,6 +13,7 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
+
-
-
+
-
+
+
+
-
-
-
-
+
+
-
-
+
+
+
+
+ android:label="@string/activity_history"
+ android:parentActivityName=".activities.MainActivity" />
+
+ android:label="@string/activity_history_details"
+ android:parentActivityName=".activities.HistoryActivity" />
+
-
-
-
-
-
+ android:parentActivityName=".activities.MainActivity" />
+
-
-
-
-
-
-
+
-
-
-
-
+
+
+
-
-
+ android:parentActivityName=".activities.generator.GenerateActivity" />
+
+
+
+
-
\ No newline at end of file
+
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/AboutActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/AboutActivity.java
index 2ae6e6bf..b2f088e4 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/AboutActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/AboutActivity.java
@@ -1,7 +1,5 @@
package de.t_dankworth.secscanqr.activities;
-import androidx.appcompat.app.AppCompatActivity;
-
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
@@ -14,7 +12,9 @@
import mehdi.sakout.aboutpage.AboutPage;
import mehdi.sakout.aboutpage.Element;
-public class AboutActivity extends AppCompatActivity {
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
+
+public class AboutActivity extends MyAppCompatActivity {
private boolean drakMode = false;
@@ -66,4 +66,4 @@ private void loadTheme(){
drakMode = false;
}
}
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/HistoryActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/HistoryActivity.java
index d47934e4..100f0d32 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/HistoryActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/HistoryActivity.java
@@ -6,7 +6,6 @@
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
-import androidx.appcompat.app.AppCompatActivity;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -29,6 +28,8 @@
import de.t_dankworth.secscanqr.util.GeneralHandler;
import de.t_dankworth.secscanqr.util.HistoryViewModel;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
+
import static de.t_dankworth.secscanqr.util.ButtonHandler.shareTo;
@@ -41,7 +42,7 @@
*/
-public class HistoryActivity extends AppCompatActivity {
+public class HistoryActivity extends MyAppCompatActivity {
private static final String TAG = "History";
private GeneralHandler generalHandler;
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/HistoryDetailsActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/HistoryDetailsActivity.java
index 17f614e7..14955464 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/HistoryDetailsActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/HistoryDetailsActivity.java
@@ -14,8 +14,6 @@
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
import com.journeyapps.barcodescanner.BarcodeEncoder;
-import androidx.appcompat.app.AppCompatActivity;
-
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.MenuItem;
@@ -32,6 +30,8 @@
import de.t_dankworth.secscanqr.util.DatabaseHelper;
import de.t_dankworth.secscanqr.util.GeneralHandler;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
+
import static de.t_dankworth.secscanqr.util.ButtonHandler.copyToClipboard;
import static de.t_dankworth.secscanqr.util.ButtonHandler.createContact;
import static de.t_dankworth.secscanqr.util.ButtonHandler.openInWeb;
@@ -45,7 +45,7 @@
* This class is the HistoryDetailsActivity shows details and further functionality for the chosen item
*/
-public class HistoryDetailsActivity extends AppCompatActivity {
+public class HistoryDetailsActivity extends MyAppCompatActivity {
private GeneralHandler generalHandler;
@@ -153,8 +153,10 @@ private void showQrImage() {
BarcodeEncoder barcodeEncoder = new BarcodeEncoder();
bitmap = barcodeEncoder.createBitmap(bitMatrix);
codeImage.setImageBitmap(bitmap);
+ codeImage.setEnabled(true);
} catch (Exception e){
- codeImage.setVisibility(View.GONE);
+ codeImage.setImageResource(R.drawable.ic_baseline_error_24);
+ codeImage.setEnabled(false);
}
}
}
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/ScannerActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/ScannerActivity.java
index bf871a63..70e3c032 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/ScannerActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/ScannerActivity.java
@@ -11,7 +11,6 @@
import androidx.annotation.NonNull;
import com.google.android.material.bottomnavigation.BottomNavigationItemView;
import com.google.android.material.bottomnavigation.BottomNavigationView;
-import androidx.appcompat.app.AppCompatActivity;
import androidx.lifecycle.ViewModelProvider;
import android.view.MenuItem;
@@ -57,6 +56,8 @@
import de.t_dankworth.secscanqr.util.HistoryEntity;
import de.t_dankworth.secscanqr.util.HistoryViewModel;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
+
import static de.t_dankworth.secscanqr.util.ButtonHandler.copyToClipboard;
import static de.t_dankworth.secscanqr.util.ButtonHandler.createContact;
import static de.t_dankworth.secscanqr.util.ButtonHandler.openInWeb;
@@ -71,7 +72,7 @@
* This class is the MainActivity and is the starting point of the App
* From here the User can start a QR-Code scan and can go to the Generate Activity
*/
-public class ScannerActivity extends AppCompatActivity {
+public class ScannerActivity extends MyAppCompatActivity {
private TextView mTvInformation, mTvFormat, mLabelInformation, mLabelFormat;
private BottomNavigationView action_navigation;
@@ -409,4 +410,4 @@ private void handleSendPicture(){
Toast.makeText(activity, getResources().getText(R.string.error_code_not_found), Toast.LENGTH_LONG).show();
}
}
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/SettingsActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/SettingsActivity.java
index 8c1d28ea..6673cc37 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/SettingsActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/SettingsActivity.java
@@ -10,7 +10,6 @@
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.PreferenceActivity;
-import androidx.appcompat.app.ActionBar;
import android.preference.PreferenceFragment;
import android.preference.PreferenceManager;
import android.view.MenuItem;
@@ -94,19 +93,6 @@ private static void bindPreferenceSummaryToValue(Preference preference) {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setupActionBar();
- }
-
- /**
- * Set up the {@link android.app.ActionBar}, if the API is available.
- */
- private void setupActionBar() {
- ActionBar actionBar = getSupportActionBar();
- if (actionBar != null) {
- // Show the Up button in the action bar.
- //Because of a NUG deactivated
- //actionBar.setDisplayHomeAsUpEnabled(true);
- }
}
/**
@@ -221,16 +207,5 @@ public boolean onOptionsItemSelected(MenuItem item) {
return super.onOptionsItemSelected(item);
}
}
-
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- switch (item.getItemId()) {
- // Respond to the action bar's Up/Home button
- case android.R.id.home:
- super.onBackPressed();
- return true;
- }
- return super.onOptionsItemSelected(item);
-
- }
+
}
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/ThirdPartyScannerActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/ThirdPartyScannerActivity.java
index 9f3fc19e..a60b9a23 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/ThirdPartyScannerActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/ThirdPartyScannerActivity.java
@@ -4,7 +4,6 @@
import android.content.Intent;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
-import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import com.google.zxing.client.android.Intents;
@@ -13,6 +12,8 @@
import de.t_dankworth.secscanqr.R;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
+
/**
* Created by Thore Dankworth
* Last Update: 25.10.2020
@@ -22,7 +23,7 @@
* If your desired app does not support SecScanQR for scanning QR-Codes please ask them to implement it.
*/
-public class ThirdPartyScannerActivity extends AppCompatActivity {
+public class ThirdPartyScannerActivity extends MyAppCompatActivity {
final Activity activity = this;
private String qrcode = "";
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/BarcodeGenerateActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/BarcodeGenerateActivity.java
index fa74ce7d..71964319 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/BarcodeGenerateActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/BarcodeGenerateActivity.java
@@ -3,7 +3,6 @@
import android.content.Intent;
import android.os.Bundle;
-import androidx.appcompat.app.AppCompatActivity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
@@ -17,6 +16,7 @@
import de.t_dankworth.secscanqr.activities.MainActivity;
import de.t_dankworth.secscanqr.util.GeneralHandler;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
/**
* Created by Thore Dankworth
@@ -26,7 +26,7 @@
* This class is all about the value to BARCODE Generate Activity.
*/
-public class BarcodeGenerateActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener {
+public class BarcodeGenerateActivity extends MyAppCompatActivity implements AdapterView.OnItemSelectedListener {
EditText text;
int format;
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GenerateActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GenerateActivity.java
index 0ee80656..7b58fd90 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GenerateActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GenerateActivity.java
@@ -5,7 +5,6 @@
import android.os.Bundle;
-import androidx.appcompat.app.AppCompatActivity;
import androidx.cardview.widget.CardView;
import android.view.View;
@@ -13,6 +12,7 @@
import de.t_dankworth.secscanqr.R;
import de.t_dankworth.secscanqr.util.GeneralHandler;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
/**
* Created by Thore Dankworth
@@ -22,7 +22,7 @@
* This class is just a forwarding to the specific generators
*/
-public class GenerateActivity extends AppCompatActivity implements View.OnClickListener {
+public class GenerateActivity extends MyAppCompatActivity implements View.OnClickListener {
final Activity activity = this;
private GeneralHandler generalHandler;
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GeneratorResultActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GeneratorResultActivity.java
index c7b169b4..eea48dc2 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GeneratorResultActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GeneratorResultActivity.java
@@ -8,12 +8,10 @@
import android.os.Environment;
import androidx.annotation.NonNull;
import androidx.core.app.ActivityCompat;
-import androidx.appcompat.app.AppCompatActivity;
import androidx.core.content.FileProvider;
import android.os.Bundle;
import android.util.Log;
-import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
@@ -39,6 +37,8 @@
import de.t_dankworth.secscanqr.R;
import de.t_dankworth.secscanqr.util.GeneralHandler;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
+
/**
* Created by Thore Dankworth
* Last Update: 14.03.2021
@@ -47,7 +47,7 @@
* This class is all about showing the QR Code/Barcode and give the opportunity to save them
*/
-public class GeneratorResultActivity extends AppCompatActivity {
+public class GeneratorResultActivity extends MyAppCompatActivity {
ImageView codeImage;
Button btnSave, btnShare;
@@ -236,9 +236,5 @@ private void requestPermission(){
ActivityCompat.requestPermissions(this, new String[] {Manifest.permission.WRITE_EXTERNAL_STORAGE}, REQ_EXTERNAL_STORAGE_PERMISSION);
}
}
-
- public boolean onOptionsItemSelected(MenuItem item){
- finish();
- return true;
- }
+
}
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GeoGeneratorActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GeoGeneratorActivity.java
index 95cb54cf..07f11302 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GeoGeneratorActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/GeoGeneratorActivity.java
@@ -5,7 +5,6 @@
import android.content.Intent;
import android.os.Bundle;
-import androidx.appcompat.app.AppCompatActivity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
@@ -21,6 +20,8 @@
import de.t_dankworth.secscanqr.activities.MainActivity;
import de.t_dankworth.secscanqr.util.GeneralHandler;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
+
/**
* Created by Thore Dankworth
* Last Update: 13.12.2019
@@ -28,7 +29,7 @@
*
* This class is all about the geo location to QR-Code Generate Activity.
*/
-public class GeoGeneratorActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener{
+public class GeoGeneratorActivity extends MyAppCompatActivity implements AdapterView.OnItemSelectedListener{
EditText tfLatitude, tfLongtitude;
CheckBox cbLatitude, cbLongtitude;
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/TextGeneratorActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/TextGeneratorActivity.java
index a1d99110..dac7a6b6 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/TextGeneratorActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/TextGeneratorActivity.java
@@ -6,7 +6,6 @@
import android.net.Uri;
import android.os.Bundle;
-import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import android.view.View;
@@ -26,6 +25,8 @@
import de.t_dankworth.secscanqr.activities.MainActivity;
import de.t_dankworth.secscanqr.util.GeneralHandler;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
+
/**
* Created by Thore Dankworth
* Last Update: 13.12.2019
@@ -34,7 +35,7 @@
* This class is all about the Text to QR-Code Generate Activity.
*/
-public class TextGeneratorActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener {
+public class TextGeneratorActivity extends MyAppCompatActivity implements AdapterView.OnItemSelectedListener {
EditText text;
int format;
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/VCardGeneratorActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/VCardGeneratorActivity.java
index 2d006af4..13e73d80 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/VCardGeneratorActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/VCardGeneratorActivity.java
@@ -3,7 +3,6 @@
import android.content.Intent;
import android.os.Bundle;
-import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import android.view.View;
import android.widget.AdapterView;
@@ -18,6 +17,8 @@
import de.t_dankworth.secscanqr.activities.MainActivity;
import de.t_dankworth.secscanqr.util.GeneralHandler;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
+
/**
* Created by Thore Dankworth
* Last Update: 01.05.2020
@@ -26,7 +27,7 @@
* This class is all about the VCard to QR-Code Generate Activity.
*/
-public class VCardGeneratorActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener{
+public class VCardGeneratorActivity extends MyAppCompatActivity implements AdapterView.OnItemSelectedListener{
EditText tfFirstName, tfName, tfOrg, tfTeleWork, tfTelePrivate, tfMobil, tfEmail, tfWeb, tfStreet, tfPLZ, tfCity, tfState, tfCountry, tfPhoto, tfBday, tfNote;
int format;
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/WifiGeneratorActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/WifiGeneratorActivity.java
index 3ea6050c..1303d283 100644
--- a/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/WifiGeneratorActivity.java
+++ b/app/src/main/java/de/t_dankworth/secscanqr/activities/generator/WifiGeneratorActivity.java
@@ -2,7 +2,6 @@
import android.app.Activity;
import android.content.Intent;
-import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
@@ -18,6 +17,8 @@
import de.t_dankworth.secscanqr.R;
import de.t_dankworth.secscanqr.util.GeneralHandler;
+import de.t_dankworth.secscanqr.util.MyAppCompatActivity;
+
/**
* Created by Thore Dankworth
* Last Update: 24.10.2020
@@ -26,7 +27,7 @@
* This class is all about the wifi information to QR-Code Generate Activity.
*/
-public class WifiGeneratorActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener{
+public class WifiGeneratorActivity extends MyAppCompatActivity implements AdapterView.OnItemSelectedListener{
EditText tfSSID, tfPassword;
CheckBox cbHidden;
diff --git a/app/src/main/java/de/t_dankworth/secscanqr/util/MyAppCompatActivity.java b/app/src/main/java/de/t_dankworth/secscanqr/util/MyAppCompatActivity.java
new file mode 100755
index 00000000..3cdc83d7
--- /dev/null
+++ b/app/src/main/java/de/t_dankworth/secscanqr/util/MyAppCompatActivity.java
@@ -0,0 +1,17 @@
+package de.t_dankworth.secscanqr.util;
+
+import androidx.appcompat.app.AppCompatActivity;
+
+/**
+ * A {@link androidx.appcompat.app.AppCompatActivity} which overrides
+ * the home navigation button to call onBackPressed.
+ */
+public abstract class MyAppCompatActivity extends AppCompatActivity {
+
+ @Override
+ public boolean onSupportNavigateUp() {
+ onBackPressed();
+ return false;
+ }
+
+}
diff --git a/app/src/main/res/layout/activity_history_details.xml b/app/src/main/res/layout/activity_history_details.xml
old mode 100644
new mode 100755
index 89d8b6e0..05f12ec4
--- a/app/src/main/res/layout/activity_history_details.xml
+++ b/app/src/main/res/layout/activity_history_details.xml
@@ -20,8 +20,9 @@
+ app:layout_constraintTop_toBottomOf="@+id/resultImageHistory" />
#8c8c8c
-
-
-
-
-
-
-
-
-
-