mirror of
https://github.com/swaywm/sway.git
synced 2026-04-22 06:46:27 -04:00
Add "exec --no-retain-workspace"
This commit is contained in:
parent
80f4fce972
commit
e840cc72db
1 changed files with 7 additions and 1 deletions
|
|
@ -31,6 +31,7 @@ struct cmd_results *cmd_exec_validate(int argc, char **argv) {
|
||||||
struct cmd_results *cmd_exec_process(int argc, char **argv) {
|
struct cmd_results *cmd_exec_process(int argc, char **argv) {
|
||||||
struct cmd_results *error = NULL;
|
struct cmd_results *error = NULL;
|
||||||
bool use_wl_socket = false;
|
bool use_wl_socket = false;
|
||||||
|
bool retain_workspace = false;
|
||||||
int skip_argc = 0;
|
int skip_argc = 0;
|
||||||
char *cmd = NULL;
|
char *cmd = NULL;
|
||||||
char *label = NULL;
|
char *label = NULL;
|
||||||
|
|
@ -39,6 +40,9 @@ struct cmd_results *cmd_exec_process(int argc, char **argv) {
|
||||||
if (strcmp(argv[skip_argc], "--no-startup-id") == 0) {
|
if (strcmp(argv[skip_argc], "--no-startup-id") == 0) {
|
||||||
sway_log(SWAY_INFO, "exec switch '--no-startup-id' not supported, ignored.");
|
sway_log(SWAY_INFO, "exec switch '--no-startup-id' not supported, ignored.");
|
||||||
skip_argc++;
|
skip_argc++;
|
||||||
|
} else if (strcmp(argv[skip_argc], "--no-retain-workspace") == 0) {
|
||||||
|
retain_workspace = false;
|
||||||
|
skip_argc++;
|
||||||
} else if (strcmp(argv[skip_argc], "--use-wayland-socket") == 0) {
|
} else if (strcmp(argv[skip_argc], "--use-wayland-socket") == 0) {
|
||||||
use_wl_socket = true;
|
use_wl_socket = true;
|
||||||
skip_argc++;
|
skip_argc++;
|
||||||
|
|
@ -146,7 +150,9 @@ struct cmd_results *cmd_exec_process(int argc, char **argv) {
|
||||||
waitpid(pid, NULL, 0);
|
waitpid(pid, NULL, 0);
|
||||||
if (child > 0) {
|
if (child > 0) {
|
||||||
sway_log(SWAY_DEBUG, "Child process created with pid %d", child);
|
sway_log(SWAY_DEBUG, "Child process created with pid %d", child);
|
||||||
|
if (retain_workspace) {
|
||||||
root_record_workspace_pid(child);
|
root_record_workspace_pid(child);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
return cmd_results_new(CMD_FAILURE, "Second fork() failed");
|
return cmd_results_new(CMD_FAILURE, "Second fork() failed");
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue