From f99e3e9147826af227297cb7e921c68bd99261b2 Mon Sep 17 00:00:00 2001 From: hstyi Date: Fri, 18 Jul 2025 16:58:36 +0800 Subject: [PATCH] chore: title uses the selected tab --- src/main/kotlin/app/termora/TermoraFrame.kt | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/main/kotlin/app/termora/TermoraFrame.kt b/src/main/kotlin/app/termora/TermoraFrame.kt index b7b2768..514a5b3 100644 --- a/src/main/kotlin/app/termora/TermoraFrame.kt +++ b/src/main/kotlin/app/termora/TermoraFrame.kt @@ -26,6 +26,8 @@ import java.util.* import javax.imageio.ImageIO import javax.swing.* import javax.swing.SwingUtilities.isEventDispatchThread +import javax.swing.event.ChangeEvent +import javax.swing.event.ChangeListener fun assertEventDispatchThread() { @@ -70,6 +72,20 @@ class TermoraFrame : JFrame(), DataProvider { toolbar.addMouseMotionListener(moveMouseAdapter) } + tabbedPane.addChangeListener(object : ChangeListener { + override fun stateChanged(e: ChangeEvent) { + val index = tabbedPane.selectedIndex + title = Application.getName() + if (layout == TermoraLayout.Screen) { + if (index < 1) return + } else if (index < 0) { + return + } + title = tabbedPane.getTitleAt(index) + " - " + Application.getName() + } + + }) + // 快捷键变动时重新监听 KeymapRefresher.getInstance().addRefreshListener { initKeymap() } .let { Disposer.register(windowScope, it) }