diff options
| author | jacqueline <me@jacqueline.id.au> | 2024-03-07 10:59:03 +1100 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2024-03-07 10:59:03 +1100 |
| commit | ef72b25660912ff247997089abfb93e9f0b52809 (patch) | |
| tree | d5d9711cb5a4192966d914094e9370c446f145fb /lua/licenses.lua | |
| parent | 53c4ea7805f1af6a4d2969fc8eabbc8ae26ac5ca (diff) | |
| download | tangara-fw-ef72b25660912ff247997089abfb93e9f0b52809.tar.gz | |
use prototype inheritance for lua screens, rather than functions
this gives us a way to give each screen nice little hooks, like
'onShown' and 'onHidden'. later we can use these hooks to disable
bindings for screens that aren't in-use.
Diffstat (limited to 'lua/licenses.lua')
| -rw-r--r-- | lua/licenses.lua | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/lua/licenses.lua b/lua/licenses.lua index 83437454..fb0e5702 100644 --- a/lua/licenses.lua +++ b/lua/licenses.lua @@ -2,20 +2,23 @@ local backstack = require("backstack") local widgets = require("widgets") local font = require("font") local theme = require("theme") +local screen = require("screen") local function show_license(text) - backstack.push(function() - local screen = widgets.MenuScreen { - show_back = true, - title = "Licenses", - } - screen.root:Label { - w = lvgl.PCT(100), - h = lvgl.SIZE_CONTENT, - text_font = font.fusion_10, - text = text, - } - end) + backstack.push(screen:new { + createUi = function(self) + self.menu = widgets.MenuScreen { + show_back = true, + title = "Licenses", + } + self.menu.root:Label { + w = lvgl.PCT(100), + h = lvgl.SIZE_CONTENT, + text_font = font.fusion_10, + text = text, + } + end + }) end local function gpl(copyright) @@ -175,4 +178,6 @@ return function() library("tremor", "bsd", function() xiphbsd("Copyright (c) 2002, Xiph.org Foundation") end) + + return menu end |
