Fix di remove di callback del barcode manager nel caso di onBackPressed.
Fix UI dialog_input_quantity_v2.xml sui large display.
This commit is contained in:
@@ -2,6 +2,9 @@
|
||||
<manifest xmlns:tools="http://schemas.android.com/tools"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<uses-feature android:name="android.hardware.camera"
|
||||
android:required="false" />
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
|
||||
@@ -56,7 +59,6 @@
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.CLIENTBARCODEACTIVITY" />
|
||||
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
|
||||
@@ -9,6 +9,7 @@ import android.text.SpannableString;
|
||||
import android.util.Pair;
|
||||
import android.view.Gravity;
|
||||
|
||||
import androidx.activity.OnBackPressedCallback;
|
||||
import androidx.appcompat.widget.PopupMenu;
|
||||
import androidx.databinding.DataBindingUtil;
|
||||
import androidx.databinding.ObservableArrayList;
|
||||
@@ -138,12 +139,34 @@ public class PickingResiActivity extends BaseActivity implements BottomSheetFrag
|
||||
mBindings.bottomSheetLuContent.setListener(this);
|
||||
mBottomSheetFragmentLUContentViewModel.setListener(this);
|
||||
|
||||
|
||||
this.initVars();
|
||||
this.initBarcodeReader();
|
||||
this.initRecyclerView();
|
||||
this.initFab();
|
||||
|
||||
// Registra il callback per la gestione del pulsante back
|
||||
getOnBackPressedDispatcher().addCallback(this, new OnBackPressedCallback(true) {
|
||||
@Override
|
||||
public void handleOnBackPressed() {
|
||||
if (mBindings.bottomSheetLuContent.isExpanded()) {
|
||||
mBindings.bottomSheetLuContent.collapse();
|
||||
} else if (!noLUPresent.get()) {
|
||||
mShouldCloseActivity = true;
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
executorService.execute(() -> {
|
||||
try {
|
||||
mViewmodel.closeLU(true);
|
||||
} catch (Exception e) {
|
||||
onError(e);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
setEnabled(false);
|
||||
getOnBackPressedDispatcher().onBackPressed();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
|
||||
|
||||
@@ -166,28 +189,6 @@ public class PickingResiActivity extends BaseActivity implements BottomSheetFrag
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
|
||||
if (this.mBindings.bottomSheetLuContent.isExpanded()) {
|
||||
this.mBindings.bottomSheetLuContent.collapse();
|
||||
} else if (!noLUPresent.get()) {
|
||||
this.mShouldCloseActivity = true;
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
|
||||
executorService.execute(() -> {
|
||||
try {
|
||||
this.mViewmodel.closeLU(true);
|
||||
} catch (Exception e) {
|
||||
this.onError(e);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
getOnBackPressedDispatcher().onBackPressed();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void initVars() {
|
||||
this.noLUPresent.addOnPropertyChangedCallback(() -> {
|
||||
|
||||
@@ -8,6 +8,7 @@ import android.text.SpannableString;
|
||||
import android.view.View;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.activity.OnBackPressedCallback;
|
||||
import androidx.appcompat.app.ActionBar;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.databinding.DataBindingUtil;
|
||||
@@ -75,7 +76,6 @@ public class PVOrdineAcquistoEditActivity extends BaseActivity implements PVOrdi
|
||||
.create()
|
||||
.inject(this);
|
||||
|
||||
|
||||
mBinding = DataBindingUtil.setContentView(this, R.layout.activity_pv_ordine_acquisto_edit);
|
||||
mBinding.setViewModel(this);
|
||||
Ordine ordine = DataCache.retrieveItem(getIntent().getStringExtra(DATA_KEY_ORDER));
|
||||
@@ -86,6 +86,16 @@ public class PVOrdineAcquistoEditActivity extends BaseActivity implements PVOrdi
|
||||
actionBar.setDisplayHomeAsUpEnabled(true);
|
||||
}
|
||||
|
||||
// Registra il callback per la gestione del pulsante back
|
||||
getOnBackPressedDispatcher().addCallback(this, new OnBackPressedCallback(true) {
|
||||
@Override
|
||||
public void handleOnBackPressed() {
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
setEnabled(false);
|
||||
getOnBackPressedDispatcher().onBackPressed();
|
||||
}
|
||||
});
|
||||
|
||||
if (ordine == null) {
|
||||
Toast.makeText(this, "Impossibile modificare ordine esportato", Toast.LENGTH_SHORT).show();
|
||||
close();
|
||||
@@ -242,12 +252,6 @@ public class PVOrdineAcquistoEditActivity extends BaseActivity implements PVOrdi
|
||||
getOnBackPressedDispatcher().onBackPressed();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
getOnBackPressedDispatcher().onBackPressed();
|
||||
}
|
||||
|
||||
public void manualSearch() {
|
||||
BarcodeManager.disable(mBarcodeScannerInstanceID);
|
||||
DialogSimpleInputHelper.makeInputDialog(this, "Inserisci il codice a barre/codice articolo da cercare", barcode -> {
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.text.SpannableString;
|
||||
import android.view.Gravity;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.activity.OnBackPressedCallback;
|
||||
import androidx.appcompat.widget.PopupMenu;
|
||||
import androidx.databinding.DataBindingUtil;
|
||||
import androidx.databinding.ObservableArrayList;
|
||||
@@ -47,12 +48,10 @@ import it.integry.integrywmsnative.core.expansion.RunnableArgs;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgss;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgsss;
|
||||
import it.integry.integrywmsnative.core.expansion.RunnableArgssss;
|
||||
import it.integry.integrywmsnative.core.model.DtbOrdt;
|
||||
import it.integry.integrywmsnative.core.model.MtbAart;
|
||||
import it.integry.integrywmsnative.core.model.MtbColr;
|
||||
import it.integry.integrywmsnative.core.model.MtbColt;
|
||||
import it.integry.integrywmsnative.core.model.MtbDepoPosizione;
|
||||
import it.integry.integrywmsnative.core.model.MtbPartitaMag;
|
||||
import it.integry.integrywmsnative.core.model.dto.AlreadyRegisteredUlDTO;
|
||||
import it.integry.integrywmsnative.core.model.dto.PartitaCommessaDTO;
|
||||
import it.integry.integrywmsnative.core.model.observable.ObservableMtbTcol;
|
||||
@@ -61,13 +60,13 @@ import it.integry.integrywmsnative.core.report.ReportManager;
|
||||
import it.integry.integrywmsnative.core.rest.model.OrdineUscitaInevasoDTO;
|
||||
import it.integry.integrywmsnative.core.rest.model.SitArtOrdDTO;
|
||||
import it.integry.integrywmsnative.core.settings.SettingsManager;
|
||||
import it.integry.integrywmsnative.core.utility.data.UntMisUtils;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityBigDecimal;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityDate;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityExceptions;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityResources;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityString;
|
||||
import it.integry.integrywmsnative.core.utility.UtilityToast;
|
||||
import it.integry.integrywmsnative.core.utility.data.UntMisUtils;
|
||||
import it.integry.integrywmsnative.databinding.ActivitySpedizioneBinding;
|
||||
import it.integry.integrywmsnative.gest.lista_bancali.ListaBancaliActivity;
|
||||
import it.integry.integrywmsnative.gest.spedizione.dialogs.print_sscc_list.DialogPrintOrderSSCCListView;
|
||||
@@ -213,6 +212,31 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo
|
||||
this.initFab();
|
||||
this.initRecyclerView();
|
||||
|
||||
// Registra il callback per la gestione del pulsante back
|
||||
getOnBackPressedDispatcher().addCallback(this, new OnBackPressedCallback(true) {
|
||||
@Override
|
||||
public void handleOnBackPressed() {
|
||||
if (mBindings.bottomSheetLuContent.isExpanded()) {
|
||||
mBindings.bottomSheetLuContent.collapse();
|
||||
} else if (!noLUPresent.getValue()) {
|
||||
mShouldCloseActivity = true;
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
executorService.execute(() -> {
|
||||
try {
|
||||
mViewmodel.requestCloseLU(true);
|
||||
} catch (Exception e) {
|
||||
onError(e);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
handler.post(() -> {
|
||||
setEnabled(false);
|
||||
getOnBackPressedDispatcher().onBackPressed();
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
String codMdep = SettingsManager.i().getUserSession().getDepo().getCodMdep();
|
||||
mEnableFakeGiacenza = SettingsManager.iDB().isFlagSpedizioneEnableFakeGiacenza();
|
||||
@@ -243,27 +267,6 @@ public class SpedizioneActivity extends BaseActivity implements SpedizioneViewMo
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
if (this.mBindings.bottomSheetLuContent.isExpanded()) {
|
||||
this.mBindings.bottomSheetLuContent.collapse();
|
||||
} else if (!noLUPresent.getValue()) {
|
||||
this.mShouldCloseActivity = true;
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
executorService.execute(() -> {
|
||||
try {
|
||||
this.mViewmodel.requestCloseLU(true);
|
||||
} catch (Exception e) {
|
||||
onError(e);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
BarcodeManager.removeCallback(mBarcodeScannerInstanceID);
|
||||
handler.post(() -> {
|
||||
getOnBackPressedDispatcher().onBackPressed();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
private void initVars() {
|
||||
this.noLUPresent.observeForever(newValue -> {
|
||||
|
||||
@@ -968,7 +968,7 @@
|
||||
android:text="@string/action_close_ul"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:strokeColor="@color/colorPrimary"
|
||||
app:strokeColor="?colorPrimary"
|
||||
app:visibility="@{view.enabledLUCloseButton}" />
|
||||
|
||||
|
||||
@@ -981,7 +981,7 @@
|
||||
android:layout_marginEnd="4dp"
|
||||
android:layout_weight="1"
|
||||
android:onClick="@{() -> view.dismiss()}"
|
||||
android:paddingEnd="3dp"
|
||||
android:text="@string/abort"
|
||||
android:textColor="@color/red_400"
|
||||
app:strokeColor="@color/red_400"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
@@ -996,6 +996,7 @@
|
||||
android:layout_marginEnd="0dp"
|
||||
android:layout_weight="1"
|
||||
android:onClick="@{() -> view.save()}"
|
||||
android:text="@string/action_save"
|
||||
app:icon="@drawable/ic_save_24dp"
|
||||
app:iconGravity="textStart"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package it.integry.honeywellscannerlibrary;
|
||||
|
||||
import android.content.Context;
|
||||
import android.hardware.usb.UsbDevice;
|
||||
import android.os.Build;
|
||||
import android.util.Pair;
|
||||
import android.view.KeyEvent;
|
||||
@@ -28,6 +29,8 @@ public class HoneyWellBarcodeReader implements BarcodeReaderInterface {
|
||||
private AidcManager manager;
|
||||
private BarcodeReader barcodeReader;
|
||||
|
||||
private UsbDevice externalUsbScanner;
|
||||
|
||||
private static RunnableArgs<BarcodeScanDTO> mOnScanSuccessfull;
|
||||
private static RunnableArgs<Exception> mOnScanFailed;
|
||||
|
||||
@@ -40,11 +43,30 @@ public class HoneyWellBarcodeReader implements BarcodeReaderInterface {
|
||||
@Override
|
||||
public boolean isRightAdapter() {
|
||||
String model = Build.MODEL;
|
||||
List<String> compatibleModels = new ArrayList<>();
|
||||
compatibleModels.add("EDA50");
|
||||
compatibleModels.add("EDA51");
|
||||
compatibleModels.add("EDA52");
|
||||
compatibleModels.add("CT60");
|
||||
List<String> compatibleModels = new ArrayList<>() {{
|
||||
add("EDA50");
|
||||
add("EDA51");
|
||||
add("EDA52");
|
||||
add("CT60");
|
||||
}};
|
||||
|
||||
// UsbManager manager = (UsbManager) mContext.getSystemService(Context.USB_SERVICE);
|
||||
// HashMap<String, UsbDevice> deviceList = manager.getDeviceList();
|
||||
//
|
||||
// if(!deviceList.isEmpty()) {
|
||||
//
|
||||
// List<String> externalCompatibleUsbScanners = new ArrayList<>() {{
|
||||
// add("1980i");
|
||||
// }};
|
||||
//
|
||||
// for (UsbDevice device : deviceList.values()) {
|
||||
// String deviceName = device.getProductName();
|
||||
// if (deviceName != null && externalCompatibleUsbScanners.contains(deviceName.toLowerCase())) {
|
||||
// externalUsbScanner = device;
|
||||
// return true;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
return compatibleModels.contains(model);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user