This commit is contained in:
anakha 2021-07-09 20:49:27 -04:00
parent 64e52922b3
commit 1edd37c2cf
3 changed files with 25 additions and 3 deletions

View File

@ -37,8 +37,11 @@ We now have tabs for tiled clients :)
- [ ] Better keybindings (possibly emacs style, or vim style): an xcape key can be used to to initiate awm layer and enter can exit from it.
- [X] Clickable tabs
- [X] Close tabs. (right click)
- [X] Allow detaching from floating tabs. (double click)
- [X] Move focus by index: focus_by_index()
- [X] On focus of tiled clients, allow realigning visible floating windows to sides via shortcuts.
- [X] Add align to left or right for floating windows: this will allow the user to see either side of the layout.
- [X] Add align to left or right for floating windows: align_floats()
- [X] Override cyclefocus for tabbed regions or bind alt-tab?
- [ ] Merge Backham and Mouser (focus should stay client under mouse - sometimes?)
- [X] Update tabs on tag change via signal
@ -47,7 +50,6 @@ We now have tabs for tiled clients :)
- [ ] Client pull (pull a client from a direction onto the current deck)
- [ ] Visual teleport (overlay with region numbers to choose from, possibly on all monitors, kind of like vimium)
- [ ] Add tabbing for floating clients: drag and drop seems not so easy, using rofi could be fine too but it is another step. Focus and mark could work better. Execute the shourtcut and choose the window to be tabbed with mouse or possibly via keyboard.
- [ ] Allow detaching from floating tabs. Can be a right click to the tab.
- [x] Allow expanding regions horizontally and vertically
- [x] Auto resize all clients in the region when expanded
- [x] Avoid machi's auto expansion on config reload

View File

@ -44,7 +44,7 @@ local bindings = {
awful.key({modkey}, ";", align_floats("right")),
awful.key({modkey, "Shift"}, ";", align_floats("left")),
--▨ floating alignment
--▨ alignment
awful.key({modkey}, "x", function ()
c = client.focus or nil

View File

@ -18,6 +18,21 @@ local clear_tabbar = helpers.clear_tabbar
local global_client_table = {}
local global_widget_table = {}
function double_click_event_handler(double_click_event)
if double_click_timer then
double_click_timer:stop()
double_click_timer = nil
double_click_event()
return
end
beautiful.layout_machi = machi.get_icon()
double_click_timer = gears.timer.start_new(0.20, function()
double_click_timer = nil
return false
end)
end
function get_global_clients()
return global_client_table
end
@ -1055,6 +1070,11 @@ function draw_tabbar(region_ix, s)
for cc_ix, cc in ipairs(tablist) do
local buttons = gears.table.join(
awful.button({}, 1, function(_)
double_click_event_handler(function()
cc.floating = not cc.floating
end)
gears.timer.delayed_call(function(p)
client.emit_signal("riseup", p)
end, cc)