diff --git a/plugins/org.eclipse.tm.terminal.connector.ssh/src/org/eclipse/tm/terminal/connector/ssh/launcher/SshLauncherDelegate.java b/plugins/org.eclipse.tm.terminal.connector.ssh/src/org/eclipse/tm/terminal/connector/ssh/launcher/SshLauncherDelegate.java index 6aa85cf26df..8a42867bd63 100644 --- a/plugins/org.eclipse.tm.terminal.connector.ssh/src/org/eclipse/tm/terminal/connector/ssh/launcher/SshLauncherDelegate.java +++ b/plugins/org.eclipse.tm.terminal.connector.ssh/src/org/eclipse/tm/terminal/connector/ssh/launcher/SshLauncherDelegate.java @@ -90,7 +90,14 @@ public class SshLauncherDelegate extends AbstractLauncherDelegate { * * @return The terminal title string or null. */ - private String getTerminalTitle(Map properties) { + private String getTerminalTitle(Map properties) { + //Try to see if the user set a title explicitly via the properties map. + String title = getDefaultTerminalTitle(properties); + if(title!=null){ + return title; + } + + //No title,try to calculate the title String host = (String)properties.get(ITerminalsConnectorConstants.PROP_IP_HOST); String user = (String)properties.get(ITerminalsConnectorConstants.PROP_SSH_USER); Object value = properties.get(ITerminalsConnectorConstants.PROP_IP_PORT); diff --git a/plugins/org.eclipse.tm.terminal.connector.telnet/src/org/eclipse/tm/terminal/connector/telnet/launcher/TelnetLauncherDelegate.java b/plugins/org.eclipse.tm.terminal.connector.telnet/src/org/eclipse/tm/terminal/connector/telnet/launcher/TelnetLauncherDelegate.java index deceae81a9e..5063882c475 100644 --- a/plugins/org.eclipse.tm.terminal.connector.telnet/src/org/eclipse/tm/terminal/connector/telnet/launcher/TelnetLauncherDelegate.java +++ b/plugins/org.eclipse.tm.terminal.connector.telnet/src/org/eclipse/tm/terminal/connector/telnet/launcher/TelnetLauncherDelegate.java @@ -89,7 +89,14 @@ public class TelnetLauncherDelegate extends AbstractLauncherDelegate { * * @return The terminal title string or null. */ - private String getTerminalTitle(Map properties) { + private String getTerminalTitle(Map properties) { + //Try to see if the user set a title explicitly via the properties map. + String title = getDefaultTerminalTitle(properties); + if(title!=null){ + return title; + } + + //No title,try to calculate the title String host = (String)properties.get(ITerminalsConnectorConstants.PROP_IP_HOST); if (host != null) { diff --git a/plugins/org.eclipse.tm.terminal.view.ui/src/org/eclipse/tm/terminal/view/ui/launcher/AbstractLauncherDelegate.java b/plugins/org.eclipse.tm.terminal.view.ui/src/org/eclipse/tm/terminal/view/ui/launcher/AbstractLauncherDelegate.java index 1970d0765c8..0059bdef1dd 100644 --- a/plugins/org.eclipse.tm.terminal.view.ui/src/org/eclipse/tm/terminal/view/ui/launcher/AbstractLauncherDelegate.java +++ b/plugins/org.eclipse.tm.terminal.view.ui/src/org/eclipse/tm/terminal/view/ui/launcher/AbstractLauncherDelegate.java @@ -9,6 +9,8 @@ *******************************************************************************/ package org.eclipse.tm.terminal.view.ui.launcher; +import java.util.Map; + import org.eclipse.core.expressions.Expression; import org.eclipse.core.expressions.ExpressionConverter; import org.eclipse.core.runtime.Assert; @@ -18,6 +20,7 @@ import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.PlatformObject; import org.eclipse.core.runtime.Status; import org.eclipse.osgi.util.NLS; +import org.eclipse.tm.terminal.view.core.interfaces.constants.ITerminalsConnectorConstants; import org.eclipse.tm.terminal.view.ui.activator.UIPlugin; import org.eclipse.tm.terminal.view.ui.interfaces.ILauncherDelegate; import org.eclipse.tm.terminal.view.ui.nls.Messages; @@ -140,4 +143,18 @@ public abstract class AbstractLauncherDelegate extends PlatformObject implements public int hashCode() { return id.hashCode(); } + + /** + * Get the title from the settings, and use it as the default title. + * @param properties the setting properties map. + * @return the value retrieved via the @see {@link ITerminalsConnectorConstants#PROP_TITLE}, or null if the key hasn't been set. + */ + protected String getDefaultTerminalTitle(Map properties) { + String title = (String)properties.get(ITerminalsConnectorConstants.PROP_TITLE); + + if (title != null) { + return title; + } + return null; + } }