shift-tools.c
void
shiftview(const Arg *arg)
{
	Arg shifted;
	shifted.ui = selmon->tagset[selmon->seltags];

	if (arg->i > 0) {/* left circular shift */
		shifted.ui = (shifted.ui << arg->i) | (shifted.ui >> (LENGTH(tags) - arg->i));
	} else {	/* right circular shift */
		shifted.ui = (shifted.ui >> (- arg->i) | shifted.ui << (LENGTH(tags) + arg->i));
	}
	view(&shifted);
}
/* Navigate to the next/prev tag */
Navigate to the next/prev tag
Navigate to the next / prev tag
void
shiftview(const Arg *arg)
{
	Arg shifted;
	shifted.ui = selmon->tagset[selmon->seltags];
	if (arg->i > 0) {
		shifted.ui = (shifted.ui << arg->i) | (shifted.ui >> (LENGTH(tags) - arg->i));
	} else {	
		shifted.ui = (shifted.ui >> (- arg->i) | shifted.ui << (LENGTH(tags) + arg->i));
	}
	view(&shifted);
}
void shiftview ( const Arg * arg ) { Arg shifted ; shifted . ui = selmon -> tagset [ selmon -> seltags ] ; if ( arg -> i > 0 ) { shifted . ui = ( shifted . ui << arg -> i ) | ( shifted . ui >> ( LENGTH ( tags ) - arg -> i ) ) ; } else { shifted . ui = ( shifted . ui >> ( - arg -> i ) | shifted . ui << ( LENGTH ( tags ) + arg -> i ) ) ; } view ( & shifted ) ; }
Navigate to the next/prev tag
Navigate to the next / prev tag
/* left circular shift */ /* right circular shift */