add spawn and termcmd

This commit is contained in:
Devin J. Pohly
2020-04-12 00:58:38 -05:00
parent c82c000bd4
commit bc9049a11b
2 changed files with 17 additions and 2 deletions

11
dwl.c
View File

@@ -125,6 +125,7 @@ static void focusnext(struct dwl_server *, const Arg *);
static void movemouse(struct dwl_server *, const Arg *);
static void quit(struct dwl_server *, const Arg *);
static void resizemouse(struct dwl_server *, const Arg *);
static void spawn(struct dwl_server *, const Arg *);
#include "config.h"
@@ -187,6 +188,16 @@ static void quit(struct dwl_server *server, const Arg *unused) {
wl_display_terminate(server->wl_display);
}
static void spawn(struct dwl_server *server, const Arg *arg) {
if (fork() == 0) {
setsid();
execvp(((char **)arg->v)[0], (char **)arg->v);
fprintf(stderr, "dwl: execvp %s", ((char **)arg->v)[0]);
perror(" failed");
exit(EXIT_FAILURE);
}
}
static void focusnext(struct dwl_server *server, const Arg *unused) {
/* Cycle to the next view */
if (wl_list_length(&server->views) < 2) {