From 361443d8450bb8807f777713e0afab4dc8d45b52 Mon Sep 17 00:00:00 2001 From: austinio7116 Date: Fri, 23 Feb 2018 21:20:25 +0000 Subject: [PATCH] Extended multiplayer chat text box to 255 character max from 60 Prevented the game from stealing focus from the multi player chat box to ensure you do not auto end turn or pass priority due to typing in chat when you regain priority --- forge-gui-desktop/src/main/java/forge/gui/FNetOverlay.java | 6 +++++- .../src/main/java/forge/screens/match/CMatchUI.java | 7 ++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/forge-gui-desktop/src/main/java/forge/gui/FNetOverlay.java b/forge-gui-desktop/src/main/java/forge/gui/FNetOverlay.java index bb2e716c2e9..041ed3d4e7a 100644 --- a/forge-gui-desktop/src/main/java/forge/gui/FNetOverlay.java +++ b/forge-gui-desktop/src/main/java/forge/gui/FNetOverlay.java @@ -72,7 +72,7 @@ public enum FNetOverlay implements IOnlineChatInterface { } private final FTextArea txtLog = new FTextArea(); - private final FTextField txtInput = new FTextField.Builder().maxLength(60).build(); + private final FTextField txtInput = new FTextField.Builder().maxLength(255).build(); private final FLabel cmdSend = new FLabel.ButtonBuilder().text("Send").build(); //private boolean minimized = false; @@ -98,6 +98,10 @@ public enum FNetOverlay implements IOnlineChatInterface { } }; + public FTextField getTxtInput(){ + return txtInput; + } + /** * Semi-transparent overlay panel. Should be used with layered panes. */ diff --git a/forge-gui-desktop/src/main/java/forge/screens/match/CMatchUI.java b/forge-gui-desktop/src/main/java/forge/screens/match/CMatchUI.java index 8e052c27a22..fabd92e56e7 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/match/CMatchUI.java +++ b/forge-gui-desktop/src/main/java/forge/screens/match/CMatchUI.java @@ -59,10 +59,7 @@ import forge.game.player.IHasIcon; import forge.game.player.PlayerView; import forge.game.spellability.SpellAbilityView; import forge.game.zone.ZoneType; -import forge.gui.GuiChoose; -import forge.gui.GuiDialog; -import forge.gui.GuiUtils; -import forge.gui.SOverlayUtils; +import forge.gui.*; import forge.gui.framework.DragCell; import forge.gui.framework.EDocID; import forge.gui.framework.FScreen; @@ -586,7 +583,7 @@ public final class CMatchUI btn1.setFocusable(enable1 && focus1 ); btn2.setFocusable(enable2 && !focus1); // ensure we don't steal focus from an overlay - if (toFocus != null) { + if (toFocus != null && !FNetOverlay.SINGLETON_INSTANCE.getTxtInput().hasFocus() ) { toFocus.requestFocus(); // focus here even if another window has focus - shouldn't have to do it this way but some popups grab window focus } }