diff --git a/CHANGELOG.TXT b/CHANGELOG.TXT index 8815cb65..b7da2ff2 100644 --- a/CHANGELOG.TXT +++ b/CHANGELOG.TXT @@ -6,11 +6,13 @@ Fix issue MR-79 - MoveUp/Down item doesn't work + Sort button broken Fix issue MR-80 - Reconnect previous sessions Fix issue MR-93 - Regional settings problem when using SQL connection in mRemoteNG + Fix issue MR-96 - When pressing SHIFT+F4 to create a new connection inside a folder, the new connections doesn't inherit any properties from its parent Fix issue MR-97 - Integrate Dutch translation Fix issue MR-98 - Integrate Russian and Ukranian translations Fix issue MR-99 - Integrate Spanish translation Fix issue MR-101 - Collapse all folders causes a NullReferenceException Fix issue MR-131 - RD Gateway does not respect setting for use different credentials + Fix issue MR-166 - Inheritance button is disabled on some connections Fix issue MR-172 - RDGatewayPassword is unencrypted in confCons.xml file Fix issue MR-176 - Del key while editing connection name triggers 'Delete Connection' Fix issue MR-181 - Sessions on startup diff --git a/mRemoteV1/UI/UI.Window.Tree.vb b/mRemoteV1/UI/UI.Window.Tree.vb index efe7a6ab..51d4b79a 100644 --- a/mRemoteV1/UI/UI.Window.Tree.vb +++ b/mRemoteV1/UI/UI.Window.Tree.vb @@ -997,33 +997,35 @@ Namespace UI #Region "Context Menu Actions" Public Sub AddConnection() Try - Dim nNode As TreeNode = mRemoteNG.Tree.Node.AddNode(mRemoteNG.Tree.Node.Type.Connection) + If tvConnections.SelectedNode Is Nothing Then tvConnections.SelectedNode = tvConnections.Nodes.Item(0) - If nNode IsNot Nothing Then - Dim nConI As New mRemoteNG.Connection.Info() - If Me.tvConnections.SelectedNode Is Nothing Then Me.tvConnections.SelectedNode = Me.tvConnections.Nodes.Item(0) - If TypeOf Me.tvConnections.SelectedNode.Tag Is mRemoteNG.Container.Info Then - nConI.Parent = Me.tvConnections.SelectedNode.Tag - Else - nConI.Inherit.TurnOffInheritanceCompletely() - End If - - nConI.TreeNode = nNode - - nNode.Tag = nConI - ConnectionList.Add(nConI) - - If mRemoteNG.Tree.Node.GetNodeType(Me.tvConnections.SelectedNode) = mRemoteNG.Tree.Node.Type.Connection Then - Me.tvConnections.SelectedNode.Parent.Nodes.Add(nNode) - Else - Me.tvConnections.SelectedNode.Nodes.Add(nNode) - End If - - Me.tvConnections.SelectedNode = nNode - Me.tvConnections.SelectedNode.BeginEdit() + Dim newTreeNode As TreeNode = mRemoteNG.Tree.Node.AddNode(mRemoteNG.Tree.Node.Type.Connection) + If newTreeNode Is Nothing Then + MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, "UI.Window.Tree.AddConnection() failed." & vbNewLine & "mRemoteNG.Tree.Node.AddNode() returned Nothing.", True) + Return End If + + Dim newConnectionInfo As New mRemoteNG.Connection.Info() + If mRemoteNG.Tree.Node.GetNodeType(tvConnections.SelectedNode) = mRemoteNG.Tree.Node.Type.Connection Then + newConnectionInfo.Parent = tvConnections.SelectedNode.Parent.Tag + Else + newConnectionInfo.Parent = tvConnections.SelectedNode.Tag + End If + + newConnectionInfo.TreeNode = newTreeNode + newTreeNode.Tag = newConnectionInfo + ConnectionList.Add(newConnectionInfo) + + If mRemoteNG.Tree.Node.GetNodeType(tvConnections.SelectedNode) = mRemoteNG.Tree.Node.Type.Connection Then + tvConnections.SelectedNode.Parent.Nodes.Add(newTreeNode) + Else + tvConnections.SelectedNode.Nodes.Add(newTreeNode) + End If + + tvConnections.SelectedNode = newTreeNode + tvConnections.SelectedNode.BeginEdit() Catch ex As Exception - MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, "AddConnection (UI.Window.Tree) failed" & vbNewLine & ex.Message, True) + MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, "UI.Window.Tree.AddConnection() failed." & vbNewLine & ex.Message, True) End Try End Sub