summaryrefslogtreecommitdiff
path: root/lib/ui
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2020-03-03 16:20:07 -0500
committerDrew DeVault <sir@cmpwn.com>2020-03-03 16:49:52 -0500
commitf3158b36f1f210ff54febbe82b571c1379b30c98 (patch)
tree10cde839c9517609f55b8f1057b1cf84ac592632 /lib/ui
parent89f1684ea4b5e680db7ff06a54b2d4e78212cd12 (diff)
downloadaerc-f3158b36f1f210ff54febbe82b571c1379b30c98.zip
Initial support for PGP decryption & signatures
Diffstat (limited to 'lib/ui')
-rw-r--r--lib/ui/interfaces.go4
-rw-r--r--lib/ui/ui.go4
2 files changed, 8 insertions, 0 deletions
diff --git a/lib/ui/interfaces.go b/lib/ui/interfaces.go
index 9e79571..c12bdb7 100644
--- a/lib/ui/interfaces.go
+++ b/lib/ui/interfaces.go
@@ -16,6 +16,10 @@ type Drawable interface {
Invalidate()
}
+type RootDrawable interface {
+ Initialize(ui *UI)
+}
+
type Interactive interface {
// Returns true if the event was handled by this component
Event(event tcell.Event) bool
diff --git a/lib/ui/ui.go b/lib/ui/ui.go
index 16b176d..9a9ed14 100644
--- a/lib/ui/ui.go
+++ b/lib/ui/ui.go
@@ -55,6 +55,10 @@ func Initialize(content DrawableInteractiveBeeper) (*UI, error) {
content.OnBeep(screen.Beep)
content.Focus(true)
+ if root, ok := content.(RootDrawable); ok {
+ root.Initialize(&state)
+ }
+
return &state, nil
}