diff --git a/forge-gui-mobile/src/forge/menu/FDropDown.java b/forge-gui-mobile/src/forge/menu/FDropDown.java index 73ca83857a2..d1e251037ed 100644 --- a/forge-gui-mobile/src/forge/menu/FDropDown.java +++ b/forge-gui-mobile/src/forge/menu/FDropDown.java @@ -91,7 +91,7 @@ public abstract class FDropDown extends FScrollPane { if (visible0) { updateSizeAndPosition(); - if (autoHide()) { //add invisible backdrop if needed to allow auto-hiding when pressing outide drop down + if (autoHide()) { //add invisible backdrop if needed to allow auto-hiding when pressing outside drop down backdrop = new Backdrop(); backdrop.setSize(container.getWidth(), container.getHeight()); container.add(backdrop); @@ -203,7 +203,7 @@ public abstract class FDropDown extends FScrollPane { @Override public boolean press(float x, float y) { - if (hideBackdropOnPress(x, y)) { + if (hideBackdropOnPress(localToScreenX(x), y)) { hide(); } return false; //allow press to pass through to object behind backdrop diff --git a/forge-gui-mobile/src/forge/screens/FScreen.java b/forge-gui-mobile/src/forge/screens/FScreen.java index 7d3ddd84855..b68847d782e 100644 --- a/forge-gui-mobile/src/forge/screens/FScreen.java +++ b/forge-gui-mobile/src/forge/screens/FScreen.java @@ -147,6 +147,9 @@ public abstract class FScreen extends FContainer { @Override protected void drawBackground(Graphics g) { + if (Forge.isLandscapeMode() && getLandscapeBackdropScreen() != null) { + return; //don't draw background if this screen has a backdrop + } float w = getWidth(); float h = getHeight(); g.drawImage(FSkinTexture.BG_TEXTURE, 0, 0, w, h); diff --git a/forge-gui-mobile/src/forge/toolbox/FComboBox.java b/forge-gui-mobile/src/forge/toolbox/FComboBox.java index 206c2dbffb5..b42d042efd1 100644 --- a/forge-gui-mobile/src/forge/toolbox/FComboBox.java +++ b/forge-gui-mobile/src/forge/toolbox/FComboBox.java @@ -243,7 +243,7 @@ public class FComboBox extends FTextField implements IComboBox { FScreen screen = Forge.getCurrentScreen(); float screenHeight = screen.getHeight(); - float x = FComboBox.this.localToScreenX(0); + float x = screen.screenToLocalX(FComboBox.this.localToScreenX(0)); float y = FComboBox.this.localToScreenY(FComboBox.this.getHeight()); float maxVisibleHeight = screenHeight - y;