From 57f27f7cc6a232827a774c3f36035d9290f3b6ce Mon Sep 17 00:00:00 2001 From: Isaac Freund Date: Thu, 2 Apr 2020 13:44:24 +0200 Subject: Implement tag assignment There are a few bugs with this, but the core logic is sound --- src/server.zig | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'src/server.zig') diff --git a/src/server.zig b/src/server.zig index de202fd..3b6a9bc 100644 --- a/src/server.zig +++ b/src/server.zig @@ -136,6 +136,42 @@ pub const Server = struct { const child = std.ChildProcess.init(&argv, std.heap.c_allocator) catch unreachable; std.ChildProcess.spawn(child) catch unreachable; }, + c.XKB_KEY_1 => { + if (self.root.focused_view) |view| { + view.pending_tags = 1 << 0; + self.root.arrange(); + } + }, + c.XKB_KEY_2 => { + if (self.root.focused_view) |view| { + view.pending_tags = 1 << 1; + self.root.arrange(); + } + }, + c.XKB_KEY_3 => { + if (self.root.focused_view) |view| { + view.pending_tags = 1 << 2; + self.root.arrange(); + } + }, + c.XKB_KEY_4 => { + if (self.root.focused_view) |view| { + view.pending_tags = 1 << 3; + self.root.arrange(); + } + }, + c.XKB_KEY_5 => { + if (self.root.focused_view) |view| { + view.pending_tags = 1 << 4; + self.root.arrange(); + } + }, + c.XKB_KEY_6 => { + if (self.root.focused_view) |view| { + view.pending_tags = 1 << 5; + self.root.arrange(); + } + }, else => return false, } } else { -- cgit v1.2.3