chore: title uses the selected tab

This commit is contained in:
hstyi
2025-07-18 16:58:36 +08:00
committed by hstyi
parent 5fcda04544
commit f99e3e9147

View File

@@ -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) }