From 5489883e0199632b8aa269ae268739c96c4b272e Mon Sep 17 00:00:00 2001 From: Kevin Date: Mon, 4 Nov 2024 02:15:18 -0300 Subject: core: smol lua fixes --- lang/lua/astal/gtk3/app.lua | 50 +++++++++++++++++++-------------------------- 1 file changed, 21 insertions(+), 29 deletions(-) (limited to 'lang/lua/astal/gtk3/app.lua') diff --git a/lang/lua/astal/gtk3/app.lua b/lang/lua/astal/gtk3/app.lua index 7895f69..e0ae65a 100644 --- a/lang/lua/astal/gtk3/app.lua +++ b/lang/lua/astal/gtk3/app.lua @@ -24,30 +24,28 @@ end local app = AstalLua() ----@class StartConfig ----@field icons? string ----@field instance_name? string ----@field gtk_theme? string ----@field icon_theme? string ----@field cursor_theme? string ----@field css? string ----@field hold? boolean ----@field request_handler? fun(msg: string, response: fun(res: any)) ----@field main? fun(...): unknown ----@field client? fun(message: fun(msg: string): string, ...): unknown +--- @alias StartConfig { +--- icons?: string, +--- instance_name?: string, +--- gtk_theme?: string, +--- icon_theme?: string, +--- cursor_theme?: string, +--- css?: string, +--- hold?: boolean, +--- request_handler?: fun(msg: string, response: fun(res: any)), +--- main?: fun(...), +--- client?: fun(message: fun(msg: string): string, ...), +---} ----@param config StartConfig | nil +---@param config? StartConfig function Astal.Application:start(config) - if config == nil then - config = {} - end + config = config or {} - if config.client == nil then - config.client = function() + config.client = config.client + or function() print('Astal instance "' .. app.instance_name .. '" is already running') os.exit(1) end - end if config.hold == nil then config.hold = true @@ -61,17 +59,11 @@ function Astal.Application:start(config) if config.icons then self:add_icons(config.icons) end - if config.instance_name then - self.instance_name = config.instance_name - end - if config.gtk_theme then - self.gtk_theme = config.gtk_theme - end - if config.icon_theme then - self.icon_theme = config.icon_theme - end - if config.cursor_theme then - self.cursor_theme = config.cursor_theme + + for _, key in ipairs({ "instance_name", "gtk_theme", "icon_theme", "cursor_theme" }) do + if config[key] then + self[key] = config[key] + end end app.on_activate = function() -- cgit v1.2.3