diff --git a/WarpDrinkApp/app/src/main/AndroidManifest.xml b/WarpDrinkApp/app/src/main/AndroidManifest.xml index 4553d3de8c676ccf400693535a1d114ccfc7ed10..c87b7177988530c33b585c6bcee99c8a973cd8ae 100644 --- a/WarpDrinkApp/app/src/main/AndroidManifest.xml +++ b/WarpDrinkApp/app/src/main/AndroidManifest.xml @@ -2,22 +2,25 @@ <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="ms.warpzone.warppay" > <uses-permission android:name="android.permission.INTERNET"></uses-permission> + <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <uses-permission android:name="android.permission.NFC" /> <uses-feature android:name="android.hardware.nfc" android:required="true" /> + <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:largeHeap="true" + android:name="ms.warpzone.warppay.WarpPayApplication" android:theme="@style/AppTheme"> - <meta-data android:name="AA_DB_NAME" android:value="warppay_1.db" /> - <meta-data android:name="AA_DB_VERSION" android:value="10" /> + <meta-data android:name="AA_DB_NAME" android:value="warppay_2.db" /> + <meta-data android:name="AA_DB_VERSION" android:value="11" /> <activity android:name="ms.warpzone.warppay.MainActivity" @@ -39,4 +42,5 @@ </activity> </application> + </manifest> diff --git a/WarpDrinkApp/app/src/main/java/ms/warpzone/warppay/MainActivity.java b/WarpDrinkApp/app/src/main/java/ms/warpzone/warppay/MainActivity.java index 9450d8ea3af4a8cd8531e2be6a6e79822e698b5a..7609fcb4ba6aef1f4f8da737392a87c1f34dd7d3 100644 --- a/WarpDrinkApp/app/src/main/java/ms/warpzone/warppay/MainActivity.java +++ b/WarpDrinkApp/app/src/main/java/ms/warpzone/warppay/MainActivity.java @@ -16,8 +16,13 @@ import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; +import android.view.WindowManager; import android.widget.Toast; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + import ms.warpzone.warppay.data.models.local.Product; import ms.warpzone.warppay.data.models.local.User; @@ -46,7 +51,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - + getWindow().addFlags(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN); setContentView(R.layout.activity_main); this.findViewById(R.id.mainLayout).setOnKeyListener(this); @@ -147,6 +152,9 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe }); this.barcodeLearnDialog.show(); break; + case R.id.action_exit: + finish(); + break; default: break; } @@ -165,6 +173,13 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe @Override public boolean dispatchKeyEvent(KeyEvent event) { + List blockedKeys = new ArrayList(Arrays.asList(KeyEvent.KEYCODE_VOLUME_DOWN, KeyEvent.KEYCODE_VOLUME_UP)); + if (blockedKeys.contains(event.getKeyCode())) { + return true; + } + + + if(this.manager.getCurrentUser() != null) { if (event.getAction() == KeyEvent.ACTION_UP) { if (KeyEvent.KEYCODE_ENTER == event.getKeyCode()) { @@ -186,9 +201,13 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe } return super.dispatchKeyEvent(event); } - - + + @Override + public void onBackPressed() { + // nothing to do here + // … really + } /* @Override diff --git a/WarpDrinkApp/app/src/main/java/ms/warpzone/warppay/dialogs/ChargeCustomDialog.java b/WarpDrinkApp/app/src/main/java/ms/warpzone/warppay/dialogs/ChargeCustomDialog.java index e93d6c67bce3ba2d3c43943040abbd817c63d9de..97813fb7d84c10e79894f56082de28168957142f 100644 --- a/WarpDrinkApp/app/src/main/java/ms/warpzone/warppay/dialogs/ChargeCustomDialog.java +++ b/WarpDrinkApp/app/src/main/java/ms/warpzone/warppay/dialogs/ChargeCustomDialog.java @@ -2,9 +2,12 @@ package ms.warpzone.warppay.dialogs; import android.app.Dialog; import android.os.Bundle; +import android.text.InputType; +import android.view.KeyEvent; import android.view.View; import android.view.Window; import android.widget.Button; +import android.widget.EditText; import android.widget.NumberPicker; import ms.warpzone.warppay.MainActivity; @@ -12,12 +15,13 @@ import ms.warpzone.warppay.R; import ms.warpzone.warppay.manager.MainManager; public class ChargeCustomDialog extends Dialog implements - View.OnClickListener { + View.OnClickListener, View.OnKeyListener { private MainActivity c; private Dialog d; private Button btnCustomCharge; - private NumberPicker numPick; + private EditText etxtAmount; + public ChargeCustomDialog(ChargeDialog dialog, MainActivity a) { super(a); dialog.dismiss(); @@ -30,9 +34,10 @@ public class ChargeCustomDialog extends Dialog implements requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.charge_custom_dialog); - this.numPick = (NumberPicker) findViewById(R.id.numPick); - this.numPick.setMinValue(0); - this.numPick.setMaxValue(100); + this.etxtAmount = (EditText) findViewById(R.id.etxtCustomAmount); + //this.etxtAmount.setInputType(InputType.TYPE_CLASS_NUMBER); + this.etxtAmount.setOnKeyListener(this); + this.btnCustomCharge = (Button) findViewById(R.id.btnCustomCharge); this.btnCustomCharge.setOnClickListener(this); @@ -41,17 +46,35 @@ public class ChargeCustomDialog extends Dialog implements @Override public void onClick(View v) { - double amount = 0.0; + switch (v.getId()) { case R.id.btnCustomCharge: - amount = this.numPick.getValue(); + this.chargeAmount(); break; default: break; } - if(amount > 0.0) - MainManager.getInstance().chargeAmount(amount); - this.numPick.setEnabled(false); + + this.etxtAmount.setEnabled(false); dismiss(); } + + private void chargeAmount() { + try { + String text = this.etxtAmount.getText().toString(); + text = text.replace(",","."); + double amount = Double.valueOf(text); + if(amount > 0.0) + MainManager.getInstance().chargeAmount(amount); + } catch (Exception e) { + + } + } + @Override + public boolean onKey(View view, int i, KeyEvent keyEvent) { + if (KeyEvent.KEYCODE_ENTER == keyEvent.getKeyCode()) { + this.chargeAmount(); + } + return false; + } } diff --git a/WarpDrinkApp/app/src/main/res/layout/activity_main.xml b/WarpDrinkApp/app/src/main/res/layout/activity_main.xml index bf6098a0a522f8fdb4dbaa6216f694fb26bca059..cb71735644a9fa913ae59583d0c2e0b46225edf6 100644 --- a/WarpDrinkApp/app/src/main/res/layout/activity_main.xml +++ b/WarpDrinkApp/app/src/main/res/layout/activity_main.xml @@ -9,6 +9,7 @@ android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" + android:keepScreenOn="true" tools:context="ms.warpzone.warppay.MainActivity"> <LinearLayout diff --git a/WarpDrinkApp/app/src/main/res/layout/charge_custom_dialog.xml b/WarpDrinkApp/app/src/main/res/layout/charge_custom_dialog.xml index 86b3d3d8fdd3e7217851e28562bdbf9621f525a5..aa67261bf9f8c6e4e07e04bcee9e5998c9e3bc85 100644 --- a/WarpDrinkApp/app/src/main/res/layout/charge_custom_dialog.xml +++ b/WarpDrinkApp/app/src/main/res/layout/charge_custom_dialog.xml @@ -4,10 +4,14 @@ android:layout_height="match_parent" android:gravity="center_horizontal"> - <NumberPicker - android:layout_width="wrap_content" + <EditText + android:id="@+id/etxtCustomAmount" + android:layout_width="match_parent" android:layout_height="wrap_content" - android:id="@+id/numPick" /> + android:ems="10" + android:inputType="numberDecimal" + android:digits="0123456789.," + android:text="" /> <Button android:id="@+id/btnCustomCharge" diff --git a/WarpDrinkApp/app/src/main/res/menu/menu_main.xml b/WarpDrinkApp/app/src/main/res/menu/menu_main.xml index 1f6b6c2de41600aa8d0f8bab5f84d7a8d5603278..c92904420a72cc47386f83839f1dc03b0a0b5ae7 100644 --- a/WarpDrinkApp/app/src/main/res/menu/menu_main.xml +++ b/WarpDrinkApp/app/src/main/res/menu/menu_main.xml @@ -13,5 +13,11 @@ android:orderInCategory="200" android:icon="@drawable/ic_menu_refresh" android:title="@string/lernBarcodes" /> - + <!-- + <item + android:id="@+id/action_exit" + android:orderInCategory="200" + android:icon="@drawable/ic_menu_refresh" + android:title="Exit" /> + --> </menu>