summary refs log tree commit diff stats
path: root/widgets
diff options
context:
space:
mode:
authorJeffas <dev@jeffas.io>2019-07-26 22:41:13 +0100
committerDrew DeVault <sir@cmpwn.com>2019-07-27 12:40:28 -0400
commit989730d47000feb297b5fab4e273a9d9b13c5741 (patch)
tree061b5ef3a8d8d6521f4806fbb11e9d0f5ea4dc0c /widgets
parent0ee7d30187920751c6e79facbd87ebce86d62ec9 (diff)
downloadaerc-989730d47000feb297b5fab4e273a9d9b13c5741.tar.gz
Add index option to change-tab
This allows selection of a tab using its index. It attempts to parse the
given argument as a number, if it fails then it uses it as a name.

Also supports relative indexes using prefixed + or -.
Diffstat (limited to 'widgets')
-rw-r--r--widgets/aerc.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/widgets/aerc.go b/widgets/aerc.go
index 458c2f9..90b56c8 100644
--- a/widgets/aerc.go
+++ b/widgets/aerc.go
@@ -268,6 +268,16 @@ func (aerc *Aerc) SelectTab(name string) bool {
 	return false
 }
 
+func (aerc *Aerc) SelectTabIndex(index int) bool {
+	for i, _ := range aerc.tabs.Tabs {
+		if i == index {
+			aerc.tabs.Select(i)
+			return true
+		}
+	}
+	return false
+}
+
 func (aerc *Aerc) TabNames() []string {
 	var names []string
 	for _, tab := range aerc.tabs.Tabs {