~ruther/dwl

a09de4a5868b2cc1f3226d41926c748df0e4a322 — Rutherther 1 year, 2 months ago 162ffed + 168235a
Merge branch 'patch/focusnthclient' into v0.6-a/patched-base
2 files changed, 18 insertions(+), 0 deletions(-)

M config.def.h
M dwl.c
M config.def.h => config.def.h +1 -0
@@ 159,6 159,7 @@ static const Key keys[] = {
	{ MODKEY,                    XKB_KEY_period,     focusmon,       {.i = WLR_DIRECTION_RIGHT} },
	{ MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_less,       tagmon,         {.i = WLR_DIRECTION_LEFT} },
	{ MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_greater,    tagmon,         {.i = WLR_DIRECTION_RIGHT} },
	{ MODKEY,                    XKB_KEY_m,          focusnthclient, {0} },
	TAGKEYS(          XKB_KEY_1, XKB_KEY_exclam,                     0),
	TAGKEYS(          XKB_KEY_2, XKB_KEY_at,                         1),
	TAGKEYS(          XKB_KEY_3, XKB_KEY_numbersign,                 2),

M dwl.c => dwl.c +17 -0
@@ 319,6 319,7 @@ static void focusclient(Client *c, int lift);
static void focusmon(const Arg *arg);
static void focusnthmon(const Arg *arg);
static void focusstack(const Arg *arg);
static void focusnthclient(const Arg *arg);
static Client *focustop(Monitor *m);
static void fullscreennotify(struct wl_listener *listener, void *data);
static size_t getunusedtag(void);


@@ 3121,6 3122,22 @@ tagnthmon(const Arg *arg)
}

void
focusnthclient(const Arg *arg)
{
	Client *c;
	unsigned int i = arg->ui;

	wl_list_for_each(c, &clients, link) {
		if (i == 0) {
			focusclient(c, 1);
			return;
		}

		i--;
	}
}

void
tile(Monitor *m)
{
	unsigned int mw, my, ty;

Do not follow this link