From b8ed6bb138b28ba3632b51b840b6d1be5e4decec Mon Sep 17 00:00:00 2001 From: btkoch Date: Mon, 27 Nov 2023 13:51:31 -0500 Subject: update --- shiftview.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 shiftview.c (limited to 'shiftview.c') diff --git a/shiftview.c b/shiftview.c new file mode 100644 index 0000000..e82053a --- /dev/null +++ b/shiftview.c @@ -0,0 +1,19 @@ +/** Function to shift the current view to the left/right + * + * @param: "arg->i" stores the number of tags to shift right (positive value) + * or left (negative value) + */ +void +shiftview(const Arg *arg) { + Arg shifted; + + if(arg->i > 0) // left circular shift + shifted.ui = (selmon->tagset[selmon->seltags] << arg->i) + | (selmon->tagset[selmon->seltags] >> (LENGTH(tags) - arg->i)); + + else // right circular shift + shifted.ui = selmon->tagset[selmon->seltags] >> (- arg->i) + | selmon->tagset[selmon->seltags] << (LENGTH(tags) + arg->i); + + view(&shifted); +} -- cgit v1.2.3