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 - - - - - - -