about summary refs log tree commit diff stats
path: root/lib/ui/stack.go
diff options
context:
space:
mode:
authorReto Brunner <reto@labrat.space>2020-05-27 07:37:02 +0200
committerReto Brunner <reto@labrat.space>2020-05-27 07:57:10 +0200
commit0f78f06610c0e8887aba2ae50e99b86477a384b3 (patch)
treeff4cd6581d3af0911954a37550602366d2bb0e2f /lib/ui/stack.go
parent6c4ed3cfe2fe66a1e5f26c404ea90e048142db72 (diff)
downloadaerc-0f78f06610c0e8887aba2ae50e99b86477a384b3.tar.gz
Add Style configuration
The following functionalities are added to configure aerc ui styles.
- Read stylesets from file with very basic fnmatch wildcard matching
- Add default styleset
- Support different stylesets as part of UiConfig allowing contextual
  styles.
- Move widgets/ui elements to use the stylesets.
- Add configuration manual for the styleset
Diffstat (limited to 'lib/ui/stack.go')
-rw-r--r--lib/ui/stack.go10
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/ui/stack.go b/lib/ui/stack.go
index 690a869..c9004a0 100644
--- a/lib/ui/stack.go
+++ b/lib/ui/stack.go
@@ -3,16 +3,19 @@ package ui
 import (
 	"fmt"
 
+	"git.sr.ht/~sircmpwn/aerc/config"
+
 	"github.com/gdamore/tcell"
 )
 
 type Stack struct {
 	children     []Drawable
 	onInvalidate []func(d Drawable)
+	uiConfig     config.UIConfig
 }
 
-func NewStack() *Stack {
-	return &Stack{}
+func NewStack(uiConfig config.UIConfig) *Stack {
+	return &Stack{uiConfig: uiConfig}
 }
 
 func (stack *Stack) Children() []Drawable {
@@ -33,7 +36,8 @@ func (stack *Stack) Draw(ctx *Context) {
 	if len(stack.children) > 0 {
 		stack.Peek().Draw(ctx)
 	} else {
-		ctx.Fill(0, 0, ctx.Width(), ctx.Height(), ' ', tcell.StyleDefault)
+		ctx.Fill(0, 0, ctx.Width(), ctx.Height(), ' ',
+			stack.uiConfig.GetStyle(config.STYLE_STACK))
 	}
 }