mirror of
https://github.com/bisq-network/bisq.git
synced 2025-02-24 23:18:17 +01:00
Split up edit open offer process in two steps
This commit is contained in:
parent
96beeb2dbb
commit
6e50e53e13
3 changed files with 40 additions and 10 deletions
|
@ -43,7 +43,7 @@ import bisq.common.handlers.ResultHandler;
|
|||
|
||||
import com.google.inject.Inject;
|
||||
|
||||
public class EditOpenOfferDataModel extends EditableOfferDataModel {
|
||||
class EditOpenOfferDataModel extends EditableOfferDataModel {
|
||||
|
||||
private OpenOffer openOffer;
|
||||
|
||||
|
@ -68,6 +68,10 @@ public class EditOpenOfferDataModel extends EditableOfferDataModel {
|
|||
if (offer.isUseMarketBasedPrice()) setMarketPriceMargin(offer.getMarketPriceMargin());
|
||||
}
|
||||
|
||||
public void startEditOffer(ErrorMessageHandler errorMessageHandler) {
|
||||
openOfferManager.editOpenOfferStart(openOffer, () -> {}, errorMessageHandler);
|
||||
}
|
||||
|
||||
public void onPublishOffer(ResultHandler resultHandler, ErrorMessageHandler errorMessageHandler) {
|
||||
final OfferPayload offerPayload = openOffer.getOffer().getOfferPayload();
|
||||
final OfferPayload editedPayload = new OfferPayload(offerPayload.getId(),
|
||||
|
@ -113,6 +117,10 @@ public class EditOpenOfferDataModel extends EditableOfferDataModel {
|
|||
editedOffer.setPriceFeedService(priceFeedService);
|
||||
editedOffer.setState(Offer.State.AVAILABLE);
|
||||
|
||||
openOfferManager.editOpenOffer(openOffer, editedOffer, resultHandler, errorMessageHandler);
|
||||
openOfferManager.editOpenOfferPublish(editedOffer, resultHandler, errorMessageHandler);
|
||||
}
|
||||
|
||||
public void cancelEditOffer(ErrorMessageHandler errorMessageHandler) {
|
||||
openOfferManager.editOpenOfferCancel(openOffer, () -> {}, errorMessageHandler);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -21,8 +21,6 @@ import bisq.desktop.Navigation;
|
|||
import bisq.desktop.common.view.FxmlView;
|
||||
import bisq.desktop.components.BusyAnimation;
|
||||
import bisq.desktop.main.MainView;
|
||||
import bisq.desktop.main.funds.FundsView;
|
||||
import bisq.desktop.main.funds.withdrawal.WithdrawalView;
|
||||
import bisq.desktop.main.offer.EditableOfferView;
|
||||
import bisq.desktop.main.overlays.popups.Popup;
|
||||
import bisq.desktop.main.overlays.windows.OfferDetailsWindow;
|
||||
|
@ -30,7 +28,6 @@ import bisq.desktop.main.portfolio.PortfolioView;
|
|||
import bisq.desktop.main.portfolio.openoffer.OpenOffersView;
|
||||
import bisq.desktop.util.BSFormatter;
|
||||
import bisq.desktop.util.BsqFormatter;
|
||||
import bisq.desktop.util.FormBuilder;
|
||||
import bisq.desktop.util.Transitions;
|
||||
|
||||
import bisq.core.locale.CurrencyUtil;
|
||||
|
@ -120,11 +117,12 @@ public class EditOpenOfferView extends EditableOfferView<EditOpenOfferViewModel>
|
|||
.dontShowAgainId(key)
|
||||
.show();
|
||||
spinnerInfoLabel.setText("");
|
||||
onClose();
|
||||
close();
|
||||
}, (message) -> {
|
||||
log.error(message);
|
||||
spinnerInfoLabel.setText("");
|
||||
new Popup<>().warning(Res.get("offerbook.editOffer.failed", message)).show();
|
||||
new Popup<>().warning(Res.get("offerbook.editOffer.publishFailed", message)).show();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
@ -141,10 +139,27 @@ public class EditOpenOfferView extends EditableOfferView<EditOpenOfferViewModel>
|
|||
updateMarketPriceAvailable();
|
||||
updateElementsWithDirection();
|
||||
|
||||
model.startEditOffer(errorMessage -> {
|
||||
log.error(errorMessage);
|
||||
new Popup<>().warning(Res.get("offerbook.editOffer.startFailed", errorMessage))
|
||||
.onClose(() -> {
|
||||
close();
|
||||
})
|
||||
.show();
|
||||
});
|
||||
|
||||
model.invalidateMarketPriceMargin();
|
||||
model.invalidatePrice();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onClose() {
|
||||
model.cancelEditOffer(errorMessage -> {
|
||||
log.error(errorMessage);
|
||||
new Popup<>().warning(Res.get("offerbook.editOffer.cancelFailed", errorMessage)).show();
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void deactivate() {
|
||||
super.deactivate();
|
||||
|
@ -152,11 +167,11 @@ public class EditOpenOfferView extends EditableOfferView<EditOpenOfferViewModel>
|
|||
removeBindings();
|
||||
}
|
||||
|
||||
private void addBindings(){
|
||||
private void addBindings() {
|
||||
confirmButton.disableProperty().bind(model.isNextButtonDisabled);
|
||||
}
|
||||
|
||||
private void removeBindings(){
|
||||
private void removeBindings() {
|
||||
confirmButton.disableProperty().unbind();
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,6 @@ import bisq.desktop.util.validation.FiatVolumeValidator;
|
|||
import bisq.desktop.util.validation.SecurityDepositValidator;
|
||||
|
||||
import bisq.core.btc.wallet.WalletsSetup;
|
||||
import bisq.core.monetary.Price;
|
||||
import bisq.core.offer.OpenOffer;
|
||||
import bisq.core.provider.price.PriceFeedService;
|
||||
import bisq.core.user.Preferences;
|
||||
|
@ -41,7 +40,7 @@ import bisq.common.handlers.ResultHandler;
|
|||
|
||||
import com.google.inject.Inject;
|
||||
|
||||
public class EditOpenOfferViewModel extends EditableOfferViewModel<EditOpenOfferDataModel> {
|
||||
class EditOpenOfferViewModel extends EditableOfferViewModel<EditOpenOfferDataModel> {
|
||||
|
||||
@Inject
|
||||
public EditOpenOfferViewModel(EditOpenOfferDataModel dataModel, FiatVolumeValidator fiatVolumeValidator, FiatPriceValidator fiatPriceValidator, AltcoinValidator altcoinValidator, BtcValidator btcValidator, BsqValidator bsqValidator, SecurityDepositValidator securityDepositValidator, P2PService p2PService, WalletsSetup walletsSetup, PriceFeedService priceFeedService, Navigation navigation, Preferences preferences, BSFormatter btcFormatter, BsqFormatter bsqFormatter) {
|
||||
|
@ -71,4 +70,12 @@ public class EditOpenOfferViewModel extends EditableOfferViewModel<EditOpenOffer
|
|||
price.set(btcFormatter.formatPrice(null));
|
||||
price.set(btcFormatter.formatPrice(dataModel.getPrice().get()));
|
||||
}
|
||||
|
||||
public void startEditOffer(ErrorMessageHandler errorMessageHandler) {
|
||||
dataModel.startEditOffer(errorMessageHandler);
|
||||
}
|
||||
|
||||
public void cancelEditOffer(ErrorMessageHandler errorMessageHandler) {
|
||||
dataModel.cancelEditOffer(errorMessageHandler);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue