diff --git a/widget/app_launcher/init.lua b/widget/app_launcher/init.lua
index aa075cf..c3fba8b 100644
--- a/widget/app_launcher/init.lua
+++ b/widget/app_launcher/init.lua
@@ -562,31 +562,60 @@ local function generate_apps(self)
end
local function build_widget(self)
- local widget = self.widget_template()
-
- self._private.prompt = widget:get_children_by_id("prompt_role")[1] or prompt_widget
- {
- prompt = self.prompt_label,
- font = self.prompt_font,
- reset_on_stop = self.reset_on_hide,
- bg_cursor = beautiful.bg_normal or "#000000",
- history_path = self.save_history == true and gfilesystem.get_cache_dir() .. "/history" or nil,
- }
- self._private.grid = widget:get_children_by_id("grid_role")[1] or wibox.widget
- {
- layout = wibox.layout.grid,
- orientation = "horizontal",
- homogeneous = true,
- expand = self.expand_apps,
- spacing = self.apps_spacing,
- forced_num_cols = self.apps_per_column,
- forced_num_rows = self.apps_per_row,
- buttons =
+ local widget = self.widget_template
+ if widget ~= nil then
+ self._private.prompt = widget:get_children_by_id("prompt_role")[1]
+ self._private.grid = widget:get_children_by_id("grid_role")[1]
+ else
+ self._private.prompt = wibox.widget
{
- awful.button({}, 4, function() self:scroll_up() end),
- awful.button({}, 5, function() self:scroll_down() end)
+ widget = prompt_widget,
+ label = self.prompt_label,
+ font = self.prompt_font,
+ reset_on_stop = self.reset_on_hide,
+ bg_cursor = beautiful.bg_normal or "#000000",
}
- }
+ self._private.grid = wibox.widget
+ {
+ layout = wibox.layout.grid,
+ orientation = "horizontal",
+ homogeneous = true,
+ expand = self.expand_apps,
+ spacing = self.apps_spacing,
+ forced_num_cols = self.apps_per_column,
+ forced_num_rows = self.apps_per_row,
+ buttons =
+ {
+ awful.button({}, 4, function() self:scroll_up() end),
+ awful.button({}, 5, function() self:scroll_down() end)
+ }
+ }
+ widget = wibox.widget
+ {
+ layout = wibox.layout.fixed.vertical,
+ {
+ widget = wibox.container.background,
+ forced_height = dpi(100),
+ bg = self.prompt_bg_color,
+ {
+ widget = wibox.container.margin,
+ margins = dpi(30),
+ {
+ widget = wibox.container.place,
+ halign = "left",
+ valign = "center",
+ self._private.prompt
+ }
+ }
+ },
+ {
+ widget = wibox.container.margin,
+ margins = dpi(30),
+ self._private.grid
+ }
+ }
+ end
+
self._private.widget = awful.popup
{
type = self.type,
@@ -597,43 +626,10 @@ local function build_widget(self)
border_color = self.border_color,
shape = self.shape,
bg = self.background,
- widget = self.widget_template() or
- {
- layout = wibox.layout.fixed.vertical,
- {
- widget = wibox.container.background,
- forced_height = dpi(100),
- bg = self.prompt_bg_color,
- fg = self.prompt_text_color,
- {
- widget = wibox.container.margin,
- margins = dpi(30),
- {
- widget = wibox.container.place,
- halign = "left",
- valign = "center",
- {
- layout = wibox.layout.fixed.horizontal,
- spacing = dpi(10),
- {
- widget = wibox.widget.textbox,
- font = self.prompt_icon_font,
- markup = string.format("%s", args.prompt_icon_color, args.prompt_icon)
- },
- self._private.prompt.textbox
- }
- }
- }
- },
- {
- widget = wibox.container.margin,
- margins = dpi(30),
- self._private.grid
- }
- }
+ widget = widget
}
- self._private.prompt:connect_signal("text::changed", function(text)
+ self._private.prompt:connect_signal("text::changed", function(_, text)
if text == self._private.text then
return
end
@@ -642,7 +638,7 @@ local function build_widget(self)
self._private.search_timer:again()
end)
- self._private.prompt:connect_signal("key::press", function(mod, key, cmd)
+ self._private.prompt:connect_signal("key::press", function(_, mod, key, cmd)
if key == "Escape" then
self:hide()
end
@@ -817,7 +813,6 @@ local function new(args)
args.hide_on_launch = default_value(args.hide_on_launch, true)
args.try_to_keep_index_after_searching = default_value(args.try_to_keep_index_after_searching, false)
args.reset_on_hide = default_value(args.reset_on_hide, true)
- args.save_history = default_value(args.save_history, true)
args.wrap_page_scrolling = default_value(args.wrap_page_scrolling, true)
args.wrap_app_scrolling = default_value(args.wrap_app_scrolling, true)
@@ -842,11 +837,12 @@ local function new(args)
args.expand_apps = default_value(args.expand_apps, true)
args.prompt_bg_color = default_value(args.prompt_bg_color, beautiful.fg_normal or "#FFFFFF")
- args.prompt_icon_font = default_value(args.prompt_icon_font, beautiful.font)
+ args.prompt_icon_font = default_value(args.prompt_icon, "")
args.prompt_icon_color = default_value(args.prompt_icon_color, beautiful.bg_normal or "#000000")
args.prompt_icon = default_value(args.prompt_icon, "")
+ args.prompt_label_font = default_value(args.prompt_icon, "")
args.prompt_label = default_value(args.prompt_label, "Search: ")
- args.prompt_font = default_value(args.prompt_font, beautiful.font)
+ args.prompt_text_font = default_value(args.prompt_font, beautiful.font)
args.prompt_text_color = default_value(args.prompt_text_color, beautiful.bg_normal or "#000000")
args.app_normal_color = args.app_normal_color or beautiful.bg_normal or "#000000"