diff --git a/plugins/org.eclipse.tcf.te.core.terminals/src/org/eclipse/tcf/te/core/terminals/interfaces/constants/ITerminalsConnectorConstants.java b/plugins/org.eclipse.tcf.te.core.terminals/src/org/eclipse/tcf/te/core/terminals/interfaces/constants/ITerminalsConnectorConstants.java index d7ad345317a..fe7b65295b5 100644 --- a/plugins/org.eclipse.tcf.te.core.terminals/src/org/eclipse/tcf/te/core/terminals/interfaces/constants/ITerminalsConnectorConstants.java +++ b/plugins/org.eclipse.tcf.te.core.terminals/src/org/eclipse/tcf/te/core/terminals/interfaces/constants/ITerminalsConnectorConstants.java @@ -105,8 +105,6 @@ public interface ITerminalsConnectorConstants { /** * Property: Data flag to tell the terminal to not reconnect when hitting enter * in a disconnected terminal. - * The flag can be set by adding an IPropertiesContainer with the set - * flag as PROP_DATA. *

* Property Type: {@link Boolean} */ diff --git a/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/services/TerminalService.java b/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/services/TerminalService.java index c7857ca24a1..e06206e2a20 100644 --- a/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/services/TerminalService.java +++ b/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/services/TerminalService.java @@ -302,6 +302,9 @@ public class TerminalService implements ITerminalService { if (properties.get(ITerminalsConnectorConstants.PROP_FORCE_NEW) instanceof Boolean) { flags.put(ITerminalsConnectorConstants.PROP_FORCE_NEW, (Boolean)properties.get(ITerminalsConnectorConstants.PROP_FORCE_NEW)); } + if (properties.get(ITerminalsConnectorConstants.PROP_DATA_NO_RECONNECT) instanceof Boolean) { + flags.put(ITerminalsConnectorConstants.PROP_DATA_NO_RECONNECT, (Boolean)properties.get(ITerminalsConnectorConstants.PROP_DATA_NO_RECONNECT)); + } // Open the new console CTabItem item; if (secondaryId != null) diff --git a/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/tabs/TabFolderManager.java b/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/tabs/TabFolderManager.java index ab04d4d878b..41e53b33a01 100644 --- a/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/tabs/TabFolderManager.java +++ b/plugins/org.eclipse.tcf.te.ui.terminals/src/org/eclipse/tcf/te/ui/terminals/tabs/TabFolderManager.java @@ -237,7 +237,7 @@ public class TabFolderManager extends PlatformObject implements ISelectionProvid * * @return The created tab item or null if failed. */ - @SuppressWarnings({ "unused", "unchecked" }) + @SuppressWarnings("unused") public CTabItem createTabItem(String title, String encoding, ITerminalConnector connector, Object data, Map flags) { Assert.isNotNull(title); Assert.isNotNull(connector); @@ -272,8 +272,8 @@ public class TabFolderManager extends PlatformObject implements ISelectionProvid // Create the terminal control ITerminalViewControl terminal = TerminalViewControlFactory.makeControl(doCreateTerminalTabTerminalListener(this, item), composite, new ITerminalConnector[] { connector }, true); - if (terminal instanceof ITerminalControl && data instanceof Map) { - Object value = ((Map)data).get(ITerminalsConnectorConstants.PROP_DATA_NO_RECONNECT); + if (terminal instanceof ITerminalControl && flags.containsKey(ITerminalsConnectorConstants.PROP_DATA_NO_RECONNECT)) { + Object value = flags.get(ITerminalsConnectorConstants.PROP_DATA_NO_RECONNECT); boolean noReconnect = value instanceof Boolean ? ((Boolean)value).booleanValue() : false; ((ITerminalControl)terminal).setConnectOnEnterIfClosed(!noReconnect); }