From b0cd90b8e7677e224b3ecc4559a44f63f8e5f7e6 Mon Sep 17 00:00:00 2001 From: drdev Date: Sat, 9 May 2015 21:21:41 +0000 Subject: [PATCH] Fix combo box drop down for landscape --- forge-gui-mobile/src/forge/menu/FDropDown.java | 4 ++-- forge-gui-mobile/src/forge/screens/FScreen.java | 3 +++ forge-gui-mobile/src/forge/toolbox/FComboBox.java | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) 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;