Fix: crash on failed connect, add sidebar edit/delete, password saving
- Fix crash when SSH connect fails: remove page BEFORE deleting terminal - Sidebar right-click context menu: Connect / Edit / Delete - Password field + Save password checkbox in server dialog - ServerConfig stores password and save_password fields - Auto-connect uses saved password when available - Restore original flaticon icon
This commit is contained in:
@@ -2,15 +2,16 @@
|
||||
|
||||
A GTK3-based SSH client with a tabbed terminal interface, server sidebar, notifications, and SSH key storage.
|
||||
|
||||

|
||||

|
||||
|
||||
## Features
|
||||
|
||||
- **Tabbed terminal** - Multiple SSH sessions in tabs
|
||||
- **Server sidebar** - Saved servers displayed in a sidebar, double-click to connect
|
||||
- **Server sidebar** - Saved servers in a sidebar, double-click to connect, right-click for Edit/Delete
|
||||
- **Quick connect** - Connect directly via host/user/port fields in the toolbar
|
||||
- **Password storage** - Optionally save passwords with servers (stored in config file)
|
||||
- **SSH key management** - Generate, import, and manage SSH keys
|
||||
- **Notifications** - Animated notification bar for status messages (saved, connected, disconnected, errors)
|
||||
- **Notifications** - Animated notification bar for status messages
|
||||
- **VTE terminal** - Full terminal emulation with 256 color support
|
||||
- **Resizable pty** - Terminal auto-resizes the remote pty on window resize
|
||||
- **System integration** - `.desktop` file and icon for application menu entry
|
||||
@@ -63,11 +64,25 @@ SSH keys are stored in:
|
||||
## Usage
|
||||
|
||||
1. Start the application: `x3-ssh`
|
||||
2. **Server Sidebar**: Saved servers appear in the left sidebar. Double-click to connect.
|
||||
2. **Server Sidebar**: Saved servers appear in the left sidebar
|
||||
- **Double-click** to connect
|
||||
- **Right-click** for context menu (Connect / Edit / Delete)
|
||||
- Click `+` to add a new server
|
||||
3. **Quick Connect**: Enter host, user, and port in the toolbar, click "Connect"
|
||||
4. **Add Server**: Click the `+` button in the sidebar header, or use the "Add Server" dialog
|
||||
5. **SSH Keys**: Click "Keys" in the toolbar to generate or import SSH keys
|
||||
6. **Tabs**: Click "+ Tab" for a new empty tab, "Close Tab" to close the current one
|
||||
4. **SSH Keys**: Click "Keys" in the toolbar to generate or import SSH keys
|
||||
5. **Tabs**: Click "+ Tab" for a new empty tab, "Close Tab" to close the current one
|
||||
|
||||
## Server Dialog Fields
|
||||
|
||||
| Field | Description |
|
||||
|-------|-------------|
|
||||
| Name | Display name for the server |
|
||||
| Host | Hostname or IP address |
|
||||
| User | SSH username |
|
||||
| Port | SSH port (default: 22) |
|
||||
| Password | Optional, can be saved |
|
||||
| Save password | Checkbox to store password in config |
|
||||
| SSH Key | Optional key for public key authentication |
|
||||
|
||||
## Notifications
|
||||
|
||||
@@ -90,7 +105,7 @@ Notifications auto-hide after 4 seconds.
|
||||
│ [Server▼] [host___] [user___] [port] [Connect] ...│
|
||||
├───────────┬────────────────────────────────────────┤
|
||||
│ Servers │ [Tab: MyServer] [Tab: Prod] [+] │
|
||||
│ ─────── │ │
|
||||
│ +─────── │ │
|
||||
│ MyServer │ user@host:~$ │
|
||||
│ root@h:22 │ │
|
||||
│ │ │
|
||||
@@ -101,6 +116,15 @@ Notifications auto-hide after 4 seconds.
|
||||
└────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
Right-click on a server in the sidebar:
|
||||
```
|
||||
┌──────────┐
|
||||
│ Connect │
|
||||
│ Edit │
|
||||
│ Delete │
|
||||
└──────────┘
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
|
||||
Reference in New Issue
Block a user