diff options
| author | Tim Keller <tjkeller.xyz> | 2025-04-12 16:22:26 -0500 | 
|---|---|---|
| committer | Tim Keller <tjkeller.xyz> | 2025-04-12 16:22:26 -0500 | 
| commit | 76b1b9ee072b99ad0a000ec2719326d4b480ec38 (patch) | |
| tree | e5c4a0d32057c2392c43433094deb2cd4e2c032e /widgets | |
| parent | c4c927d69f1b6053f6975b8232300fb5bca63bb8 (diff) | |
| download | awesome-76b1b9ee072b99ad0a000ec2719326d4b480ec38.tar.xz awesome-76b1b9ee072b99ad0a000ec2719326d4b480ec38.zip | |
remove unused func and tasklist filter change for max layout
Diffstat (limited to 'widgets')
| -rw-r--r-- | widgets/tasklist.lua | 71 | 
1 files changed, 38 insertions, 33 deletions
| diff --git a/widgets/tasklist.lua b/widgets/tasklist.lua index 3acd07f..76616bf 100644 --- a/widgets/tasklist.lua +++ b/widgets/tasklist.lua @@ -5,28 +5,39 @@ local beautiful = require("beautiful")  local separator = { widget = wibox.widget.separator, opacity = 0 } -function tooltip_tag_clients() -	local text = "" -	for _, c in ipairs(awful.screen.focused():get_clients(false)) do -		local ctext = c.name -		if c == client.focus then -			ctext = "* " .. ctext -		end -		text = text .. ctext .. "\n" -	end -	return text:sub(1, -2) -- remove last newline -end - -function create_tasklist(s) -	local tasklist = awful.widget.tasklist { +function create_tasklist_widget(s, filter, font_focus) +	return awful.widget.tasklist {  		screen  = s, -		filter  = awful.widget.tasklist.filter.focused, +		filter  = filter,  		buttons = tasklist_buttons,  		widget_template = {  			id     = "text_role",  			widget = wibox.widget.textbox,  			align  = "center",  		}, +		style = { +			font_focus = font_focus, +		}, +	} +end + +function create_tasklist(s) +	-- allow for different styles for different layouts +	local tasklist_focused     = create_tasklist_widget(s, awful.widget.tasklist.filter.focused,     beautiful.tasklist_font) +	local tasklist_currenttags = create_tasklist_widget(s, awful.widget.tasklist.filter.currenttags, beautiful.tasklist_font_focus) + +	local change_layout = function(layout) +		local max = layout == awful.layout.suit.max +		tasklist_currenttags:set_visible(max) +		tasklist_focused:set_visible(not max) +	end +	change_layout(s.selected_tag.layout) + +	-- setup widgets +	local tasklist = wibox.widget { +		layout = wibox.layout.stack, +		tasklist_currenttags, +		tasklist_focused,  	}  	local popup = wibox_tooltip(tasklist, awful.widget.tasklist { @@ -45,6 +56,18 @@ function create_tasklist(s)  		},  	}) +	-- setup signals to change tasklist filter on layout changes +	local change_layout_from_tag = function(t) +		if t.screen ~= s then return end +		change_layout(t.layout) +	end +	tag.connect_signal("property::layout",   change_layout_from_tag) +	tag.connect_signal("property::selected", change_layout_from_tag) +	tag.connect_signal("tagged",             change_layout_from_tag) +	tag.connect_signal("untagged",           change_layout_from_tag) +	tag.connect_signal("property::screen",   change_layout_from_tag) + +	-- return widget  	return wibox.widget {  		layout = wibox.layout.align.horizontal,  		expand = "outside", @@ -54,22 +77,4 @@ function create_tasklist(s)  	}  end ----- signal for changing tasklist filter based on layout ----- DOESNT WORK TODO ---local naughty = require("naughty") ---s:connect_signal("property::layout", function() ---	naughty.notify({ ---		title = "Hello, AwesomeWM!", ---		text = "This is a notification.", ---		timeout = 5,  -- Timeout in seconds ---		position = "top_right"  -- Position on the screen ---	}) ---	if awful.layout.get(s) == awful.layout.suit.max then ---		s.mytasklist.filter = awful.widget.tasklist.filter.currenttags ---	else ---		s.mytasklist.filter = awful.widget.tasklist.filter.focused ---	end ---end ---) -  return create_tasklist | 
