diff options
| -rw-r--r-- | lib/ui/borders.go | 2 | ||||
| -rw-r--r-- | lib/ui/tab.go | 12 | ||||
| -rw-r--r-- | lib/ui/text.go | 10 | ||||
| -rw-r--r-- | widgets/aerc.go | 2 | ||||
| -rw-r--r-- | widgets/dirlist.go | 3 | ||||
| -rw-r--r-- | widgets/msglist.go | 3 | ||||
| -rw-r--r-- | widgets/status.go | 15 | 
7 files changed, 25 insertions, 22 deletions
| diff --git a/lib/ui/borders.go b/lib/ui/borders.go index 97df5df..9b7860e 100644 --- a/lib/ui/borders.go +++ b/lib/ui/borders.go @@ -49,7 +49,7 @@ func (bordered *Bordered) Draw(ctx *Context) {  	y := 0  	width := ctx.Width()  	height := ctx.Height() -	style := tcell.StyleDefault.Background(tcell.ColorWhite).Foreground(tcell.ColorBlack) +	style := tcell.StyleDefault.Reverse(true)  	if bordered.borders&BORDER_LEFT != 0 {  		ctx.Fill(0, 0, 1, ctx.Height(), ' ', style)  		x += 1 diff --git a/lib/ui/tab.go b/lib/ui/tab.go index 32b195c..49bdffa 100644 --- a/lib/ui/tab.go +++ b/lib/ui/tab.go @@ -83,19 +83,13 @@ func (tabs *Tabs) Select(index int) {  func (strip *TabStrip) Draw(ctx *Context) {  	x := 0  	for i, tab := range strip.Tabs { -		style := tcell.StyleDefault. -			Background(tcell.ColorWhite). -			Foreground(tcell.ColorBlack) +		style := tcell.StyleDefault.Reverse(true)  		if strip.Selected == i { -			style = tcell.StyleDefault. -				Background(tcell.ColorDefault). -				Foreground(tcell.ColorDefault) +			style = tcell.StyleDefault  		}  		x += ctx.Printf(x, 0, style, " %s ", tab.Name)  	} -	style := tcell.StyleDefault. -		Background(tcell.ColorWhite). -		Foreground(tcell.ColorBlack) +	style := tcell.StyleDefault.Reverse(true)  	ctx.Fill(x, 0, ctx.Width()-x, 1, ' ', style)  } diff --git a/lib/ui/text.go b/lib/ui/text.go index b962166..aa97954 100644 --- a/lib/ui/text.go +++ b/lib/ui/text.go @@ -16,6 +16,7 @@ type Text struct {  	strategy     uint  	fg           tcell.Color  	bg           tcell.Color +	reverse      bool  	onInvalidate func(d Drawable)  } @@ -46,6 +47,12 @@ func (t *Text) Color(fg tcell.Color, bg tcell.Color) *Text {  	return t  } +func (t *Text) Reverse(reverse bool) *Text { +	t.reverse = reverse +	t.Invalidate() +	return t +} +  func (t *Text) Draw(ctx *Context) {  	size := runewidth.StringWidth(t.text)  	x := 0 @@ -56,6 +63,9 @@ func (t *Text) Draw(ctx *Context) {  		x = ctx.Width() - size  	}  	style := tcell.StyleDefault.Background(t.bg).Foreground(t.fg) +	if t.reverse { +		style = style.Reverse(true) +	}  	ctx.Fill(0, 0, ctx.Width(), ctx.Height(), ' ', style)  	ctx.Printf(x, 0, style, t.text)  } diff --git a/widgets/aerc.go b/widgets/aerc.go index 92fc06e..fdfc658 100644 --- a/widgets/aerc.go +++ b/widgets/aerc.go @@ -49,7 +49,7 @@ func NewAerc(conf *config.AercConfig, logger *log.Logger,  	grid.AddChild(libui.NewText("aerc").  		Strategy(libui.TEXT_CENTER). -		Color(tcell.ColorBlack, tcell.ColorWhite)) +		Reverse(true))  	grid.AddChild(tabs.TabStrip).At(0, 1)  	grid.AddChild(tabs.TabContent).At(1, 0).Span(1, 2) diff --git a/widgets/dirlist.go b/widgets/dirlist.go index 58108ff..eb79bc4 100644 --- a/widgets/dirlist.go +++ b/widgets/dirlist.go @@ -109,8 +109,7 @@ func (dirlist *DirectoryList) Draw(ctx *ui.Context) {  		}  		style := tcell.StyleDefault  		if name == dirlist.selected { -			style = style.Background(tcell.ColorWhite). -				Foreground(tcell.ColorBlack) +			style = style.Reverse(true)  		}  		ctx.Fill(0, row, ctx.Width(), 1, ' ', style)  		ctx.Printf(0, row, style, "%s", name) diff --git a/widgets/msglist.go b/widgets/msglist.go index 47be7bc..d8d419e 100644 --- a/widgets/msglist.go +++ b/widgets/msglist.go @@ -78,8 +78,7 @@ func (ml *MessageList) Draw(ctx *ui.Context) {  		style := tcell.StyleDefault  		if row == ml.selected-ml.scroll { -			style = style.Background(tcell.ColorWhite). -				Foreground(tcell.ColorBlack) +			style = style.Reverse(true)  		}  		if _, ok := ml.store.Deleted[msg.Uid]; ok {  			style = style.Foreground(tcell.ColorGray) diff --git a/widgets/status.go b/widgets/status.go index 7a746fa..3536760 100644 --- a/widgets/status.go +++ b/widgets/status.go @@ -24,8 +24,8 @@ type StatusMessage struct {  func NewStatusLine() *StatusLine {  	return &StatusLine{  		fallback: StatusMessage{ -			bg:      tcell.ColorWhite, -			fg:      tcell.ColorBlack, +			bg:      tcell.ColorDefault, +			fg:      tcell.ColorDefault,  			message: "Idle",  		},  	} @@ -46,15 +46,16 @@ func (status *StatusLine) Draw(ctx *ui.Context) {  	if len(status.stack) != 0 {  		line = status.stack[len(status.stack)-1]  	} -	style := tcell.StyleDefault.Background(line.bg).Foreground(line.fg) +	style := tcell.StyleDefault. +		Background(line.bg).Foreground(line.fg).Reverse(true)  	ctx.Fill(0, 0, ctx.Width(), ctx.Height(), ' ', style)  	ctx.Printf(0, 0, style, "%s", line.message)  }  func (status *StatusLine) Set(text string) *StatusMessage {  	status.fallback = StatusMessage{ -		bg:      tcell.ColorWhite, -		fg:      tcell.ColorBlack, +		bg:      tcell.ColorDefault, +		fg:      tcell.ColorDefault,  		message: text,  	}  	status.Invalidate() @@ -63,8 +64,8 @@ func (status *StatusLine) Set(text string) *StatusMessage {  func (status *StatusLine) Push(text string, expiry time.Duration) *StatusMessage {  	msg := &StatusMessage{ -		bg:      tcell.ColorWhite, -		fg:      tcell.ColorBlack, +		bg:      tcell.ColorDefault, +		fg:      tcell.ColorDefault,  		message: text,  	}  	status.stack = append(status.stack, msg) | 
