Compare commits

..

1 Commits

Author SHA1 Message Date
dependabot[bot]
a5c524f761 chore(deps): bump com.github.mwiede:jsch from 2.27.3 to 2.27.7
Bumps [com.github.mwiede:jsch](https://github.com/mwiede/jsch) from 2.27.3 to 2.27.7.
- [Release notes](https://github.com/mwiede/jsch/releases)
- [Changelog](https://github.com/mwiede/jsch/blob/master/ChangeLog)
- [Commits](https://github.com/mwiede/jsch/compare/jsch-2.27.3...jsch-2.27.7)

---
updated-dependencies:
- dependency-name: com.github.mwiede:jsch
  dependency-version: 2.27.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-28 02:17:27 +00:00
17 changed files with 34 additions and 74 deletions

View File

@@ -1,16 +1,16 @@
[versions] [versions]
kotlin = "2.3.0" kotlin = "2.2.21"
slf4j = "2.0.17" slf4j = "2.0.17"
pty4j = "0.13.10" pty4j = "0.13.10"
tinylog = "2.7.0" tinylog = "2.7.0"
kotlinx-coroutines = "1.10.2" kotlinx-coroutines = "1.10.2"
flatlaf = "3.7" flatlaf = "3.6.2"
kotlinx-serialization-json = "1.9.0" kotlinx-serialization-json = "1.9.0"
commons-codec = "1.20.0" commons-codec = "1.20.0"
commons-lang3 = "3.20.0" commons-lang3 = "3.20.0"
commons-csv = "1.14.1" commons-csv = "1.14.1"
commons-net = "3.12.0" commons-net = "3.12.0"
commons-text = "1.15.0" commons-text = "1.14.0"
commons-compress = "1.28.0" commons-compress = "1.28.0"
commons-vfs2 = "2.10.0" commons-vfs2 = "2.10.0"
swingx = "1.6.5-1" swingx = "1.6.5-1"
@@ -20,10 +20,10 @@ oshi = "6.9.1"
versioncompare = "1.4.1" versioncompare = "1.4.1"
jna = "5.18.1" jna = "5.18.1"
jSystemThemeDetector = "3.9.1" jSystemThemeDetector = "3.9.1"
commons-io = "2.21.0" commons-io = "2.20.0"
jbr-api = "17.1.10.1" jbr-api = "17.1.10.1"
hutool = "5.8.40" hutool = "5.8.40"
jsch = "2.27.3" jsch = "2.27.7"
okhttp = "5.3.0" okhttp = "5.3.0"
sshj = "0.39.0" sshj = "0.39.0"
sshd-core = "2.15.0" sshd-core = "2.15.0"
@@ -33,18 +33,18 @@ jnafilechooser = "1.1.2"
xodus = "2.0.1" xodus = "2.0.1"
bip39 = "1.0.9" bip39 = "1.0.9"
colorpicker = "2.0.1" colorpicker = "2.0.1"
rhino = "1.9.0" rhino = "1.8.0"
delight-rhino-sandbox = "0.2.1" delight-rhino-sandbox = "0.2.1"
testcontainers = "2.0.3" testcontainers = "2.0.1"
mixpanel = "1.7.0" mixpanel = "1.5.4"
jSerialComm = "2.11.4" jSerialComm = "2.11.4"
ini4j = "0.5.5-2" ini4j = "0.5.5-2"
restart4j = "0.0.1" restart4j = "0.0.1"
eddsa = "0.3.0" eddsa = "0.3.0"
exposed = "1.0.0-rc-4" exposed = "1.0.0-rc-2"
h2 = "2.3.232" h2 = "2.3.232"
sqlite = "3.50.3.0" sqlite = "3.50.3.0"
jug = "5.2.0" jug = "5.1.1"
semver4j = "6.0.0" semver4j = "6.0.0"
jsvg = "2.0.0" jsvg = "2.0.0"
dom4j = "2.2.0" dom4j = "2.2.0"

View File

@@ -8,7 +8,7 @@ project.version = "0.0.4"
dependencies { dependencies {
testImplementation(kotlin("test")) testImplementation(kotlin("test"))
implementation("com.qcloud:cos_api:5.6.260.1") implementation("com.qcloud:cos_api:5.6.259")
compileOnly(project(":")) compileOnly(project(":"))
} }

View File

@@ -10,7 +10,7 @@ project.version = "0.0.8"
dependencies { dependencies {
testImplementation(kotlin("test")) testImplementation(kotlin("test"))
compileOnly(project(":")) compileOnly(project(":"))
implementation("com.fifesoft:rsyntaxtextarea:3.6.1") implementation("com.fifesoft:rsyntaxtextarea:3.6.0")
implementation("com.fifesoft:languagesupport:3.4.0") implementation("com.fifesoft:languagesupport:3.4.0")
implementation("com.fifesoft:autocomplete:3.3.2") implementation("com.fifesoft:autocomplete:3.3.2")
} }

View File

@@ -7,7 +7,7 @@ project.version = "0.0.2"
dependencies { dependencies {
testImplementation(kotlin("test")) testImplementation(kotlin("test"))
compileOnly(project(":")) compileOnly(project(":"))
implementation("org.apache.commons:commons-pool2:2.13.0") implementation("org.apache.commons:commons-pool2:2.12.1")
testImplementation(project(":")) testImplementation(project(":"))
} }

View File

@@ -547,7 +547,6 @@ class SettingsOptionsPane : OptionsPane() {
rightClickComboBox.addItem("Copy") rightClickComboBox.addItem("Copy")
rightClickComboBox.addItem("CopyAndPaste") rightClickComboBox.addItem("CopyAndPaste")
rightClickComboBox.addItem("Nothing")
rightClickComboBox.selectedItem = terminalSetting.rightClick rightClickComboBox.selectedItem = terminalSetting.rightClick
@@ -577,8 +576,6 @@ class SettingsOptionsPane : OptionsPane() {
text = I18n.getString("termora.settings.terminal.right-click.copy") text = I18n.getString("termora.settings.terminal.right-click.copy")
} else if (value == "CopyAndPaste") { } else if (value == "CopyAndPaste") {
text = I18n.getString("termora.settings.terminal.right-click.copy-and-paste") text = I18n.getString("termora.settings.terminal.right-click.copy-and-paste")
}else if (value == "Nothing") {
text = I18n.getString("termora.settings.terminal.right-click.nothing")
} }
return super.getListCellRendererComponent(list, text, index, isSelected, cellHasFocus) return super.getListCellRendererComponent(list, text, index, isSelected, cellHasFocus)
} }

View File

@@ -67,11 +67,6 @@ class PullService private constructor() : SyncService(), Disposable, Application
private var lastChangeHash = StringUtils.EMPTY private var lastChangeHash = StringUtils.EMPTY
private fun pullChanges() { private fun pullChanges() {
if (accountManager.isLocally()) {
return
}
val hash: String val hash: String
try { try {

View File

@@ -20,10 +20,6 @@ class TerminalCopyAction : AnAction() {
override fun actionPerformed(evt: AnActionEvent) { override fun actionPerformed(evt: AnActionEvent) {
val terminalPanel = evt.getData(DataProviders.TerminalPanel) ?: return val terminalPanel = evt.getData(DataProviders.TerminalPanel) ?: return
val selectionModel = terminalPanel.terminal.getSelectionModel()
if (!selectionModel.hasSelection()) {
return
}
val text = terminalPanel.copy() val text = terminalPanel.copy()
val systemClipboard = terminalPanel.toolkit.systemClipboard val systemClipboard = terminalPanel.toolkit.systemClipboard

View File

@@ -27,14 +27,12 @@ class KeyboardInteractiveDialog(
isModal = true isModal = true
isResizable = true isResizable = true
controlsVisible = false controlsVisible = false
title = I18n.getString("termora.new-host.title")
init() init()
pack() pack()
size = Dimension(max(300, size.width), size.height) size = Dimension(max(300, size.width), size.height)
// fix https://github.com/TermoraDev/termora/issues/1311
pack()
setLocationRelativeTo(null) setLocationRelativeTo(null)
} }

View File

@@ -30,7 +30,6 @@ class TerminalUserInteraction(
) )
dialog.setLocationRelativeTo(owner) dialog.setLocationRelativeTo(owner)
dialog.title = instruction ?: name ?: "OTP" dialog.title = instruction ?: name ?: "OTP"
dialog.title = StringUtils.defaultIfBlank(dialog.title, "OTP")
passwords[i] = dialog.getText() passwords[i] = dialog.getText()
if (passwords[i].isBlank()) { if (passwords[i].isBlank()) {
break break

View File

@@ -10,8 +10,6 @@ import kotlinx.coroutines.launch
import org.apache.commons.io.FileUtils import org.apache.commons.io.FileUtils
import org.apache.commons.io.IOUtils import org.apache.commons.io.IOUtils
import org.apache.commons.lang3.StringUtils import org.apache.commons.lang3.StringUtils
import org.apache.commons.lang3.Strings
import org.apache.commons.lang3.SystemUtils
import java.awt.datatransfer.DataFlavor import java.awt.datatransfer.DataFlavor
import java.awt.datatransfer.StringSelection import java.awt.datatransfer.StringSelection
import java.net.URI import java.net.URI
@@ -66,15 +64,7 @@ internal class RDPProtocolProvider private constructor() : GenericProtocolProvid
} }
val sb = StringBuilder() val sb = StringBuilder()
sb.append("full address:s:") sb.append("full address:s:").append(host.host).append(':').append(host.port).appendLine()
if (SystemUtils.IS_OS_WINDOWS && Strings.CI.contains(host.host, ":")) {
var newHost = Strings.CI.removeStart(host.host, "[")
newHost = Strings.CI.removeEnd(newHost, "]")
sb.append('[').append(newHost).append(']')
} else {
sb.append(host.host)
}
sb.append(':').append(host.port).appendLine()
sb.append("username:s:").append(host.username).appendLine() sb.append("username:s:").append(host.username).appendLine()
val desktop = host.options.extras["desktop"] val desktop = host.options.extras["desktop"]
if (desktop.isNullOrBlank().not()) { if (desktop.isNullOrBlank().not()) {

View File

@@ -332,12 +332,6 @@ class ControlSequenceIntroducerProcessor(terminal: Terminal, reader: TerminalRea
var top = sr.getOrElse(0) { 1 } var top = sr.getOrElse(0) { 1 }
var bottom = sr.getOrElse(1) { terminalModel.getRows() } var bottom = sr.getOrElse(1) { terminalModel.getRows() }
// ";r" https://vt100.net/docs/vt510-rm/DECSTBM.html
if (sr.size == 1 && args.startsWith(';')) {
bottom = top
top = 1
}
if (bottom <= top) { if (bottom <= top) {
if (log.isWarnEnabled) { if (log.isWarnEnabled) {
log.warn("Set Scrolling Region Error. top: $top , bottom: $bottom") log.warn("Set Scrolling Region Error. top: $top , bottom: $bottom")

View File

@@ -1,6 +1,5 @@
package app.termora.terminal.panel package app.termora.terminal.panel
import app.termora.actions.TerminalCopyAction
import app.termora.keymap.KeyShortcut import app.termora.keymap.KeyShortcut
import app.termora.keymap.KeymapManager import app.termora.keymap.KeymapManager
import app.termora.plugin.internal.AltKeyModifier import app.termora.plugin.internal.AltKeyModifier
@@ -72,7 +71,6 @@ class TerminalPanelKeyAdapter(
} }
val keyStroke = KeyStroke.getKeyStrokeForEvent(e) val keyStroke = KeyStroke.getKeyStrokeForEvent(e)
val keymapActions = activeKeymap.getActionIds(KeyShortcut(keyStroke))
for (action in terminalPanel.getTerminalActions()) { for (action in terminalPanel.getTerminalActions()) {
if (action.test(keyStroke, e)) { if (action.test(keyStroke, e)) {
action.actionPerformed(e) action.actionPerformed(e)
@@ -106,9 +104,7 @@ class TerminalPanelKeyAdapter(
} }
// 如果命中了全局快捷键,那么不处理 // 如果命中了全局快捷键,那么不处理
val copyShortcutWithoutSelection = if (keyStroke.modifiers != 0 && activeKeymap.getActionIds(KeyShortcut(keyStroke)).isNotEmpty()) {
keymapActions.contains(TerminalCopyAction.COPY) && terminal.getSelectionModel().hasSelection().not()
if (keyStroke.modifiers != 0 && keymapActions.isNotEmpty() && !copyShortcutWithoutSelection) {
return return
} }

View File

@@ -53,7 +53,6 @@ class TerminalPanelMouseSelectionAdapter(private val terminalPanel: TerminalPane
if (SwingUtilities.isRightMouseButton(e)) { if (SwingUtilities.isRightMouseButton(e)) {
// 如果有选中并且开启了选中复制,那么右键直接是粘贴 // 如果有选中并且开启了选中复制,那么右键直接是粘贴
if (selectionModel.hasSelection() && isSelectCopy.not()) { if (selectionModel.hasSelection() && isSelectCopy.not()) {
if (rightClickMode != "Nothing") {
triggerCopyAction( triggerCopyAction(
KeyEvent( KeyEvent(
e.component, e.component,
@@ -77,7 +76,7 @@ class TerminalPanelMouseSelectionAdapter(private val terminalPanel: TerminalPane
) )
) )
} }
}
} else { } else {
// paste // paste
triggerPasteAction( triggerPasteAction(

View File

@@ -59,7 +59,6 @@ termora.settings.terminal.hyperlink=Hyperlink
termora.settings.terminal.select-copy=Select copy termora.settings.terminal.select-copy=Select copy
termora.settings.terminal.right-click=Right click termora.settings.terminal.right-click=Right click
termora.settings.terminal.right-click.copy-and-paste=Copy and Paste termora.settings.terminal.right-click.copy-and-paste=Copy and Paste
termora.settings.terminal.right-click.nothing=Nothing
termora.settings.terminal.right-click.copy=${termora.copy} termora.settings.terminal.right-click.copy=${termora.copy}
termora.settings.terminal.cursor-style=Cursor type termora.settings.terminal.cursor-style=Cursor type
termora.settings.terminal.cursor-blink=Cursor blink termora.settings.terminal.cursor-blink=Cursor blink

View File

@@ -81,7 +81,6 @@ termora.settings.terminal.hyperlink=Ссылки
termora.settings.terminal.select-copy=Копировать выделенное termora.settings.terminal.select-copy=Копировать выделенное
termora.settings.terminal.right-click=правой кнопкой мыши termora.settings.terminal.right-click=правой кнопкой мыши
termora.settings.terminal.right-click.copy-and-paste=Копировать и вставить termora.settings.terminal.right-click.copy-and-paste=Копировать и вставить
termora.settings.terminal.right-click.nothing=никто
termora.settings.terminal.cursor-style=Вид курсора termora.settings.terminal.cursor-style=Вид курсора
termora.settings.terminal.cursor-blink=Мигать курсором termora.settings.terminal.cursor-blink=Мигать курсором
termora.settings.terminal.local-shell=Локальный терминал termora.settings.terminal.local-shell=Локальный терминал

View File

@@ -73,7 +73,6 @@ termora.settings.terminal.hyperlink=超链接
termora.settings.terminal.select-copy=选中复制 termora.settings.terminal.select-copy=选中复制
termora.settings.terminal.right-click=右键点击 termora.settings.terminal.right-click=右键点击
termora.settings.terminal.right-click.copy-and-paste=复制 & 粘贴 termora.settings.terminal.right-click.copy-and-paste=复制 & 粘贴
termora.settings.terminal.right-click.nothing=无操作
termora.settings.terminal.cursor-style=光标样式 termora.settings.terminal.cursor-style=光标样式
termora.settings.terminal.cursor-blink=光标闪烁 termora.settings.terminal.cursor-blink=光标闪烁
termora.settings.terminal.local-shell=本地终端 termora.settings.terminal.local-shell=本地终端

View File

@@ -85,7 +85,6 @@ termora.settings.terminal.hyperlink=超連結
termora.settings.terminal.select-copy=選取複製 termora.settings.terminal.select-copy=選取複製
termora.settings.terminal.right-click=右鍵點擊 termora.settings.terminal.right-click=右鍵點擊
termora.settings.terminal.right-click.copy-and-paste=複製 & 貼上 termora.settings.terminal.right-click.copy-and-paste=複製 & 貼上
termora.settings.terminal.right-click.nothing=無操作
termora.settings.terminal.cursor-style=遊標風格 termora.settings.terminal.cursor-style=遊標風格
termora.settings.terminal.cursor-blink=遊標閃爍 termora.settings.terminal.cursor-blink=遊標閃爍
termora.settings.terminal.local-shell=本地端 termora.settings.terminal.local-shell=本地端