diff --git a/src/main/java/forge/gui/home/quest/CSubmenuChallenges.java b/src/main/java/forge/gui/home/quest/CSubmenuChallenges.java index 4a54b86c25f..277a17c3ec5 100644 --- a/src/main/java/forge/gui/home/quest/CSubmenuChallenges.java +++ b/src/main/java/forge/gui/home/quest/CSubmenuChallenges.java @@ -3,10 +3,13 @@ package forge.gui.home.quest; import java.awt.Color; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyEvent; import java.util.List; import javax.swing.ButtonGroup; import javax.swing.SwingConstants; +import javax.swing.SwingUtilities; import javax.swing.border.EmptyBorder; import forge.Command; @@ -93,6 +96,15 @@ public enum CSubmenuChallenges implements ICDoc { }); } + private final KeyAdapter _startOnEnter = new KeyAdapter() { + @Override + public void keyPressed(KeyEvent e) { + if (KeyEvent.VK_ENTER == e.getKeyChar()) { + VSubmenuChallenges.SINGLETON_INSTANCE.getBtnStart().doClick(); + } + } + }; + /* (non-Javadoc) * @see forge.control.home.IControlSubmenu#update() */ @@ -114,7 +126,13 @@ public enum CSubmenuChallenges implements ICDoc { for (int i = 0; i < challenges.size(); i++) { final PnlEvent temp = new PnlEvent(challenges.get(i)); grp.add(temp.getRad()); - if (i == 0) { temp.getRad().setSelected(true); } + if (i == 0) { + temp.getRad().setSelected(true); + SwingUtilities.invokeLater(new Runnable() { + @Override public void run() { temp.getRad().requestFocusInWindow(); } + }); + } + temp.getRad().addKeyListener(_startOnEnter); view.getPnlChallenges().add(temp, "w 96%!, h 135px!, gap 2% 0 15px 15px"); } @@ -127,6 +145,9 @@ public enum CSubmenuChallenges implements ICDoc { lbl.setBorder(new EmptyBorder(10, 10, 10, 10)); lbl.setOpaque(true); view.getPnlChallenges().add(lbl, "w 50%!, h 30px!, gap 25% 0 50px 0"); + SwingUtilities.invokeLater(new Runnable() { + @Override public void run() { view.getBtnTravel().requestFocusInWindow(); } + }); } Singletons.getView().getFrame().validate(); diff --git a/src/main/java/forge/gui/home/quest/CSubmenuDuels.java b/src/main/java/forge/gui/home/quest/CSubmenuDuels.java index 15fe420f114..361ffddf7fe 100644 --- a/src/main/java/forge/gui/home/quest/CSubmenuDuels.java +++ b/src/main/java/forge/gui/home/quest/CSubmenuDuels.java @@ -2,9 +2,12 @@ package forge.gui.home.quest; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyEvent; import java.util.List; import javax.swing.ButtonGroup; +import javax.swing.SwingUtilities; import forge.Command; import forge.Singletons; @@ -75,6 +78,15 @@ public enum CSubmenuDuels implements ICDoc { }); } + private final KeyAdapter _startOnEnter = new KeyAdapter() { + @Override + public void keyPressed(KeyEvent e) { + if (KeyEvent.VK_ENTER == e.getKeyChar()) { + VSubmenuDuels.SINGLETON_INSTANCE.getBtnStart().doClick(); + } + } + }; + /* (non-Javadoc) * @see forge.control.home.IControlSubmenu#update() */ @@ -95,7 +107,13 @@ public enum CSubmenuDuels implements ICDoc { for (int i = 0; i < duels.size(); i++) { final PnlEvent temp = new PnlEvent(duels.get(i)); grp.add(temp.getRad()); - if (i == 0) { temp.getRad().setSelected(true); } + if (i == 0) { + temp.getRad().setSelected(true); + SwingUtilities.invokeLater(new Runnable() { + @Override public void run() { temp.getRad().requestFocusInWindow(); } + }); + } + temp.getRad().addKeyListener(_startOnEnter); view.getPnlDuels().add(temp, "w 96%!, h 135px!, gap 2% 0 15px 15px"); } } diff --git a/src/main/java/forge/gui/home/quest/VSubmenuChallenges.java b/src/main/java/forge/gui/home/quest/VSubmenuChallenges.java index b1f2a1d6ef0..627ff839498 100644 --- a/src/main/java/forge/gui/home/quest/VSubmenuChallenges.java +++ b/src/main/java/forge/gui/home/quest/VSubmenuChallenges.java @@ -149,10 +149,9 @@ public enum VSubmenuChallenges implements IVSubmenu, IVQuest VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(lblInfo, "h 30px!, span 2"); VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(lblCurrentDeck, "span 2"); VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(lblNextChallengeInWins, "span 2, gap 0 0 0 20px"); - VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(scrChallenges, "w 88% - 175px!, pushy, growy"); VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(pnlStats, "w 185px!, pushy, growy, gap 4% 4% 0 0, span 1 2"); - VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(btnStart, "gap 0 0 50px 50px, ax center"); + VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(btnStart, "gap 0 0 30px 30px, ax center"); VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().repaintSelf(); VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().revalidate(); diff --git a/src/main/java/forge/gui/home/quest/VSubmenuDuels.java b/src/main/java/forge/gui/home/quest/VSubmenuDuels.java index 5dcebdf50a1..67d01140de0 100644 --- a/src/main/java/forge/gui/home/quest/VSubmenuDuels.java +++ b/src/main/java/forge/gui/home/quest/VSubmenuDuels.java @@ -47,8 +47,7 @@ public enum VSubmenuDuels implements IVSubmenu, IVQuestStats { private final JButton btnStart = new StartButton(); private final JComboBox cbxPet = new JComboBox(); private final JCheckBox cbPlant = new FCheckBox("Summon Plant"); - private final JLabel lblZep = new FLabel.Builder().text("Launch Zeppelin") - .fontSize(14).build(); + private final JLabel lblZep = new FLabel.Builder().text("Launch Zeppelin").fontSize(14).build(); private final FLabel lblWorld = new FLabel.Builder() .icon(FSkin.getIcon(FSkin.QuestIcons.ICO_MAP)) @@ -147,11 +146,9 @@ public enum VSubmenuDuels implements IVSubmenu, IVQuestStats { VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(lblInfo, "h 30px!, span 2"); VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(lblCurrentDeck, "span 2"); VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(lblNextChallengeInWins, "span 2, gap 0 0 0 20px"); - VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(scrDuels, "w 88% - 175px!, pushy, growy"); VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(pnlStats, "w 185px!, pushy, growy, gap 4% 4% 0 0, span 1 2"); - - VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(btnStart, "gap 0 0 50px 50px, ax center"); + VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().add(btnStart, "gap 0 0 30px 30px, ax center"); VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().repaintSelf(); VHomeUI.SINGLETON_INSTANCE.getPnlDisplay().revalidate(); diff --git a/src/main/java/forge/gui/toolbox/FRadioButton.java b/src/main/java/forge/gui/toolbox/FRadioButton.java index 9ef8a613129..da9764e7788 100644 --- a/src/main/java/forge/gui/toolbox/FRadioButton.java +++ b/src/main/java/forge/gui/toolbox/FRadioButton.java @@ -1,8 +1,5 @@ package forge.gui.toolbox; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; - import javax.swing.JRadioButton; /** @@ -20,21 +17,7 @@ public class FRadioButton extends JRadioButton { super(); this.setText(s0); this.setForeground(FSkin.getColor(FSkin.Colors.CLR_TEXT)); - this.setBackground(FSkin.getColor(FSkin.Colors.CLR_HOVER)); this.setFont(FSkin.getFont(14)); this.setOpaque(false); - - this.addMouseListener(new MouseAdapter() { - @Override - public void mouseEntered(MouseEvent e) { - setOpaque(true); - } - - @Override - public void mouseExited(MouseEvent e) { - setOpaque(false); - } - }); } - }