{description = "focus the next screen", group = "screen"}),
awful.key({ modkey, }, "=", function () awful.screen.focus_relative( 1) end, -- that's the key left of 1 (kinesis)
{description = "focus the next screen", group = "screen"}),
+ awful.key({ modkey, "Control" }, "=",
+ function ()
+ -- swap tags in screens
+ local c = client.focus
+ local this_screen = awful.screen.focused();
+ -- TODO: only works with two screens
+ local next_screen = this_screen:get_next_in_direction("right") or this_screen:get_next_in_direction("left")
+ local this_screen_tag = this_screen.selected_tag;
+ local next_screen_tag = next_screen.selected_tag;
+
+ this_screen_tag:swap(next_screen_tag)
+
+ this_screen_tag:view_only()
+ next_screen_tag:view_only()
+
+ awful.screen.focus(this_screen)
+ c:jump_to(true)
+ end,
+ {description = "swap screens", group = "screen"}),
awful.key({ modkey, "Control" }, "Right", function () awful.screen.focus_relative(-1) end,
{description = "focus the next screen", group = "screen"}),
awful.key({ modkey, "Control" }, "Left", function () awful.screen.focus_relative(-1) end,